http://bugs.winehq.org/show_bug.cgi?id=9919
Summary: Microsoft Access Snapshot Viewer 10.0 install fails Product: Wine Version: 0.9.46. Platform: Other URL: http://www.microsoft.com/downloads/details.aspx?familyid =B73DF33F-6D74-423D-8274-8B7E6313EDFB&displaylang=en OS/Version: other Status: NEW Keywords: download, Installer Severity: enhancement Priority: P2 Component: wine-misc AssignedTo: wine-bugs@winehq.org ReportedBy: dank@kegel.com
md5sum: 2aec4a3c7a1c928deeb7d1e9b8779bb2 snpvw.exe The installer aborts with "A setup initialization file has been corrupted."
The installer seems to be a win16 app.
http://bugs.winehq.org/show_bug.cgi?id=9919
--- Comment #1 from Dan Kegel dank@kegel.com 2007-10-06 08:32:46 --- Created an attachment (id=8417) --> (http://bugs.winehq.org/attachment.cgi?id=8417) +relay,+dialog log, compressed with rzip
http://bugs.winehq.org/show_bug.cgi?id=9919
scguy318 nodisgod@yahoo.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |nodisgod@yahoo.com
--- Comment #2 from scguy318 nodisgod@yahoo.com 2008-05-22 18:44:04 --- The failure still occurs in Git (wine-1.0-rc1-182-g9f76085).
http://bugs.winehq.org/show_bug.cgi?id=9919
--- Comment #3 from Robert Backhaus robbak@gmail.com 2008-11-08 02:28:05 --- The problem is with the bundled extract.exe utility, which is an old 16-bit command-line program that cannot work on amd64, and has a long history of failure.
To install, follow this procedure. (You will need the "cabextract" program installed to install Snapshot Viewer.)
Run the install script until it stops with the error message "A Setup initialization file has been corrupted". Do not click OK to this message. Open a terminal window and navigate to the equivalent of c:\windows\temp\IXP000.TMP\ (this directory may change with different instalations, but it should have a similar name and location. run "cabextract snap901.cab" run "wine acmsetup.exe /T *.stf" Follow the install until its completion. It tells you that the program did not install, but this seems to be incorrect. run "wine c:\program files\snapshot viewer\snapview.exe" . The program should run. Try to view your .snp files. If your files do not open correctly, please consider reporting a bug so it can be fixed.
Apart from this problem, this program appears to work perfectly.
http://bugs.winehq.org/show_bug.cgi?id=9919
nathan.n saturn_systems@yahoo.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |saturn_systems@yahoo.com
--- Comment #4 from nathan.n saturn_systems@yahoo.com 2009-01-27 16:37:34 --- (In reply to comment #3) The following does not solve the error but at least you can extract the files to be used with cabextract
wine snpvw.exe /C /T:snap
navigate to the snap/snap directory
http://bugs.winehq.org/show_bug.cgi?id=9919
--- Comment #5 from Austin English austinenglish@gmail.com 2009-09-03 03:31:55 --- Still present in git.
http://bugs.winehq.org/show_bug.cgi?id=9919
Robert Backhaus robbak@robbak.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |robbak@robbak.com
--- Comment #6 from Robert Backhaus robbak@robbak.com 2010-04-19 22:05:52 --- Perhaps it is time to close this bug as WONTFIX. The only ways to fix it are to fully implement 16 bit support for it, or to make a built-in extract.exe(the codeweavers solution). The former is a ridiculous amount of work for a trivial outcome, and the second would create problems whenever a program component is called extract.exe As a fairly clean workaround exists using cabextract, this problem is no longer important.
http://bugs.winehq.org/show_bug.cgi?id=9919
--- Comment #7 from Dan Kegel dank@kegel.com 2010-04-20 05:54:06 --- Nice analysis and workarounds in #3, #4, and #6.
I'd be ok with marking it WONTFIX, except that's tantamount to giving up on win16, which would be something to discuss on wine-devel first.
http://bugs.winehq.org/show_bug.cgi?id=9919
--- Comment #8 from Henri Verbeet hverbeet@gmail.com 2010-04-20 06:48:12 --- If that's the same problem as I think it is, the last time this came up on wine-devel wasn't too long ago. See also http://www.winehq.org/pipermail/wine-devel/2010-April/082799.html.
http://bugs.winehq.org/show_bug.cgi?id=9919
Amir amir@meiri.org changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |amir@meiri.org
--- Comment #9 from Amir amir@meiri.org 2010-10-26 05:22:08 CDT --- (In reply to comment #3)
To install, follow this procedure. (You will need the "cabextract" program installed to install Snapshot Viewer.)
...
Apart from this problem, this program appears to work perfectly.
The installation step ("wine acmsetup.exe ...") fails for me with a page fault access (wine message and crash). Help?
Amir
http://bugs.winehq.org/show_bug.cgi?id=9919
--- Comment #10 from nathan.n saturn_systems@yahoo.com 2010-11-26 19:21:19 CST --- still present in wine 1.3.7
http://bugs.winehq.org/show_bug.cgi?id=9919
Frédéric Delanoy frederic.delanoy@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |frederic.delanoy@gmail.com
--- Comment #11 from Frédéric Delanoy frederic.delanoy@gmail.com 2012-02-29 04:25:28 CST --- Still in 1.4-rc5
http://bugs.winehq.org/show_bug.cgi?id=9919
--- Comment #12 from Frédéric Delanoy frederic.delanoy@gmail.com 2013-05-30 11:54:17 CDT --- Still in wine-1.5.31-78-g11589fa
https://bugs.winehq.org/show_bug.cgi?id=9919
Ken Sharp imwellcushtymelike@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Keywords| |win16 URL|http://www.microsoft.com/do |http://download.microsoft.c |wnloads/details.aspx?family |om/download/e/f/9/ef9c7199- |id=B73DF33F-6D74-423D-8274- |a520-4f9b-99ea-f61702daac20 |8B7E6313EDFB&displaylang=en |/snpvw.exe Severity|enhancement |minor
--- Comment #13 from Ken Sharp imwellcushtymelike@gmail.com --- Still present in wine-1.7.46-193-g8b566b1
https://bugs.winehq.org/show_bug.cgi?id=9919
super_man@post.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |super_man@post.com
--- Comment #14 from super_man@post.com --- (In reply to Dan Kegel from comment #0)
md5sum: 2aec4a3c7a1c928deeb7d1e9b8779bb2 snpvw.exe The installer aborts with "A setup initialization file has been corrupted."
The installer seems to be a win16 app.
The same wine 1.7.55 and wine 1.7.55-staging
https://bugs.winehq.org/show_bug.cgi?id=9919
Anastasius Focht focht@gmx.net changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |focht@gmx.net Hardware|Other |x86 Summary|Microsoft Access Snapshot |Microsoft Access Snapshot |Viewer 10.0 install fails |Viewer 10.0 install fails | |(GetPrivateProfileString16 | |must only return valid key | |names) OS|other |Linux Severity|minor |normal
--- Comment #15 from Anastasius Focht focht@gmx.net --- Hello folks,
confirming.
It's a valid Wine bug and can be easily fixed.
The analysis from comment #3 is wrong, it has nothing to do with the 16-bit extraction tool.
There is an ini-style file for the bootstrap installer, named "setup.lst". It has the following content:
--- snip --- [Params] WndTitle = Snapshot Viewer WndMess = Starting Snapshot Viewer Setup... TmpDirSize = 2000 TmpDirName = ~msstfqf.t CmdLine = acmsetup /T snap90.stf /S %s %s CabinetFile = SNAP901.CAB DrvModeName = ACMSETUP DrvWinClass = Stuff-Shell Require31 = "This program requires Windows (R) 3.51 or higher." [Files] license.txt = license.txt @acmsetup.exe = acmsetup.exe @mssetup.dll = mssetup.dll @msacccah.dll = msacccah.dll @acmsetup.hlp = acmsetup.hlp snap90.stf = snap90.stf snap90.inf = snap90.inf @snap_bb.dll = snap_bb.dll oleaut32.dll = 32autole.dll le.dll --- snip ---
It seems someone at Microsoft added the last line (= invalid key/name entry) by mistake which triggers the bug in Wine.
'setup.exe' -> bootstrap installer, extracted from 'snpvw.exe'.
--- snip --- $ WINEDEBUG=+tid,+seh,+relay,+profile wine ./setup.exe >>log.txt 2>&1 ... 002a:Call KERNEL.128: GETPRIVATEPROFILESTRING(11ef001c "Files",00000000 (null),11e72d46 "",11ef:59e2,0259,11ef55ea "Z:\home\focht\DOWN~NTG\IXP000.TMP\setup.LST") ret=11e7:1c5f ds=11ef 002a:Call ntdll.RtlAllocateHeap(00110000,00000000,00000259) ret=7e98dfda 002a:Ret ntdll.RtlAllocateHeap() retval=001634e0 ret=7e98dfda 002a:Call KERNEL32.GetPrivateProfileSectionA(003a47b4 "Files",001634e0,00000259,003a9d82 "Z:\home\focht\DOWN~NTG\IXP000.TMP\setup.LST") ret=7e98e00f 002a:trace:profile:GetPrivateProfileSectionW (L"Files", 0x167bd8, 1202, L"Z:\home\focht\DOWN~NTG\IXP000.TMP\setup.LST") 002a:trace:profile:PROFILE_Open path: L"Z:\home\focht\DOWN~NTG\IXP000.TMP\setup.LST" 002a:trace:profile:PROFILE_Open MRU Filename: L"Z:\home\focht\DOWN~NTG\IXP000.TMP\setup.LST", new filename: L"Z:\home\focht\DOWN~NTG\IXP000.TMP\setup.LST" 002a:trace:profile:is_not_current 0d103940;13c29f6c 002a:trace:profile:PROFILE_Open (L"Z:\home\focht\DOWN~NTG\IXP000.TMP\setup.LST"): already opened (mru=0) 002a:trace:profile:PROFILE_GetSection L"Files",0x167bd8,1202 002a:Ret KERNEL32.GetPrivateProfileSectionA() retval=000000e8 ret=7e98e00f 002a:Call ntdll.RtlFreeHeap(00110000,00000000,001634e0) ret=7e98e1c8 002a:Ret ntdll.RtlFreeHeap() retval=00000001 ret=7e98e1c8 002a:Ret KERNEL.128: GETPRIVATEPROFILESTRING() retval=0000007a ret=11e7:1c5f ds=11ef ... 002a:Call KERNEL.128: GETPRIVATEPROFILESTRING(11ef001c "Files",11ef59e2 "license.txt",11e72d46 "",11ef:520a,0080,11ef55ea "Z:\home\focht\DOWN~NTG\IXP000.TMP\setup.LST") ret=11e7:1d22 ds=11ef 002a:Call KERNEL32.GetPrivateProfileStringA(003a47b4 "Files",003aa17a "license.txt",003a39f6 "",003a99a2,00000080,003a9d82 "Z:\home\focht\DOWN~NTG\IXP000.TMP\setup.LST") ret=7e98e236 002a:trace:profile:GetPrivateProfileStringW L"Files",L"license.txt",L"",0x1669e8,128,L"Z:\home\focht\DOWN~NTG\IXP000.TMP\setup.LST" 002a:trace:profile:PROFILE_Open path: L"Z:\home\focht\DOWN~NTG\IXP000.TMP\setup.LST" 002a:trace:profile:PROFILE_Open MRU Filename: L"Z:\home\focht\DOWN~NTG\IXP000.TMP\setup.LST", new filename: L"Z:\home\focht\DOWN~NTG\IXP000.TMP\setup.LST" 002a:trace:profile:is_not_current 0d103940;13c2b452 002a:trace:profile:PROFILE_Open (L"Z:\home\focht\DOWN~NTG\IXP000.TMP\setup.LST"): already opened (mru=0) 002a:trace:profile:PROFILE_GetString (L"Files",L"license.txt",L""): returning L"license.txt" 002a:trace:profile:GetPrivateProfileStringW returning L"license.txt", 11 002a:Ret KERNEL32.GetPrivateProfileStringA() retval=0000000b ret=7e98e236 002a:Ret KERNEL.128: GETPRIVATEPROFILESTRING() retval=0000000b ret=11e7:1d22 ds=11ef ... 002a:Call KERNEL.128: GETPRIVATEPROFILESTRING(11ef001c "Files",11ef5a48 "oleaut32.dll",11e72d46 "",11ef:520a,0080,11ef55ea "Z:\home\focht\DOWN~NTG\IXP000.TMP\setup.LST") ret=11e7:1d22 ds=11ef 002a:Call KERNEL32.GetPrivateProfileStringA(003a47b4 "Files",003aa1e0 "oleaut32.dll",003a39f6 "",003a99a2,00000080,003a9d82 "Z:\home\focht\DOWN~NTG\IXP000.TMP\setup.LST") ret=7e98e236 002a:trace:profile:GetPrivateProfileStringW L"Files",L"oleaut32.dll",L"",0x1669e8,128,L"Z:\home\focht\DOWN~NTG\IXP000.TMP\setup.LST" 002a:trace:profile:PROFILE_Open path: L"Z:\home\focht\DOWN~NTG\IXP000.TMP\setup.LST" 002a:trace:profile:PROFILE_Open MRU Filename: L"Z:\home\focht\DOWN~NTG\IXP000.TMP\setup.LST", new filename: L"Z:\home\focht\DOWN~NTG\IXP000.TMP\setup.LST" 002a:trace:profile:is_not_current 0d103940;13c35f74 002a:trace:profile:PROFILE_Open (L"Z:\home\focht\DOWN~NTG\IXP000.TMP\setup.LST"): already opened (mru=0) 002a:trace:profile:PROFILE_GetString (L"Files",L"oleaut32.dll",L""): returning L"32autole.dll" 002a:trace:profile:GetPrivateProfileStringW returning L"32autole.dll", 12 002a:Ret KERNEL32.GetPrivateProfileStringA() retval=0000000c ret=7e98e236 002a:Ret KERNEL.128: GETPRIVATEPROFILESTRING() retval=0000000c ret=11e7:1d22 ds=11ef ... 002a:Call KERNEL.128: GETPRIVATEPROFILESTRING(11ef001c "Files",11ef5a55 "le.dll",11e72d46 "",11ef:520a,0080,11ef55ea "Z:\home\focht\DOWN~NTG\IXP000.TMP\setup.LST") ret=11e7:1d22 ds=11ef 002a:Call KERNEL32.GetPrivateProfileStringA(003a47b4 "Files",003aa1ed "le.dll",003a39f6 "",003a99a2,00000080,003a9d82 "Z:\home\focht\DOWN~NTG\IXP000.TMP\setup.LST") ret=7e98e236 002a:trace:profile:GetPrivateProfileStringW L"Files",L"le.dll",L"",0x1669e8,128,L"Z:\home\focht\DOWN~NTG\IXP000.TMP\setup.LST" 002a:trace:profile:PROFILE_Open path: L"Z:\home\focht\DOWN~NTG\IXP000.TMP\setup.LST" 002a:trace:profile:PROFILE_Open MRU Filename: L"Z:\home\focht\DOWN~NTG\IXP000.TMP\setup.LST", new filename: L"Z:\home\focht\DOWN~NTG\IXP000.TMP\setup.LST" 002a:trace:profile:is_not_current 0d103940;13c372de 002a:trace:profile:PROFILE_Open (L"Z:\home\focht\DOWN~NTG\IXP000.TMP\setup.LST"): already opened (mru=0) 002a:trace:profile:PROFILE_GetString (L"Files",L"le.dll",L""): returning L"" 002a:trace:profile:GetPrivateProfileStringW returning L"", 0 002a:Ret KERNEL32.GetPrivateProfileStringA() retval=00000000 ret=7e98e236 002a:Ret KERNEL.128: GETPRIVATEPROFILESTRING() retval=00000000 ret=11e7:1d22 ds=11ef ... 002a:Call USER.1: MESSAGEBOX(004c,11ef4dec "A Setup initialization file has been corrupted.",11ef518c "Setup Initialization Error",0010) ret=11e7:023f ds=11ef --- snip ---
As already said, the last entry from the 'Files' section, 'le.dll' is invalid hence must not be returned from 'GetPrivateProfileString16( section, NULL, ...)' which ought to return all *valid* key names from the specified section (string array).
The two implementations of 'GetPrivateProfileString': 16-bit 'GetPrivateProfileString16' and 32-bit 'GetPrivateProfileStringA/W' are independent and the 16-bit implementation must be fixed.
Source: https://source.winehq.org/git/wine.git/blob/33aa59abea2ec4dc0d2354a44ec9d0a5...
$ sha1sum snpvw.exe 41a431279bf730c6ea0191c91370840de38e5ebc snpvw.exe
$ du -sh snpvw.exe 1.8M snpvw.exe
$ wine --version wine-1.7.55-2-g62f05b2
Regards
https://bugs.winehq.org/show_bug.cgi?id=9919
Bruno Jesus 00cpxxx@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |00cpxxx@gmail.com
--- Comment #16 from Bruno Jesus 00cpxxx@gmail.com --- Created attachment 52773 --> https://bugs.winehq.org/attachment.cgi?id=52773 ignore invalid entries
You mean something like this? It works for me.
https://bugs.winehq.org/show_bug.cgi?id=9919
Sebastian Lackner sebastian@fds-team.de changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |STAGED CC| |erich.e.hoover@wine-staging | |.com, michael@fds-team.de, | |sebastian@fds-team.de Staged patchset| |https://github.com/wine-com | |pholio/wine-staging/tree/ma | |ster/patches/krnl386.exe-Ge | |tPrivateProfileString
https://bugs.winehq.org/show_bug.cgi?id=9919
--- Comment #17 from Sebastian Lackner sebastian@fds-team.de --- (In reply to Bruno Jesus from comment #16)
Created attachment 52773 [details] ignore invalid entries
You mean something like this? It works for me.
Besides printing a string without debugstr_a the patch looks fine. Difficult to confirm the correctness without tests though... ;)
https://bugs.winehq.org/show_bug.cgi?id=9919
--- Comment #18 from Bruno Jesus 00cpxxx@gmail.com --- Thanks for staging, I'll create the tests.
https://bugs.winehq.org/show_bug.cgi?id=9919
--- Comment #19 from Bruno Jesus 00cpxxx@gmail.com --- (In reply to Bruno Jesus from comment #18)
Thanks for staging, I'll create the tests.
Actually I don't know how to call GetPrivateProfileString16, I also tried loading it but failed from krnl386.exe16 or kernel32.dll (probably as expected).
https://bugs.winehq.org/show_bug.cgi?id=9919
--- Comment #20 from Bruno Jesus 00cpxxx@gmail.com --- Created attachment 52962 --> https://bugs.winehq.org/attachment.cgi?id=52962 tests and patch
This is an archive containing the patch, the tests source, the compiled 16-bit exe and the outputs before and after the patch. The test writes the test outputs to a file called output.txt as printf does not seen to work to print on the console from a 16-bit application.
https://bugs.winehq.org/show_bug.cgi?id=9919
--- Comment #21 from super_man@post.com --- Install succeeds with current git
wine-1.8-rc2-54-ge69d9ec
https://bugs.winehq.org/show_bug.cgi?id=9919
Nikolay Sivov bunglehead@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Fixed by SHA1| |90eb14a6c4d4d2549894a04655a | |6f38ceb6998d2 Status|STAGED |RESOLVED Resolution|--- |FIXED
--- Comment #22 from Nikolay Sivov bunglehead@gmail.com --- Fixed with 90eb14a6c4d4d2549894a04655a6f38ceb6998d2.
https://bugs.winehq.org/show_bug.cgi?id=9919
Alexandre Julliard julliard@winehq.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |CLOSED
--- Comment #23 from Alexandre Julliard julliard@winehq.org --- Closing bugs fixed in 1.8-rc3.