Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C++ Builder > CopyFile не работает в разных версиях Windows


Автор: Гость_Arkady 10.10.2005, 19:35
Приветствую!!!

Прроблема такая - код
#include <vcl.h>
...
CopyFile(src, dest, false);
...

, скомпиленный в Windows XP, не хотит работать в Windows 98 (ничего не делает). Я обращался в разные форумы, были советы даже побитового чтения, но.. полумерой стала сборка проекта в 98. Такой "девяносто восьмой" проект в маздае работает. Но отказывается работать в Xp - просто ничего не делает.
Исследовал, пришел к выводу, что адреса вызова функций из kernel32.dll (или откуда они вызываются) в разных версиях MS разные (ха, открыл Америку smile ).

Проблема связана с VCL?

Пробовал прикола ради вместо VCL инклудить хидер windows.h - проблема решается. Но тогда исчезают визуальные компоненты DateTime Pcker и иже с ним. А хочется красоты.

Как быть? Переметнуться во вражеский лагерь Visual Studio с MFC? Не хочется...

С уважением, Аркадий.

Автор: azesmcar 11.10.2005, 08:16
попробуй динамически...
загрузи kernel32.dll, делай GetProcAddress( hm, "CopyFileA" ), потом уж вызывай..должно сработать..


Автор: _hunter 11.10.2005, 10:43
попробуй WinBase.h приинклудить
+ что CopyFile() возвращает? ( хоть и не работает, но если при ее вызове AV не появляется -- что-то она да делает )

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)