[Bug 1113] kernel32.CopyFileW failure

Wine Bugs wine-bugs at winehq.com
Sat Jun 28 07:37:54 CDT 2003


http://bugs.winehq.com/show_bug.cgi?id=1113





------- Additional Comments From z_god at wanadoo.nl  2003-28-06 07:37 -------
Bug comments restored from Gmane.org: 
 
Hi everybody. 
 
I was using build 20021007, that was not available to select for "version", on 
Redhat 7.3. I tried to install the Interbase (an SQL database from Borland) 
client and the installer reported that it could not copy any of the files 
from the install subdirectory to the destination. Installation failed. 
I managed to produce this debug output from wine: 
 
08073ed8:Call kernel32.CopyFileW(402af0f8  
L"C:\\ib_install\\client\\ibinstall.dll",402af150 L"C:\\Program  
Files\\Borland\\InterBase\\",00000000) ret=4131ee2f 
trace:file:CopyFileW L"C:\\ib_install\\client\\ibinstall.dll" -> L"C:\\Program  
Files\\Borland\\InterBase\\" 
trace:file:CreateFileW L"C:\\ib_install\\client\\ibinstall.dll" GENERIC_READ  
FILE_SHARE_READ FILE_SHARE_WRITE OPEN_EXISTING  attributes 0x0 
trace:file:CreateFileW returning 00000054 
trace:file:GetFileInformationByHandle 00000054 
trace:file:CreateFileW L"C:\\Program Files\\Borland\\InterBase\\" GENERIC_WRITE  
FILE_SHARE_READ FILE_SHARE_WRITE CREATE_ALWAYS  attributes 0x20 
warn:file:FILE_CreateFile Unable to create file '/usr/share/wine-c/Program  
Files/Borland/InterBase' (GLE 82) 
trace:file:CreateFileW returning ffffffff 
warn:file:CopyFileW Unable to open dest L"C:\\Program  
Files\\Borland\\InterBase\\" 
08073ed8:Ret  kernel32.CopyFileW() retval=00000000 ret=4131ee2f 
 
What I can see here is that the destination is not a file name (as it is  
supposed to be) but the name of a subdirectory. WINE does not like that. 
The installer works flawlessly on any known windows platform, this  
looks like an undocumented feature of windows to me. 
 
 
------- Additional Comments From dclark <at> akamail.com  2002-10-31 13:39 ------- 
In this case it is a documented feature: 
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/fileio/base/createfile.asp 
Go down near the bottom to the header "Directories", and it says "An application 
cannot create a directory with CreateFile; it must call CreateDirectory or 
CreateDirectoryEx to create a directory." 
 
And indeed, running on WinNT, if there is no such directory, this call sets the 
LastError to ERROR_INVALID_NAME. I have seen another program that expects that 
and then makes a call to create the directory. 
 
 
------- Additional Comments From joern <at> sierwald.com  2002-10-31 13:50 ------- 
Sorry, but this is not what I meant. The destination directory does exist  
already. The problem is that the destination ends with a '\' sign. Windows  
would append the actual filename to the destination and try to open that file.  
The resulting filename would be C:\\Program  
Files\\Borland\\InterBase\\ibinstall.dll". But WINE doesn't do that. 
 
 
------- Additional Comments From dclark <at> akamail.com  2002-10-31 14:19 ------- 
Quite right. I see that now. 

-- 
Configure bugmail: http://bugs.winehq.com/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.



More information about the wine-bugs mailing list