http://bugs.winehq.org/show_bug.cgi?id=21987
Summary: Acrobat 7 tryout complains: This Postscript Driver or Windows Platform (Win9x/Me) not supported Product: Wine Version: 1.1.40 Platform: x86 URL: http://www.adobe.com/products/acrobatpro/tryreg.html OS/Version: Linux Status: NEW Keywords: download Severity: enhancement Priority: P2 Component: -unknown AssignedTo: wine-bugs@winehq.org ReportedBy: jeffz@jeffz.name
When installing the Acrobat 7 trial AcTR7EFG.exe, the installer produces a dialog:
Devmode This Postscript Driver or Windows Platform (Win9x/Me) not supported
It doesn't prevent the installer from progressing, but the same thing doesn't happen on Vista.
http://bugs.winehq.org/show_bug.cgi?id=21987
Austin English austinenglish@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Keywords| |printing
http://bugs.winehq.org/show_bug.cgi?id=21987
Detlef Riekenberg wine.dev@web.de changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |wine-bugs@winehq.org
http://bugs.winehq.org/show_bug.cgi?id=21987
Detlef Riekenberg wine.dev@web.de changed:
What |Removed |Added ---------------------------------------------------------------------------- CC|wine-bugs@winehq.org |wine.dev@web.de
http://bugs.winehq.org/show_bug.cgi?id=21987
Anastasius Focht focht@gmx.net changed:
What |Removed |Added ---------------------------------------------------------------------------- Keywords| |Installer URL|http://www.adobe.com/produc |http://ardownload.adobe.com |ts/acrobatpro/tryreg.html |/pub/adobe/acrobat/win/7x/7 | |.0/misc/AcTR7EFG.exe CC| |focht@gmx.net Depends on| |18231 Summary|Acrobat 7 tryout complains: |Acrobat 7 tryout installer |This Postscript Driver or |complains: "This Postscript |Windows Platform (Win9x/Me) |Driver or Windows Platform |not supported |(Win9x/Me) not supported" | |(winspool.drv missing level | |8/global default printer | |settings handling)
--- Comment #1 from Anastasius Focht focht@gmx.net 2012-03-11 12:11:14 CDT --- Hello,
confirming, needs bug 18231 workaround as prerequisite (enable spooler service).
Relevant part of trace log:
--- snip --- 0026:trace:msi:MSI_ProcessMessage (nil) (nil) (nil) 0 100 L"Action 17:51:24: SetupPrinterDevMode. Customizing the Adobe PDF printer" ... 0026:trace:msi:ACTION_CustomAction Handling custom action L"SetupPrinterDevMode" (c41 L"AdobeIsf" L"SetupDeviceMode") ... 0026:trace:msi:HANDLE_CustomType1 Calling function L"SetupDeviceMode" from L"C:\users\focht\Temp\msid15b.tmp" ... 0040:Call winspool.drv.OpenPrinterA(019fe608 "Adobe PDF",019fe5f4,019fe5d4) ret=009f5364 ... 0040:fixme:winspool:OpenPrinterW PRINTER_DEFAULTS ignored => (null),(nil),0x000f000c ... 0040:Ret winspool.drv.OpenPrinterA() retval=00000001 ret=009f5364 0040:Call winspool.drv.SetPrinterDataA(00000001,009f9e54 "Protocol",00000004,019fe5e8,00000004) ret=009f538c 0040:Call advapi32.RegCreateKeyW(80000002,f71f1500 L"System\CurrentControlSet\Control\Print\Printers",019fe47c) ret=f71d844d 0040:Ret advapi32.RegCreateKeyW() retval=00000000 ret=f71d844d 0040:Call advapi32.RegOpenKeyW(00000130,00ed3740 L"Adobe PDF",019fe4d8) ret=f71d847a 0040:Ret advapi32.RegOpenKeyW() retval=00000000 ret=f71d847a 0040:Call advapi32.RegCloseKey(00000130) ret=f71d84f9 0040:Ret advapi32.RegCloseKey() retval=00000000 ret=f71d84f9 0040:Call advapi32.RegCreateKeyA(00000134,f71f2885 "PrinterDriverData",019fe4d4) ret=f71e75d2 0040:Ret advapi32.RegCreateKeyA() retval=00000000 ret=f71e75d2 0040:Call advapi32.RegSetValueExA(00000130,009f9e54 "Protocol",00000000,00000004,019fe5e8,00000004) ret=f71e7678 0040:Ret advapi32.RegSetValueExA() retval=00000000 ret=f71e7678 0040:Call advapi32.RegCloseKey(00000130) ret=f71e7689 0040:Ret advapi32.RegCloseKey() retval=00000000 ret=f71e7689 0040:Call advapi32.RegCloseKey(00000134) ret=f71e7697 0040:Ret advapi32.RegCloseKey() retval=00000000 ret=f71e7697 0040:Ret winspool.drv.SetPrinterDataA() retval=00000000 ret=009f538c ... 0040:Call winspool.drv.GetPrinterA(00000001,00000002,00000000,00000000,019fe5e4) ret=009f53d4 ... 0040:Ret winspool.drv.GetPrinterA() retval=00000000 ret=009f53d4 ... 0040:Call winspool.drv.GetPrinterA(00000001,00000002,00ed1920,000001de,019fe5e4) ret=009f53f3 0040:Call ntdll.RtlAllocateHeap(00110000,00000000,000001de) ret=f71e2e73 0040:Ret ntdll.RtlAllocateHeap() retval=00ed2ca8 ret=f71e2e73 0040:Call advapi32.RegCreateKeyW(80000002,f71f1500 L"System\CurrentControlSet\Control\Print\Printers",019fe474) ret=f71e28ca 0040:Ret advapi32.RegCreateKeyW() retval=00000000 ret=f71e28ca 0040:Call advapi32.RegOpenKeyW(00000130,00ed3740 L"Adobe PDF",019fe478) ret=f71e293d 0040:Ret advapi32.RegOpenKeyW() retval=00000000 ret=f71e293d ... 0040:Ret winspool.drv.GetPrinterA() retval=00000001 ret=009f53f3 0040:Call winspool.drv.SetPrinterA(00000001,00000002,00ed1920,00000000) ret=009f5407 0040:fixme:winspool:SetPrinterA (0x1,2,0xed1920,0): stub 0040:Ret winspool.drv.SetPrinterA() retval=00000000 ret=009f5407 0040:Call winspool.drv.ClosePrinter(00000001) ret=009f540f ... 0040:Call winspool.drv.GetPrinterA(00000001,00000008,00000000,00000000,019fe84c) ret=009f5608 0040:Call advapi32.RegCreateKeyW(80000002,f71f1500 L"System\CurrentControlSet\Control\Print\Printers",019fe4a4) ret=f71e28ca 0040:Ret advapi32.RegCreateKeyW() retval=00000000 ret=f71e28ca 0040:Call advapi32.RegOpenKeyW(00000130,00ed3740 L"Adobe PDF",019fe4a8) ret=f71e293d 0040:Ret advapi32.RegOpenKeyW() retval=00000000 ret=f71e293d 0040:fixme:winspool:GetPrinterW Unimplemented level 8 ... 0040:Ret winspool.drv.GetPrinterA() retval=00000000 ret=009f5608 ... 0040:Call winspool.drv.GetPrinterA(00000001,00000008,00ed16b8,00000000,019fe84c) ret=009f562a 0040:Call advapi32.RegCreateKeyW(80000002,f71f1500 L"System\CurrentControlSet\Control\Print\Printers",019fe4a4) ret=f71e28ca 0040:Ret advapi32.RegCreateKeyW() retval=00000000 ret=f71e28ca 0040:Call advapi32.RegOpenKeyW(00000130,00ed3740 L"Adobe PDF",019fe4a8) ret=f71e293d 0040:Ret advapi32.RegOpenKeyW() retval=00000000 ret=f71e293d 0040:fixme:winspool:GetPrinterW Unimplemented level 8 ... 0040:Ret winspool.drv.GetPrinterA() retval=00000000 ret=009f562a 0040:Call user32.MessageBoxA(00000000,009f9e60 "This Postscript Driver or Windows Platform (Win9x/Me) not supported",009f9ea4 "Setup Devmode",00000010) ret=009f5778 --- snip ---
Printer data under "HKLM\System\CurrentControlSet\Control\Print\Printers\Adobe PDF":
--- snip --- [HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Print\Printers\Adobe PDF] "Attributes"=dword:00000004 "Datatype"="RAW" "Default DevMode"=hex:41,64,6f,62,65,20,50,44,46,00,00,00,00,00,00,00,00,00,00,\ 00,00,00,00,00,00,00,00,00,00,00,00,00,0a,03,01,00,9c,00,08,00,13,7b,00,00,\ 01,00,09,00,9a,0b,33,08,64,00,01,00,07,00,00,00,02,00,01,00,00,00,03,00,00,\ 00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\ 00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\ 00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\ 00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00 "Description"="" "Location"="My Documents" "Name"="Adobe PDF" "Port"="My Documents\*.pdf" "Print Processor"="WinPrint" "Printer Driver"="Adobe PDF Converter" "Priority"=dword:00000000 "StartTime"=dword:00000000 "Status"=dword:00000000 "UntilTime"=dword:00000000
[HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Print\Printers\Adobe PDF\PrinterDriverData] "Protocol"=dword:00000000 --- snip ---
MSDN: http://msdn.microsoft.com/en-us/library/windows/desktop/dd144911%28v=vs.85%2...
The problem seems to be missing level 8/PRINTER_INFO_8 handling (global default printer settings).
MSDN: http://msdn.microsoft.com/en-us/library/windows/desktop/dd162851%28v=vs.85%2...
Wine source: http://source.winehq.org/git/wine.git/blob/915ddc4026f318e5665670d4b76930edf...
--- snip --- 3758 BOOL WINAPI GetPrinterW(HANDLE hPrinter, DWORD Level, LPBYTE pPrinter, 3759 DWORD cbBuf, LPDWORD pcbNeeded) 3760 { ... 3787 switch(Level) { ... 3902 default: 3903 FIXME("Unimplemented level %d\n", Level); 3904 SetLastError(ERROR_INVALID_LEVEL); 3905 RegCloseKey(hkeyPrinters); 3906 RegCloseKey(hkeyPrinter); 3907 return FALSE; 3908 } ... 3917 return ret; 3918 } --- snip ---
Adjusting download link (old one was busted).
$ du -sh AcTR7EFG.exe 116M AcTR7EFG.exe
$ sha1sum AcTR7EFG.exe 4f1ff389ea71f21d624083d65bbe5a74e4760079 AcTR7EFG.exe
$ wine --version wine-1.4-78-g94953f1
Regards
http://bugs.winehq.org/show_bug.cgi?id=21987
Bug 21987 depends on bug 18231, which changed state.
Bug 18231 Summary: Adobe Acrobat 7, 8 installers fail due to spooler service being disabled by default http://bugs.winehq.org/show_bug.cgi?id=18231
What |Old Value |New Value ---------------------------------------------------------------------------- Status|NEW |RESOLVED Resolution| |FIXED
http://bugs.winehq.org/show_bug.cgi?id=21987
André H. nerv@dawncrow.de changed:
What |Removed |Added ---------------------------------------------------------------------------- Fixed by SHA1| |c9fdc565e5753bf363943b2b1c8 | |8486334b00576 Status|NEW |RESOLVED CC| |nerv@dawncrow.de Resolution| |FIXED
--- Comment #2 from André H. nerv@dawncrow.de 2012-05-03 14:34:00 CDT --- should be fixed by http://source.winehq.org/git/wine.git/commitdiff/c9fdc565e5753bf363943b2b1c8...
please retest and reopen otherwise.
http://bugs.winehq.org/show_bug.cgi?id=21987
Anastasius Focht focht@gmx.net changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |REOPENED Resolution|FIXED |
--- Comment #3 from Anastasius Focht focht@gmx.net 2012-05-03 15:04:31 CDT --- Hello André,
sadly there is still a hole: W to A conversion for level 8 data
--- snip --- ... 0018:trace:winspool:GetPrinterW (0x1,8,0xc09fd8,232,0x17fe84c) 0018:Call advapi32.RegCreateKeyW(80000002,f72f1880 L"System\CurrentControlSet\Control\Print\Printers",017fe438) ret=f72d8906 0018:Ret advapi32.RegCreateKeyW() retval=00000000 ret=f72d8906 0018:Call advapi32.RegOpenKeyW(00001eb8,00be0dd8 L"Adobe PDF",017fe4bc) ret=f72d8930 0018:Ret advapi32.RegOpenKeyW() retval=00000000 ret=f72d8930 0018:Call advapi32.RegCloseKey(00001eb8) ret=f72d894e 0018:Ret advapi32.RegCloseKey() retval=00000000 ret=f72d894e 0018:Call advapi32.RegQueryValueExW(00001ec8,f72f1c20 L"Default DevMode",00000000,017fe404,00c09fdc,017fe408) ret=f72e1dbd 0018:Ret advapi32.RegQueryValueExW() retval=00000000 ret=f72e1dbd 0018:Call gdi32.GdiConvertToDevmodeW(00c09fdc) ret=f72e1e8a 0018:Ret gdi32.GdiConvertToDevmodeW() retval=00b6d410 ret=f72e1e8a 0018:Call ntdll.RtlFreeHeap(00110000,00000000,00b6d410) ret=f72e1ed0 0018:Ret ntdll.RtlFreeHeap() retval=00000001 ret=f72e1ed0 0018:Call advapi32.RegCloseKey(00001ec8) ret=f72e2f75 0018:Ret advapi32.RegCloseKey() retval=00000000 ret=f72e2f75 0018:trace:winspool:GetPrinterW returning 1 needed = 232 0018:trace:winspool:convert_printerinfo_W_to_A (0xc0b210, 0xc09fd8, 8, 232, 1) 0018:fixme:winspool:convert_printerinfo_W_to_A for level 8 0018:Call ntdll.RtlFreeHeap(00110000,00000000,00c09fd8) ret=f72e30cc 0018:Ret ntdll.RtlFreeHeap() retval=00000001 ret=f72e30cc 0018:Ret winspool.drv.GetPrinterA() retval=00000001 ret=0034562a 0018:Call user32.MessageBoxA(00000000,00349e60 "This Postscript Driver or Windows Platform (Win9x/Me) not supported",00349ea4 "Setup Devmode",00000010) ret=00345778 --- snip ---
Thanks for the work so far André
Regards
http://bugs.winehq.org/show_bug.cgi?id=21987
--- Comment #4 from André H. nerv@dawncrow.de 2012-05-03 15:45:36 CDT --- (In reply to comment #3)
Hello André,
sadly there is still a hole: W to A conversion for level 8 data
http://source.winehq.org/patches/data/86008
Thanks for the work so far André
np, it's too easy with your analysis :) especially when it's only telling me there's a fixme :D
http://bugs.winehq.org/show_bug.cgi?id=21987
--- Comment #5 from Anastasius Focht focht@gmx.net 2012-05-06 07:05:21 CDT --- Hello,
after commit: http://source.winehq.org/git/wine.git/commitdiff/0cf0c28d168ffdb084b6a28386c... the installer still shows the message.
--- snip --- 0015:Call winspool.drv.GetPrinterA(00000001,00000008,00d955d0,000000e8,019ee84c) ret=004d562a ... 0015:trace:winspool:GetPrinterW (0x1,8,0xd956c0,232,0x19ee84c) 0015:Call advapi32.RegCreateKeyW(80000002,f7218880 L"System\CurrentControlSet\Control\Print\Printers",019ee438) ret=f71ff906 ... 0015:trace:winspool:GetPrinterW returning 1 needed = 232 0015:trace:winspool:convert_printerinfo_W_to_A (0xd955d0, 0xd956c0, 8, 232, 1) 0015:trace:winspool:convert_printerinfo_W_to_A (8) #0 ... 0015:Call KERNEL32.WideCharToMultiByte(00000000,00000000,00d956c4 L"Adobe PDF",ffffffff,00d957b0,00000020,00000000,00000000) ret=f71fd6b2 0015:Ret KERNEL32.WideCharToMultiByte() retval=0000000a ret=f71fd6b2 ... 0015:Ret winspool.drv.GetPrinterA() retval=00000001 ret=004d562a ... 0015:Call user32.MessageBoxA(00000000,004d9e60 "This Postscript Driver or Windows Platform (Win9x/Me) not supported",004d9ea4 "Setup Devmode",00000010) ret=004d5778 --- snip ---
Debugging that custom action "SetupDeviceMode" reveals it expects private driver data to be returned.
Annotated code snippet from custom action dll (SetupDeviceMode -> CustomizeDevMode):
--- snip --- ... .text:004D55F3 cmp [ebp+var_40], ebx .text:004D55F6 lea eax, [ebp+pcbNeeded] .text:004D55F9 push eax ; pcbNeeded .text:004D55FA push ebx ; cbBuf .text:004D55FB push ebx ; pPrinter .text:004D55FC jnz short loc_4D562E .text:004D55FE push 8 ; Level .text:004D5600 push [ebp+hPrinter] ; hPrinter .text:004D5603 call GetPrinterA ; get required buffer size .text:004D5608 push [ebp+pcbNeeded] ; dwBytes .text:004D560B push 40h ; uFlags .text:004D560D call ds:GlobalAlloc .text:004D5613 mov edi, eax .text:004D5615 lea eax, [ebp+pcbNeeded] .text:004D5618 push eax ; pcbNeeded .text:004D5619 mov [ebp+pPrinter], edi .text:004D561C push [ebp+pcbNeeded] ; cbBuf .text:004D561F push edi ; pPrinter .text:004D5620 push 8 ; Level .text:004D5622 push [ebp+hPrinter] ; hPrinter .text:004D5625 call GetPrinterA ; get level 8 data .text:004D562A mov eax, [edi] .text:004D562C jmp short loc_4D565D ... .text:004D565D movzx edi, word ptr [eax+24h] ; dmSize .text:004D5661 add edi, eax ; offset to private area .text:004D5663 cmp word ptr [eax+22h], 500h ; dmDriverVersion > 0x500 .text:004D5669 mov [ebp+pDevModeInput], eax .text:004D566C jbe _error_driver_os_unsupp .text:004D5672 cmp edi, ebx .text:004D5674 jz _error_driver_os_unsupp .text:004D567A cmp word ptr [edi+96h], 10h ; priv_area+0x96 ?? .text:004D5682 jnz _error_driver_os_unsupp .text:004D5688 cmp dword ptr [edi], 'VIRP' ; priv_area+0: 'PRIV' .text:004D568E jnz _error_driver_os_unsupp --- snip ---
For the "dmDriverVersion" field it expects > 0x500. Next problems are fields in private driver data area. Apparently this isn't handled in registry yet.
There are a couple of FIXME's related to winspool, some of them seem harmless and some might contribute to failures.
--- snip --- 0015:Call winspool.drv.SetPrinterA(00000001,00000002,00d955d0,00000000) ret=004d5407 ... 0015:trace:winspool:SetPrinterW (0x1, 2, 0xd957b8, 0) ... 0015:fixme:winspool:SetPrinterW Unimplemented level 2 ... 0015:Ret winspool.drv.SetPrinterA() retval=00000000 ret=004d5407 ... --- snip ---
Regards
http://bugs.winehq.org/show_bug.cgi?id=21987
André H. nerv@dawncrow.de changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|REOPENED |NEW CC| |huw@codeweavers.com
--- Comment #6 from André H. nerv@dawncrow.de 2012-05-07 13:13:18 CDT --- (In reply to comment #5)
Hello,
after commit: http://source.winehq.org/git/wine.git/commitdiff/0cf0c28d168ffdb084b6a28386c... the installer still shows the message.
damn
.text:004D567A cmp word ptr [edi+96h], 10h ; priv_area+0x96 ??
this looks really strange, maybe a third DEVMOD structure?
For the "dmDriverVersion" field it expects > 0x500.
I wonder if it get's it from WINSPOOL_GetDefaultDevMode (dmDriverVersion = 1;)
Next problems are fields in private driver data area. Apparently this isn't handled in registry yet.
That's something for Huw or Detlef i'd say. CCed...
http://bugs.winehq.org/show_bug.cgi?id=21987
--- Comment #7 from Huw Davies huw@codeweavers.com 2012-05-08 03:44:26 CDT --- I'd imagine we need the level 2 SetPrinter. That's where the default devmode would be set.
http://bugs.winehq.org/show_bug.cgi?id=21987
--- Comment #8 from André H. nerv@dawncrow.de 2012-05-11 12:04:24 CDT --- (In reply to comment #7)
I'd imagine we need the level 2 SetPrinter. That's where the default devmode would be set.
http://source.winehq.org/git/wine.git/commitdiff/7508a5d4b2d5246ea9c19afd734...
http://bugs.winehq.org/show_bug.cgi?id=21987
--- Comment #9 from Anastasius Focht focht@gmx.net 2012-05-12 16:29:39 CDT --- Hello,
even with level 2 SetPrinter implemented the installer still shows the error message.
The current "Adobe PDF" printer Wine registry export:
--- snip --- REGEDIT4
[HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Print\Printers\Adobe PDF] "Attributes"=dword:00001004 "Datatype"="RAW" "Default DevMode"=hex:41,64,6f,62,65,20,50,44,46,00,00,00,00,00,00,00,00,00,00,\ 00,00,00,00,00,00,00,00,00,00,00,00,00,0a,03,01,00,9c,00,08,00,13,7b,00,00,\ 01,00,09,00,9a,0b,33,08,64,00,01,00,07,00,00,00,02,00,01,00,00,00,03,00,00,\ 00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\ 00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\ 00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\ 00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00 "Default Priority"=dword:00000000 "Description"="" "Location"="My Documents" "Name"="Adobe PDF" "Port"="My Documents\*.pdf" "Print Processor"="WinPrint" "Printer Driver"="Adobe PDF Converter" "Priority"=dword:00000000 "StartTime"=dword:00000000 "Status"=dword:00000000 "UntilTime"=dword:00000000
[HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Print\Printers\Adobe PDF\PrinterDriverData] "Protocol"=dword:00000000 --- snip ---
Maybe someone can export/dump this registry part from Acrobat 7 tryout install on Windows to compare against.
The private driver-specific data which ought to be returned by printer level 8 query is included in "Default DevMode" data that's for sure.
The current "private" data in Wine registry actually comes from "wineps.drv" defaults:
--- snip --- =>0 0xf71e037a SetPrinterW(printer=0x1, level=0x9, data="...", command=0) [/home/focht/projects/wine/wine-git/dlls/winspool.drv/info.c:2918] in winspool (0x019fb888)
1 0xf6b141d5 PSDRV_FindPrinterInfo+0x41e(name="Adobe PDF") [/home/focht/projects/wine/wine-git/dlls/wineps.drv/init.c:740] in wineps (0x019fbb18)
2 0xf6b12969 PSDRV_CreateDC+0xaf(pdev=0x11a884, driver="wineps.drv", device="Adobe PDF", output="LPT1:", initData=(nil)) [/home/focht/projects/wine/wine-git/dlls/wineps.drv/init.c:294] in wineps (0x019fbb78)
3 0x7e808687 CreateDCW+0x251(driver="wineps.drv", device="Adobe PDF", output="LPT1:", initData=(nil)) [/home/focht/projects/wine/wine-git/dlls/gdi32/dc.c:595] in gdi32 (0x019fbe58)
4 0x7e808838 CreateDCA+0xdc(driver="wineps.drv", device="Adobe PDF", output="LPT1:", initData=(nil)) [/home/focht/projects/wine/wine-git/dlls/gdi32/dc.c:641] in gdi32 (0x019fbea8)
5 0x7e8088d0 CreateICA+0x31(driver="wineps.drv", device="Adobe PDF", output="LPT1:", initData=(nil)) [/home/focht/projects/wine/wine-git/dlls/gdi32/dc.c:658] in gdi32 (0x019fbec8)
6 0x7e83383b GDI_CallExtDeviceMode16+0x196(hwnd=(nil), lpdmOutput=(nil), lpszDevice="Adobe PDF", lpszPort="LPT1:", lpdmInput=(nil), lpszProfile=0x0(nil), fwMode=0) [/home/focht/projects/wine/wine-git/dlls/gdi32/driver.c:1030] in gdi32 (0x019fc508)
7 0xf71dcc2e DocumentPropertiesA+0x1e8(hWnd=(nil), hPrinter=0x0(nil), pDeviceName="Adobe PDF", pDevModeOutput=(nil), pDevModeInput=(nil), fMode=0) [/home/focht/projects/wine/wine-git/dlls/winspool.drv/info.c:1840] in winspool (0x019fc578)
8 0xf71dcdc7 DocumentPropertiesW+0x156(hWnd=(nil), hPrinter=0x0(nil), pDeviceName="Adobe PDF", pDevModeOutput=(nil), pDevModeInput=(nil), fMode=0) [/home/focht/projects/wine/wine-git/dlls/winspool.drv/info.c:1873] in winspool (0x019fc5e8)
9 0xf71df4f4 AddPrinterW+0x60c(pName=0x0(nil), Level=0x2, pPrinter="") [/home/focht/projects/wine/wine-git/dlls/winspool.drv/info.c:2666] in winspool (0x019fc6b8)
10 0xf71dfb02 AddPrinterA+0x12d(pName=0x0(nil), Level=0x2, pPrinter="") [/home/focht/projects/wine/wine-git/dlls/winspool.drv/info.c:2742] in winspool (0x019fc718)
11 0x004e1e3a in msi3446.tmp (+0x1e39) (0x019fc794) 12 0x004e51b9 in msi3446.tmp (+0x51b8) (0x019fe7ec) 13 0x004e2f71 in msi3446.tmp (+0x2f70) (0x00dd8b80) --- snip ---
Maybe the way DocumentPropertiesA/W is implemented skips Adobe PS driver (which might provide this private data)?
Regards
http://bugs.winehq.org/show_bug.cgi?id=21987
Matthew S cstapltn@memphis.edu changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |cstapltn@memphis.edu
--- Comment #10 from Matthew S cstapltn@memphis.edu --- I am wondering if this Bug was resolved and if so how it was resolved. I have a similar problem. When installing Acrobat 7.0 the installation almost completes and then I get this error message: "This Postscript Driver or Windows Platform (Win9x/Me) not supported."
Thanks
https://bugs.winehq.org/show_bug.cgi?id=21987
Ken Sharp imwellcushtymelike@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Severity|enhancement |minor
--- Comment #11 from Ken Sharp imwellcushtymelike@gmail.com --- Please retest in Wine 1.7.47 or later.
https://bugs.winehq.org/show_bug.cgi?id=21987
super_man@post.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |00cpxxx@gmail.com, | |super_man@post.com
--- Comment #12 from super_man@post.com --- My sh1sum matches. 4f1ff389ea71f21d624083d65bbe5a74e4760079
I am unable to see any popup complaining something. I installed all default.
wine 1.9.12-git.
https://bugs.winehq.org/show_bug.cgi?id=21987
--- Comment #13 from André H. nerv@dawncrow.de --- (In reply to super_man from comment #12)
My sh1sum matches. 4f1ff389ea71f21d624083d65bbe5a74e4760079
I am unable to see any popup complaining something. I installed all default.
wine 1.9.12-git.
So it is fixed, great...
Could you please revert those commits to see what helped: 7508a5d4b2d5246ea9c19afd734274d12ca4b5bc aa0cc00b48c458d02d3a069a92da8a358f97efdd or try a git bisect if you have some time
https://bugs.winehq.org/show_bug.cgi?id=21987
fjfrackiewicz@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |fjfrackiewicz@gmail.com
--- Comment #14 from fjfrackiewicz@gmail.com --- Looks like this patchset may have fixed the problem:
https://github.com/wine-compholio/wine-staging/blob/9a5c013ea881cb83326e6c22...
https://bugs.winehq.org/show_bug.cgi?id=21987
--- Comment #15 from super_man@post.com --- (In reply to fjfrackiewicz from comment #14)
Looks like this patchset may have fixed the problem:
https://github.com/wine-compholio/wine-staging/blob/ 9a5c013ea881cb83326e6c2216deb4fb139a01b1/patches/winspool.drv-SetPrinterW/ 0001-winspool.drv-Add-case-8-for-SetPrinterW.patch
But that never was sent upstream?
https://bugs.winehq.org/show_bug.cgi?id=21987
--- Comment #16 from fjfrackiewicz@gmail.com --- (In reply to super_man from comment #15)
(In reply to fjfrackiewicz from comment #14)
Looks like this patchset may have fixed the problem:
https://github.com/wine-compholio/wine-staging/blob/ 9a5c013ea881cb83326e6c2216deb4fb139a01b1/patches/winspool.drv-SetPrinterW/ 0001-winspool.drv-Add-case-8-for-SetPrinterW.patch
But that never was sent upstream?
I am not sure, I can't read code all that well but I did find this when talking about level 8:
http://source.winehq.org/git/wine.git/commitdiff/0cf0c28d168ffdb084b6a28386c...
and
http://source.winehq.org/git/wine.git/commitdiff/c9fdc565e5753bf363943b2b1c8...
https://bugs.winehq.org/show_bug.cgi?id=21987
--- Comment #17 from André H. nerv@dawncrow.de --- The Problems with SetPrinterW in this bug report were about missing level 2 support, level 8 was never mentioned together with that function here
https://bugs.winehq.org/show_bug.cgi?id=21987
--- Comment #18 from Jeff Zaroyko jeffz@jeffz.name --- Still present wine-4.21.
https://bugs.winehq.org/show_bug.cgi?id=21987
Anastasius Focht focht@gmx.net changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED Resolution|--- |FIXED Component|-unknown |spooler Fixed by SHA1|c9fdc565e5753bf363943b2b1c8 |7508a5d4b2d5246ea9c19afd734 |8486334b00576 |274d12ca4b5bc URL|http://ardownload.adobe.com |https://web.archive.org/web |/pub/adobe/acrobat/win/7x/7 |/20061114115407/http://ardo |.0/misc/AcTR7EFG.exe |wnload.adobe.com/pub/adobe/ | |acrobat/win/7x/7.0/misc/AcT | |R7EFG.exe
--- Comment #19 from Anastasius Focht focht@gmx.net --- Hello folks,
the level 8/2 handling was implemented a while ago.
* https://source.winehq.org/git/wine.git/commit/c9fdc565e5753bf363943b2b1c8848... ("winspool.drv: Support printer info level 8.")
* https://source.winehq.org/git/wine.git/commitdiff/7508a5d4b2d5246ea9c19afd73... ("winspool: Implement SetPrinterW for level 2.").
Part of Wine 1.5.10 release.
Thanks André
Although the error message is still the same, the current problem is much deeper into print system architecture/implementation. I already touched it briefly in comment #9.
Adobe PDF Port/Printer driver installation is taking place in 'CreateAdobePDFPrinter' custom action:
--- snip --- $ WINEDEBUG=+seh,+relay,+msi,+winspool,+reg wine ./setup.exe >>log.txt 2>&1 ... 01b0:trace:msi:ACTION_CustomAction Handling custom action L"CreateAdobePDFPrinter" (c41 L"AdobeIsf" L"SetupAdobePDFPrinter") ... 01b0:trace:msi:HANDLE_CustomType1 Calling function L"SetupAdobePDFPrinter" from L"C:\users\focht\Temp\msi48b7.tmp" ... 02f8:Ret PE DLL (proc=0160618A,module=01600000 L"msi48b7.tmp",reason=PROCESS_ATTACH,res=00000000) retval=1 ... 02f8:Ret KERNEL32.LoadLibraryW() retval=01600000 ret=100210f6 02f8:Call KERNEL32.GetProcAddress(01600000,0016df28 "SetupAdobePDFPrinter") ret=1002110a 02f8:Ret KERNEL32.GetProcAddress() retval=01602bea ret=1002110a ... 02f8:Call winspool.drv.AddPrinterDriverA(00000000,00000003,015edbbc) ret=01601d03 02f8:trace:winspool:AddPrinterDriverA ((null), 3, 0x15edbbc) 02f8:trace:winspool:AddPrinterDriverExA ((null), 3, 0x15edbbc, 0x8) 02f8:Call KERNEL32.MultiByteToWideChar(00000000,00000000,015eeae5 "Adobe PDF Converter",ffffffff,00000000,00000000) ret=7c6dd853 02f8:Ret KERNEL32.MultiByteToWideChar() retval=00000014 ret=7c6dd853 ... 02f8:Call advapi32.RegCreateKeyW(80000002,0018e3c0 L"System\CurrentControlSet\control\Print\Environments\Windows NT x86\Drivers\Version-3",015ece84) ret=01616005 ... 02f8:Call KERNEL32.LoadLibraryW(015ece84 L"C:\windows\system32\spool\drivers\w32x86\3\Ps5ui.dll") ret=0161667f ... 02f8:Ret KERNEL32.LoadLibraryW() retval=00000000 ret=0161667f 02f8:Call KERNEL32.GetProcAddress(00000000,0161b9f0 "DrvDriverEvent") ret=016166eb 02f8:Ret KERNEL32.GetProcAddress() retval=00000000 ret=016166eb ... 02f8:trace:winspool:AddPrinterDriverExA got 1 with 6 ... 02f8:trace:winspool:AddPrinterDriverExA => 1 with 6 02f8:Ret winspool.drv.AddPrinterDriverA() retval=00000001 ret=01601d03 ... 02f8:Call winspool.drv.EnumPrintersA(00000002,00000000,00000002,017b7d98,00001000,015edb70,015edb74) ret=01601e7f 02f8:trace:winspool:EnumPrintersA (0x2, (null), 2, 0x17b7d98, 4096, 0x15edb70, 0x15edb74) ... 02f8:Call advapi32.RegCreateKeyW(80000002,7c6e7360 L"System\CurrentControlSet\Control\Print\Printers",015ed860) ret=7c6d1a89 ... 02f8:trace:winspool:WINSPOOL_EnumPrintersW Found 0 printers ... 02f8:trace:winspool:convert_printerinfo_W_to_A (0x17b7d98, 0x194ae0, 2, 0, 0) ... 02f8:Ret winspool.drv.EnumPrintersA() retval=00000001 ret=01601e7f ... 02f8:Call winspool.drv.AddPrinterA(00000000,00000002,015edb8c) ret=01601e3a 02f8:trace:winspool:AddPrinterA ((null), 2, 0x15edb8c) 02f8:Call ntdll.RtlAllocateHeap(00110000,00000000,00000054) ret=7c6ced8b 02f8:Ret ntdll.RtlAllocateHeap() retval=0017fec8 ret=7c6ced8b 02f8:Call ntdll.RtlCreateUnicodeStringFromAsciiz(015edad8,015edc14 "Adobe PDF") ret=7c6cee3e 02f8:Ret ntdll.RtlCreateUnicodeStringFromAsciiz() retval=0017db01 ret=7c6cee3e 02f8:Call ntdll.RtlCreateUnicodeStringFromAsciiz(015edad8,015eebe5 "My Documents\*.pdf") ret=7c6cee7e 02f8:Ret ntdll.RtlCreateUnicodeStringFromAsciiz() retval=00177301 ret=7c6cee7e 02f8:Call ntdll.RtlCreateUnicodeStringFromAsciiz(015edad8,015eeae5 "Adobe PDF Converter") ret=7c6cee9e 02f8:Ret ntdll.RtlCreateUnicodeStringFromAsciiz() retval=0017ff01 ret=7c6cee9e 02f8:Call ntdll.RtlCreateUnicodeStringFromAsciiz(015edad8,017b7958 "") ret=7c6ceebe 02f8:Ret ntdll.RtlCreateUnicodeStringFromAsciiz() retval=0018ba01 ret=7c6ceebe 02f8:Call ntdll.RtlCreateUnicodeStringFromAsciiz(015edad8,017b7a68 "My Documents") ret=7c6ceede 02f8:Ret ntdll.RtlCreateUnicodeStringFromAsciiz() retval=0016df01 ret=7c6ceede 02f8:Call ntdll.RtlCreateUnicodeStringFromAsciiz(015edad8,015ee764 "WinPrint") ret=7c6cef34 02f8:Ret ntdll.RtlCreateUnicodeStringFromAsciiz() retval=00182901 ret=7c6cef34 02f8:Call ntdll.RtlCreateUnicodeStringFromAsciiz(015edad8,015ee744 "RAW") ret=7c6cef54 02f8:Ret ntdll.RtlCreateUnicodeStringFromAsciiz() retval=00182901 ret=7c6cef54 02f8:trace:winspool:AddPrinterW ((null),2,0x17fec8) ... 02f8:trace:winspool:WINSPOOL_OpenDriverReg ((null)) 02f8:trace:winspool:validate_envW testing (null) ... 02f8:Call advapi32.RegCreateKeyW(000000ec,0017dba0 L"Adobe PDF",015edab0) ret=7c6dca9d ... 02f8:trace:winspool:set_devices_and_printerports (0x17fec8) L"Adobe PDF" ... 02f8:trace:winspool:set_devices_and_printerports using L"wineps.drv,My Documents\*.pdf" ... 02f8:trace:winspool:DocumentPropertiesW ((nil),(nil),L"Adobe PDF",(nil),(nil),0) 02f8:trace:winspool:DocumentPropertiesA ((nil),(nil),Adobe PDF,(nil),(nil),0) ... 02f8:trace:winspool:WINSPOOL_GetDevModeFromReg corrupted registry for L"Default DevMode" ( size 0) ... 02f8:Call winspool.drv.GetPrinterDriverW(00000001,00000000,00000002,00000000,00000000,015ecf60) ret=01cca826 02f8:trace:winspool:GetPrinterDriverW (0x1,(null),2,(nil),0,0x15ecf60) 02f8:trace:winspool:validate_envW testing (null) ... --- snip ---
--- snip --- 01611E15 | or dword ptr ss:[ebp-28],4 01611E19 | cmp word ptr ds:[edi],bx 01611E1C | jne msi7163.1611E27 01611E1E | cmp dword ptr ds:[edi+C],esi 01611E21 | jne msi7163.1611E27 01611E23 | or byte ptr ss:[ebp-27],4 01611E27 | push esi 01611E28 | call dword ptr ds:[&_RtlSetLastWin32Error@4] 01611E2E | lea eax,dword ptr ss:[ebp-5C] 01611E31 | push eax ; pDriverInfo 01611E32 | push 2 ; level 01611E34 | push esi ; "" 01611E35 | call msi7163.1615F64 ; winspool.drv.AddPrinterA 01611E3A | mov ecx,dword ptr ss:[ebp+8] 01611E3D | pop edi 01611E3E | mov dword ptr ds:[ecx+A5C],eax 01611E44 | xor ecx,ecx 01611E46 | cmp eax,esi 01611E48 | pop esi 01611E49 | setne cl 01611E4C | mov eax,ecx 01611E4E | pop ebx 01611E4F | leave 01611E50 | ret 4 --- snip ---
'pDriverInfo'
--- snip --- 015EDBF4 00000000 .... 015EDBF8 015EDC7C |Ü^. ; "Adobe PDF" 015EDBFC 00000000 .... ; pShareName 015EDC00 015EEC4D Mì^. ; pPortName = "My Documents\*.pdf" 015EDC04 015EEB4D Më^. ; pDriverName = "Adobe PDF Converter" 015EDC08 018C7958 Xy.. ; pComment = "" 015EDC0C 018C7A68 hz.. ; pLocation = "My Documents" 015EDC10 00000000 .... ; pDevMode = NULL 015EDC14 00000000 .... ; pSepFile = NULL 015EDC18 015EE7CC Ìç^. ; pPrintProcessor = "WinPrint" 015EDC1C 015EE7AC ¬ç^. ; pDatatype = "RAW" 015EDC20 00000000 .... 015EDC24 00000000 .... 015EDC28 00000004 .... ; Attributes 015EDC2C 00000000 .... 015EDC30 00000000 .... 015EDC34 00000000 .... 015EDC38 00000000 .... 015EDC3C 00000000 .... 015EDC40 00000000 .... 015EDC44 00000000 .... --- snip ---
The private devmode registry data gets added somewhere along the printer driver installation. I don't think it makes sense to continue here, recycling the ticket again.
You could create a follow-up ticket. But there is a caveat: Adobe Acrobat 7.x PDF printer driver installation doesn't even work on modern Windows versions (Vista+) as documented in Adobe KB/Community forums:
https://community.adobe.com/t5/acrobat-sdk/warning-20225-adobe-acrobat7-0-wa...
===
Tidbit: While researching Windows print system architecture I rediscovered:
https://docs.microsoft.com/en-us/openspecs/windows_protocols/ms-rprn/d42db7d...
https://winprotocoldoc.blob.core.windows.net/productionwindowsarchives/MS-RP... ("[MS-RPRN]: Print System Remote Protocol")
Related:
https://source.winehq.org/git/wine.git/blob/784cb2060ab63076adc349dcb1d15a6c...
--- snip --- 59 /****************************************************************************** 60 * load_backend [internal] 61 * 62 * load and init our backend (the local printprovider: "localspl.dll") 63 * 64 * PARAMS 65 * 66 * RETURNS 67 * Success: TRUE 68 * Failure: FALSE and RPC_S_SERVER_UNAVAILABLE 69 * 70 * NOTES 71 * In windows, winspool.drv use RPC to interact with the spooler service 72 * (spoolsv.exe with spoolss.dll) and the spooler router (spoolss.dll) interact 73 * with the correct printprovider (localspl.dll for the local system) 74 * 75 */ --- snip ---
I imagine this could be a candidate for a Google Summer of Code (GSoC) topic.
===
$ sha1sum AcTR7EFG.exe 4f1ff389ea71f21d624083d65bbe5a74e4760079 AcTR7EFG.exe
$ du -sh AcTR7EFG.exe 116M AcTR7EFG.exe
$ wine --version wine-6.0-rc4
Regards
https://bugs.winehq.org/show_bug.cgi?id=21987
Alexandre Julliard julliard@winehq.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |CLOSED
--- Comment #20 from Alexandre Julliard julliard@winehq.org --- Closing bugs fixed in 6.0-rc5.