Копирование файла...

Вопросы программирования и использования среды Lazarus.

Модератор: Модераторы

Ответить
Аватара пользователя
qivi
энтузиаст
Сообщения: 703
Зарегистрирован: 19.01.2009 12:45:54
Откуда: Россия

Копирование файла...

Сообщение qivi »

Почему когда я пишу:

Код: Выделить всё

SysUtils.CopyFile ('1.rtf', '1/2.rtf', False);

он выдаёт мне ошибку отсутствия идентификатора, при том что там есть копифиле, а когда пишу:

Код: Выделить всё

CopyFile ('1.rtf', '1/2.rtf', False);

ошибок нет?
Из какого модуля на самом деле он берёт данную функцию?

И ещё... а зачем там в конце "False"?
Аватара пользователя
Sergei I. Gorelkin
энтузиаст
Сообщения: 1409
Зарегистрирован: 24.07.2005 14:40:41
Откуда: Зеленоград

Сообщение Sergei I. Gorelkin »

В модуле SysUtils нет функции CopyFile.
Она есть в модуле Windows. Последний параметр, равный False, означает "переписать файл назначения, если он существует".
Аватара пользователя
qivi
энтузиаст
Сообщения: 703
Зарегистрирован: 19.01.2009 12:45:54
Откуда: Россия

Сообщение qivi »

Sergei I. Gorelkin писал(а):В модуле SysUtils нет функции CopyFile.

Во дела... ща на работе под виндвс писал: SysUtils ставил точку начинал писать CopyFile и он его подставлял... а под линуксом не подставляет... :shock:
Padre_Mortius
энтузиаст
Сообщения: 1265
Зарегистрирован: 29.05.2007 17:38:07
Откуда: Спб

Сообщение Padre_Mortius »

Это потому что sysutils для платформы MS Windows работает с модулем windows
Аватара пользователя
Sergei I. Gorelkin
энтузиаст
Сообщения: 1409
Зарегистрирован: 24.07.2005 14:40:41
Откуда: Зеленоград

Сообщение Sergei I. Gorelkin »

... и codetools подставляет все, до чего дотягивается? Это на баг похоже.
Аватара пользователя
VirtUX
энтузиаст
Сообщения: 880
Зарегистрирован: 05.02.2008 09:52:19
Откуда: Крым, Алушта

Сообщение VirtUX »

Sergei I. Gorelkin писал(а):... и codetools подставляет все, до чего дотягивается? Это на баг похоже.

Я тоже считаю это багом. Может запостит в багтрекере кто?
Аватара пользователя
qivi
энтузиаст
Сообщения: 703
Зарегистрирован: 19.01.2009 12:45:54
Откуда: Россия

Сообщение qivi »

Sergei I. Gorelkin писал(а):В модуле SysUtils нет функции CopyFile.
Она есть в модуле Windows. Последний параметр, равный False, означает "переписать файл назначения, если он существует".


Ну так уж, для общего развития... а в каком модуле она живёт для линукса?
Аватара пользователя
Sergei I. Gorelkin
энтузиаст
Сообщения: 1409
Зарегистрирован: 24.07.2005 14:40:41
Откуда: Зеленоград

Сообщение Sergei I. Gorelkin »

В каком-нибудь libc, если вообще есть.
Кроссплатформенный вариант копирования данных (и не только) - это TStream.CopyFrom. Естественно, одной строчкой при этом не обойдешься.
Аватара пользователя
qivi
энтузиаст
Сообщения: 703
Зарегистрирован: 19.01.2009 12:45:54
Откуда: Россия

Сообщение qivi »

Sergei I. Gorelkin писал(а):В каком-нибудь libc, если вообще есть.
Кроссплатформенный вариант копирования данных (и не только) - это TStream.CopyFrom. Естественно, одной строчкой при этом не обойдешься.


Странно но у меня под линукс вполне успешно работает:

Код: Выделить всё

CopyFile ('1.rtf', '1/2.rtf', False);

просто хотел узнать откуда он его берёт...
Аватара пользователя
Brainenjii
энтузиаст
Сообщения: 1351
Зарегистрирован: 10.05.2007 00:04:46

Сообщение Brainenjii »

Alt+Up?
Аватара пользователя
qivi
энтузиаст
Сообщения: 703
Зарегистрирован: 19.01.2009 12:45:54
Откуда: Россия

Сообщение qivi »

Brainenjii писал(а):Alt+Up?

Чего?
Аватара пользователя
Brainenjii
энтузиаст
Сообщения: 1351
Зарегистрирован: 10.05.2007 00:04:46

Сообщение Brainenjii »

ну, если используется лазарус - встаёшь на слове и нажимаешь Alt+стрелку вверх ^_^ Должно перейти на место объявления
Аватара пользователя
qivi
энтузиаст
Сообщения: 703
Зарегистрирован: 19.01.2009 12:45:54
Откуда: Россия

Сообщение qivi »

Brainenjii писал(а):ну, если используется лазарус - встаёшь на слове и нажимаешь Alt+стрелку вверх ^_^ Должно перейти на место объявления


Точно вспомнил, спасибо, можно же кнопками перейти :)
Тока Ctrl + мыш... в ФилеУтил эта процедура.
Ответить