Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 05.08.2011, 16:56   #1
MAZADA
Форумчанин
 
Регистрация: 11.09.2010
Сообщений: 103
По умолчанию CopyFile

ребята помогите!
У меня есть dirDialog11
Код:
if dirDialog11.Execute then
Label1.Caption:= (dirDialog11.DirPath);
Labe1 сохраняю в ini
Код:
ini.WriteString('toca', 'label1', label1.Caption);
Значит путь у меня прописан! Он лежит в ini файле!

Потом на второй форе стоит кнопка, на нажатие на нее должно скопировать фай под именем "db.fdb" в папку которая вписана в ini-файл!

ребята помогите я не знаю как сделать!
MAZADA вне форума Ответить с цитированием
Старый 05.08.2011, 17:55   #2
grafgrial
Просто хороший
Форумчанин
 
Аватар для grafgrial
 
Регистрация: 26.03.2010
Сообщений: 562
По умолчанию

значит копировать так должен
Код:
copyfile('db.fdb', ini.readstring('toca','label1,'')+'\+db.fdb');
чего сложного?
Помог, нажми весы слева
grafgrial вне форума Ответить с цитированием
Старый 05.08.2011, 19:42   #3
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
Значит путь у меня прописан!
И значит ничто не мешает тебе его проверить открыв этот ИНИ в блокноте
Цитата:
grafgrial
Я б на всякий случай так написал:
Код:
var s:string;
...
 s:=ini.readstring('toca','label1,'');
 if DirectoryExists(s) then
  copyfile('db.fdb', s+'\+db.fdb')
 else
  ShowMessage('Некуда спешить, нечего терять ;)');
  // Ну или тут создавать каталог - ForceDirectory(s);
...
И еще такая маненькая деталька: copyfile не любит краткие пути. Если db.fdb лежит в папке с прогой то стоит писать
Код:
copyfile(ExtractFilePath(Paramstr(0))+'db.fdb'...
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 06.08.2011, 12:26   #4
MAZADA
Форумчанин
 
Регистрация: 11.09.2010
Сообщений: 103
По умолчанию

Ребята у меня не получается!
вот мой код!

Код:
procedure TKacca.RfButton1Click(Sender: TObject);
var
ini: TIniFile;
  ph: THandle;
  tp, prevst: TTokenPrivileges;
  rl: DWORD;
begin
if MessageBox(Handle, PChar('Çàâåðøèòè äåíü?'), PChar('Çàâåðøåííÿ äíÿ...'),
               MB_ICONINFORMATION+MB_OKCANCEL+MB_DEFBUTTON2) = IDOK
               then begin
             if  DeleteFile('DB-copy\DB.FDB') then
  if   copyfile('db.fdb', ini.readstring('toca','label1,'')+'\+db.fdb')
   then
    ShowMessage('â êàññ³' + '  '+ panel1.Caption +'ãðí.    '+'ÁÄ óñï³øíî ñêîï³éîâàíà')
  else ShowMessage('Ïîìèëêà!');

  begin
 { OpenProcessToken(GetCurrentProcess, TOKEN_ADJUST_PRIVILEGES or
    TOKEN_QUERY, ph);
  LookupPrivilegeValue(nil, 'SeShutdownPrivilege', tp.Privileges[0].Luid);
  tp.PrivilegeCount := 1;
  tp.Privileges[0].Attributes := 2;
  AdjustTokenPrivileges(ph, FALSE, tp, SizeOf(prevst), prevst, rl);
  ExitWindowsEx(EWX_SHUTDOWN or EWX_POWEROFF, 0); }
  close;
    end;
    end;
    end;
вот ошибка там где звездочка!

Код:
copyfile('db.fdb', ini.readstring('toca','label1,'')+'\****+db.fdb')
В чем причина ошибки?
MAZADA вне форума Ответить с цитированием
Старый 06.08.2011, 12:34   #5
grafgrial
Просто хороший
Форумчанин
 
Аватар для grafgrial
 
Регистрация: 26.03.2010
Сообщений: 562
По умолчанию

Stilet, я подумал он задумается насчет пути ...
так может!!
copyfile(ExtractFilePath(Paramstr(0 ))+'db.fdb', ini.readstring('toca','label1,'')+' \****\db.fdb'); прочитай еще раз пост Stilet
И сударь подумайте..
Помог, нажми весы слева
grafgrial вне форума Ответить с цитированием
Старый 06.08.2011, 13:16   #6
MAZADA
Форумчанин
 
Регистрация: 11.09.2010
Сообщений: 103
По умолчанию

блин не работает
Код:
copyfile(ExtractFilePath(Paramstr(0 ))+'db.fdb', ini.readstring('toca','label1,'')+' \DB-copy\db.fdb')
MAZADA вне форума Ответить с цитированием
Старый 06.08.2011, 13:22   #7
ZuBy
Участник клуба
 
Аватар для ZuBy
 
Регистрация: 29.09.2008
Сообщений: 1,234
По умолчанию

может там два слеша?
посмотри сохраненный путь
Код:
copyfile(ExtractFilePath(Paramstr(0))+'db.fdb', ini.readstring('toca','label1,'')+'{\}DB-copy\db.fdb')
ZuBy вне форума Ответить с цитированием
Старый 06.08.2011, 13:26   #8
MAZADA
Форумчанин
 
Регистрация: 11.09.2010
Сообщений: 103
По умолчанию

у меня ошибка перед
Код:
ini.readstring('toca','label1,'')+'{\}DB-copy\db.fdb')
Код:
procedure TKacca.RfButton1Click(Sender: TObject);
var
ini: TIniFile;
  ph: THandle;
  tp, prevst: TTokenPrivileges;
  rl: DWORD;
begin
if MessageBox(Handle, PChar('Çàâåðøèòè äåíü?'), PChar('Çàâåðøåííÿ äíÿ...'),
               MB_ICONINFORMATION+MB_OKCANCEL+MB_DEFBUTTON2) = IDOK
               then begin
             if  DeleteFile('DB-copy\DB.FDB') then
if copyfile(ExtractFilePath(Paramstr(0))+'db.fdb', ini.readstring('toca','label1,'')+'{\}DB-copy\db.fdb')
   then
    ShowMessage('â êàññ³' + '  '+ panel1.Caption +'ãðí.    '+'ÁÄ óñï³øíî ñêîï³éîâàíà')
  else ShowMessage('Ïîìèëêà!');

  begin
 { OpenProcessToken(GetCurrentProcess, TOKEN_ADJUST_PRIVILEGES or
    TOKEN_QUERY, ph);
  LookupPrivilegeValue(nil, 'SeShutdownPrivilege', tp.Privileges[0].Luid);
  tp.PrivilegeCount := 1;
  tp.Privileges[0].Attributes := 2;
  AdjustTokenPrivileges(ph, FALSE, tp, SizeOf(prevst), prevst, rl);
  ExitWindowsEx(EWX_SHUTDOWN or EWX_POWEROFF, 0); }
  close;
    end;
    end;
    end;

Последний раз редактировалось Stilet; 06.08.2011 в 14:01.
MAZADA вне форума Ответить с цитированием
Старый 06.08.2011, 13:56   #9
ZuBy
Участник клуба
 
Аватар для ZuBy
 
Регистрация: 29.09.2008
Сообщений: 1,234
По умолчанию

Код:
if  DeleteFile(ini.readstring('toca','label1,'')+'\DB-copy\DB.FDB') then
if copyfile(ExtractFilePath(Paramstr(0))+'db.fdb', ini.readstring('toca','label1,'')+'\DB-copy\db.fdb')
ZuBy вне форума Ответить с цитированием
Старый 06.08.2011, 14:03   #10
MAZADA
Форумчанин
 
Регистрация: 11.09.2010
Сообщений: 103
По умолчанию

Цитата:
Сообщение от ZuBy Посмотреть сообщение
Код:
if  DeleteFile(ini.readstring('toca','label1,'')+'\DB-copy\DB.FDB') then
if copyfile(ExtractFilePath(Paramstr(0))+'db.fdb', ini.readstring('toca','label1,'')+'\DB-copy\db.fdb')

дай майл - я тебе проект брошу поможешь мне7???
MAZADA вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
copyfile Blad47 Общие вопросы C/C++ 10 12.12.2010 15:53
Вопрос по CopyFile() СИ++ Александр Елис Помощь студентам 1 20.05.2010 15:57
try copyfile except kosko Общие вопросы Delphi 2 11.08.2009 07:08
CopyFile Killbrum Общие вопросы Delphi 6 20.09.2008 22:59
CopyFile Airou Общие вопросы Delphi 15 22.05.2008 14:55