I've been playing around with the supreme commander install most of today trying to figure out why it does not want to install. Running with +file,+msgbox and noticed the following error for virtually all files:
warn:file:wine_nt_to_unix_file_name L"TUB500.xsb" not found in /home/stephan/.wine/dosdevices/c:/Program Files/THQ/Gas Powered Games/Supreme Commander/sounds/Voice/fr/Tutorials
This is the file being copied when I get the "Error 87" message from Install shield.
Also, pretty much every file, if not every file, gives the same trace in the debug log. It's weird that install shield will copy hundreds of files with that warning in their trace and not complain until it is 80% through.
So then I wondered, is that really the cause or not? I think yes. Install shield appears to be kind enough to not re-copy the files if they already exist, so I killed the process to keep all files already copied and added the one missing file above from my windows install and then ran install shield again.
This time around, the file was processed correctly and no error. Instead it gives the error now on the next file, which is TUB500.xwb.
Some more trace below:
trace:file:GetFileAttributesW L"c:\Program Files\THQ\Gas Powered Games\Supreme Commander\sounds\Voice\fr\Tutorials\TUB500.xwb" trace:file:RtlDosPathNameToNtPathName_U (L"c:\Program Files\THQ\Gas Powered Games\Supreme Commander\sounds\Voice\fr\Tutorials\ \TUB500.xwb",0x334b84,(nil),(nil)) trace:file:RtlGetFullPathName_U (L"c:\Program Files\THQ\Gas Powered Games\Supreme Commander\sounds\Voice\fr\Tutorials\TUB500.xwb" 520 0x3348f8 (nil)) warn:file:wine_nt_to_unix_file_name L"TUB500.xwb" not found in /home/stephan/.wine/dosdevices/c:/Program Files/THQ/Gas Powered Games/Supreme Commander/sounds/Voice/fr/Tutorials trace:file:MoveFileWithProgressW (L"",(null),(nil),(nil),0004) trace:file:RtlDosPathNameToNtPathName_U (L"",0x3348b8,(nil),(nil)) trace:file:GetFileAttributesW L"c:\Program Files\THQ\Gas Powered Games\Supreme Commander\sounds\Voice\fr\Tutorials\TUB500.xwb" trace:file:RtlDosPathNameToNtPathName_U (L"c:\Program Files\THQ\Gas Powered Games\Supreme Commander\sounds\Voice\fr\Tutorials\ \TUB500.xwb",0x334800,(nil),(nil)) trace:file:RtlGetFullPathName_U (L"c:\Program Files\THQ\Gas Powered Games\Supreme Commander\sounds\Voice\fr\Tutorials\TUB500.xwb" 520 0x334574 (nil)) warn:file:wine_nt_to_unix_file_name L"TUB500.xwb" not found in /home/stephan/.wine/dosdevices/c:/Program Files/THQ/Gas Powered Games/Supreme Commander/sounds/Voice/fr/Tutorials
Followed by this resulting in the error message box:
trace:file:RtlDosPathNameToNtPathName_U (L"C:\windows\temp\ {62CDECF0-D5B2-11DB-C687-0018F32E4A94}\ \ISSetup.dll",0x341404,(nil),(nil)) trace:file:RtlGetFullPathName_U (L"C:\windows\temp\ {62CDECF0-D5B2-11DB-C687-0018F32E4A94}\ISSetup.dll" 520 0x3411c4 (nil)) trace:file:wine_nt_to_unix_file_name L"\??\C:\windows\temp\ {62CDECF0-D5B2-11DB-C687-0018F32E4A94}\ISSetup.dll" -> "/home/stephan/.wine/dosdevices/c:/windows/temp/{62CDECF0-D5B2-11DB-C687-0018F32E4A94}/ISSetup.dll" trace:file:RtlGetFullPathName_U (L"C:\windows\temp\ {62CDECF0-D5B2-11DB-C687-0018F32E4A94}\ISSetup.dll" 522 0x34149e (nil)) trace:msgbox:MSGBOX_OnInit L"Error:\t87"
So it seems that it freaks out because somehow the file appears in the directory tree late.
I'm still trying to think of a way of reproducing this with a test case...but that won't be all that easy without knowing precisely what Install Shield is actually doing in their code!
Any thoughts?
Stephan Rose