Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

CopyFile(PChar(OldFile),PChar(NewFile),False)


Страницы:   1 2

Rimd ©   (2007-05-08 15:39:00) 

По GetLastError выдает 87L ERROR_INVALID_PARAMETER, все параметры в норме, что он хочет?


{RASkov}   (2007-05-08 22:08:00) [21]

> [16] Reindeer Moss Eater ©   (08.05.07 21:05)
> И ответ дан.

Где? Если в [1] - то... куда хочет? Если в CopyFile то См. [9],[15],.... [4] наконец.

И тут противоречие:
 > [16] Reindeer Moss Eater ©   (08.05.07 21:05)
 > У меня нет такой уверенности.
.......
 >вызов винапи функции обламывается с таким-то кодом гетластеррора.
вызов винапи функции - CopyFile я так понимаю.
По твоим словам можно понять, что ошибка GetLastError - это ошибка после CopyFile.
И что не верные параметры именно в CopyFile. Но здесь тогда должнабыть уверенность, что GetLastError проверен сразупосле CopyFile.

Нет, я не говорю, что я в споре прав, а ты нет(или наоборот)....
В итоге, мы может быть, одно и то-же хотим доказать....(каждый по своему), а автор вопроса молчит как рыба об лед :(

ЗЫ непоспорить не удержался :)


Reindeer Moss Eater   (2007-05-08 21:05:00) [22]

А откуда у тебя такая уверенность что GetlastError проверен сразу после CopyFile?

У меня нет такой уверенности.
И это не моя проблема.
Есть вопрос, в котором русским по белому сказано, что вызов винапи функции обламывается с таким-то кодом гетластеррора.
Все.
Требуется дать максимально адекватный ответ на вопрос "почему?" и "что оно ждет от меня?"

И ответ дан.


{RASkov}   (2007-05-08 21:02:00) [23]

> [13] Reindeer Moss Eater ©   (08.05.07 20:50)
> И значит по твоему такой GetlastError это результат паскалевского приведения PChar ?

А откуда у тебя такая уверенность что GetlastError проверен сразу после CopyFile?
ЗЫ Я больше спорить не буду пока не будут ответы на вопросы в [4]....


begin...end   (2007-05-08 20:51:00) [24]

> {RASkov} ©   (08.05.07 20:38) [12]

Угу. Я просто хотел обратить внимание, что если сразу после вызова CopyFile LastError <> 0, то ошибка возникла именно в результате работы этой функции, т.к. предыдущее значение ошибки она сбрасывает.


Reindeer Moss Eater   (2007-05-08 20:50:00) [25]

То что там лежит это уже не параметры функции из сабжа.... Результат функции PChar() является правильным, для сабжа, параметром.

Да что ты говоришь?
И значит по твоему такой GetlastError это результат паскалевского приведения PChar ?

Остается только пофантазировать, откуда winapi узнало о сущесвтовании PChar и самого Паскаля.


{RASkov}   (2007-05-08 20:38:00) [26]

> [11] begin...end ©   (08.05.07 20:35)
> Не уверен.

Покажет... "Операция успешно завершена"
:)


begin...end   (2007-05-08 20:35:00) [27]

> {RASkov} ©   (08.05.07 19:13) [10]

> если в моем примере вызвать функцию без ошибки
> то ShowMessage все равно отобразится и покажет последнюю
> в системе ошибку.

Не уверен.


{RASkov}   (2007-05-08 19:13:00) [28]

> [9] Rial ©   (08.05.07 19:01)

+1
Даже вот так
procedure TForm1.Button1Click(Sender: TObject);
begin
 CopyFile(PChar(Sender), PChar(Button1), False);
 ShowMessage(SysErrorMessage(GetLastError));
end;

Показывает: Не удается найти указанный файл.
Но если ошибка у автора появляется в момент копирования, то фик знает... пусть полный код покажет...
И опять же... в моем примере сделано специально вызов функции с ошибкой... если в моем примере вызвать функцию без ошибки т.е.
procedure TForm1.Button1Click(Sender: TObject);
begin
 CopyFile(PChar('C:\boot.ini'), PChar('C:\bootold.ini'), False);
 ShowMessage(SysErrorMessage(GetLastError));
end;

то ShowMessage все равно отобразится и покажет последнюю в системе ошибку.


Rial   (2007-05-08 19:01:00) [29]

> [0] Rimd   (08.05.07 15:39)
> По GetLastError выдает 87L ERROR_INVALID_PARAMETER, все
> параметры в норме, что он хочет?

С чего ты взял, что ошибка вообще возникает ?
GetLastError возвращает последнюю ошибку, но с чего
бы ей быть именно здесь ?


{RASkov}   (2007-05-08 19:01:00) [30]

> [7] Плохиш ©   (08.05.07 18:57)

Ну да.. сначало [0] потом [4].....
Здесь ежу ясно, что что-то не-то с OldFile и NewFile.


Плохиш   (2007-05-08 18:57:00) [31]


> {RASkov} ©   (08.05.07 18:55) [6]
> > [5] Reindeer Moss Eater ©   (08.05.07 18:20)
> > Знаем наперед что там у него в переменных OldFile и NewFile
> лежит?
>
> То что там лежит это уже не параметры функции из сабжа

Может стоит ещё несколько раз пост [0] прочитать...


{RASkov}   (2007-05-08 18:55:00) [32]

> [5] Reindeer Moss Eater ©   (08.05.07 18:20)
> Знаем наперед что там у него в переменных OldFile и NewFile лежит?

То что там лежит это уже не параметры функции из сабжа.... Результат функции PChar() является правильным, для сабжа, параметром.
Я ведь не зря про них(OldFile и NewFile) тоже поинтересовался... ;)


Reindeer Moss Eater   (2007-05-08 18:20:00) [33]

Вообще в Сабже все параметры верные...
Откуда это известно?

Знаем наперед что там у него в переменных OldFile и NewFile лежит?


{RASkov}   (2007-05-08 18:17:00) [34]

> [0] Rimd   (08.05.07 15:39)

Вообще в Сабже все параметры верные...
У тебя после сабжа и перед GetLastError есть еще что-нибудь?
И что есть OldFile, NewFile и чему они равны в момент вызова CopyFile?


Reindeer Moss Eater   (2007-05-08 18:01:00) [35]

Код уже два часа как в студии.
:)


DevilDevil   (2007-05-08 17:59:00) [36]

код в студию


Reindeer Moss Eater   (2007-05-08 15:39:00) [37]

Правильный параметр хочет


Страницы:   1 2

Наверх

Титульная страница Поиск, карта сайта Написать письмо