Tek-Tips is the largest IT community on the Internet today!

Members share and learn making Tek-Tips Forums the best source of peer-reviewed technical information on the Internet!

  • Congratulations TouchToneTommy on being selected by the Tek-Tips community for having the most helpful posts in the forums last week. Way to Go!

missing export KERNEL32.DLL: CopyFileExA.

Status
Not open for further replies.

MedFly

Programmer
Sep 28, 2005
4
DE
Hi there,

my application crashes with a "missing export KERNEL32.DLL: CopyFileExA" error message when started on Win95 and some Win98 machines. I developed it with Delphi7 on a WinXP machine. I am aware of the CopyFileEx problem (NT systems only) and avoided the use of it but it seems to be linked anyway. Does anybody know how to deal with this problem?

regards,
Andreas
 

Did you use a Delphi function that links to that internally, like CopyFile()? Delphi 7 likely is unicode, but 95 and 98 won't necessarily support it.

Eliminate the calling unit and you eliminate the error.
Of course, you'll have to replace whatever code that uses it with your own call to the SDK.

Or you could do as the MSDN entry says: Provide "Microsoft Layer for Unicode" for Windows Me/98/95.
 
Very helpful tip, thank you. Redistributing the "Micorosoft Layer for Unicode" hopefully resolves the problem. Althoug I still don't know why the error message sais "missing CopyFileExA" which is supposed to be the ANSI version and not the UNICODE version of CopyFileEx.

regards,
Andreas
 
CopyFileEx is not implemented at all in Win9x, neither W nor A (but CopyFileA is).

IMHO, your best bet is using CopyFileA directly, so you don't need to install the unicode layer.

Note: In Delphi 6.x CopyFile is mapped to CopyFileA, no idea about Delphi 7.

buho (A).

 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top