Serg01 Гость
|
Добавлено: Чт Авг 22 2002 15:55 Заголовок сообщения: Подскажите где ошибка (С++В) |
|
|
----------- const SELDIRHELP = 1000; AnsiString NewPath,Dir,StrDir,OutFile,InFile; Reg->OpenKey("\\Software\\Amyulet\\Amulet",true); Dir = ExtractFileDir(ParamStr(0)); if(SelectDirectory(Dir, TSelectDirOpts() "меньше-меньше" sdAllowCreate "меньше-меньше" sdPerformCreate "меньше-меньше" sdPrompt,SELDIRHELP))
for(DM->Tdocum->First(); !DM->Tdocum->Eof; DM->Tdocum->Next()) { InFile = DM->Tdocum->FieldValues["pathdoc"]; StrDir = (ExtractFileName(DM->Tdocum->FieldValues["pathdoc"])); NewPath = Dir+"\\"+StrDir;
if (FileExists(InFile.c_str())) { SHFILEOPSTRUCT op; ZeroMemory(&op,sizeof(op)); String RestoreDir, RestoreToDir; RestoreDir = InFile.c_str(); RestoreToDir = Dir.c_str(); RestoreDir.SetLength(RestoreDir.Length()+1); RestoreDir[RestoreDir.Length()]='\0'; RestoreDir.SetLength(RestoreDir.Length()+1); RestoreDir[RestoreDir.Length()]='\0'; RestoreToDir = RestoreToDir+"\\"; RestoreToDir.SetLength(RestoreToDir.Length()+NULL+NULL); op.hwnd=0; op.wFunc = FO_MOVE; op.pFrom = RestoreDir.c_str(); op.pTo = RestoreToDir.c_str(); op.fFlags = FOF_ALLOWUNDO; op.fFlags = FOF_FILESONLY; } } --------------------- Должно так: - запрашивается новая директория; - пробегаемся по всем записям и если путь(InFile) сообтветствует файлу, то файл перемещаем туда куда покказывали сначала (Dir). Все работает, но файлы не перемещаються. Ошибки не выдаются. |
|