[Bug 28663] Multiple Adobe products fail due to improper file type and protocol associations handling (Adobe Reader X online help, Adobe AIR installers)

wine-bugs at winehq.org wine-bugs at winehq.org
Sun Apr 7 12:55:21 CDT 2013


http://bugs.winehq.org/show_bug.cgi?id=28663

Anastasius Focht <focht at gmx.net> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
            Summary|Adobe Reader X online help  |Multiple Adobe products
                   |fails to load due to        |fail due to improper file
                   |IQueryAssociations::GetStri |type and protocol
                   |ng not properly handling    |associations handling
                   |URL protocols               |(Adobe Reader X online
                   |                            |help, Adobe AIR installers)

--- Comment #5 from Anastasius Focht <focht at gmx.net> 2013-04-07 12:55:21 CDT ---
Hello folks,

ping.
The whole thing is not limited to protocols, queries for Adobe products file
type handlers using shlwapi.AssocQueryStringW() also fail.

This blocks Adobe AIR-based apps, for example "Amazon Music Importer".
Easy to reproduce, just install Adobe AIR and run the app installer as follows
(no actual AIR app needed):

--- snip ---
$ pwd
/home/focht/.wine/drive_c/Program Files/Adobe/Flash
Player/AddIns/airappinstaller

$ wine ./airappinstaller.exe /?
--- snip ---

Trace log:

--- snip ---
0024:Starting process L"C:\\Program Files\\Adobe\\Flash
Player\\AddIns\\airappinstaller\\airappinstaller.exe" (entryproc=0x401188)
0024:Call KERNEL32.GetCommandLineW() ret=0040105c
0024:Ret  KERNEL32.GetCommandLineW() retval=00115240 ret=0040105c
0024:Call KERNEL32.lstrlenW(001152e0 L" /?") ret=0040109a
0024:Ret  KERNEL32.lstrlenW() retval=00000003 ret=0040109a
0024:Call
shlwapi.AssocQueryStringW(00000000,00000002,0040351c,00000000,00000000,0032fe14)
ret=004010d9
0024:trace:shell:AssocQueryStringW
(0x0,2,L"AIR.InstallerPackage",(null),(nil),0x32fe14)
0024:trace:shell:AssocCreate
({a07034fd-6caa-4954-ac3f-97a27216f98a},{c46ca590-3c3f-11d2-bee6-0000f805ca57},0x32fcc0) 
...
0024:trace:shell:IQueryAssociations_fnInit
(0x135ee8)->(0,L"AIR.InstallerPackage",(nil),(nil))
0024:Call advapi32.RegOpenKeyExW(80000000,0040351c
L"AIR.InstallerPackage",00000000,00020019,00135ef0) ret=7e4225c5
0024:Ret  advapi32.RegOpenKeyExW() retval=00000000 ret=7e4225c5
0024:trace:shell:IQueryAssociations_fnGetString (0x135ee8,0x       0,0x      
2,(null),(nil),0x32fe14)
0024:Call
advapi32.RegQueryValueExW(00000058,00000000,00000000,00000000,00000000,0032f830)
ret=7e4226d6
0024:Ret  advapi32.RegQueryValueExW() retval=00000000 ret=7e4226d6
0024:Call ntdll.RtlAllocateHeap(00110000,00000000,00000024) ret=7e42272a
0024:Ret  ntdll.RtlAllocateHeap() retval=00135f00 ret=7e42272a
0024:Call
advapi32.RegQueryValueExW(00000058,00000000,00000000,00000000,00135f00,0032f830)
ret=7e422777
0024:Ret  advapi32.RegQueryValueExW() retval=00000000 ret=7e422777
0024:Call advapi32.RegOpenKeyExW(80000000,00135f00 L"Installer
Package",00000000,00020019,0032f894) ret=7e422850
0024:Ret  advapi32.RegOpenKeyExW() retval=00000002 ret=7e422850
...
0024:trace:shell:IQueryAssociations_fnRelease (0x135ee8)->(ref before=1)
0024:trace:shell:IQueryAssociations_fnRelease Destroying IQueryAssociations
(0x135ee8)
...
0024:trace:shell:SHFree 0x135ee8
...
0024:Ret  shlwapi.AssocQueryStringW() retval=80070002 ret=004010d9
...
0024:Call user32.MessageBoxW(00000000,00403210 L"Something went wrong trying to
install this application.\nPlease install the latest version of Adobe AIR
from\nhttp://www.adobe.com/go/getair and then try again.",00403548 L"Adobe
AIR",00000030) ret=004011b1 
--- snip ---

Registry export:

--- snip ---
REGEDIT4

[HKEY_CLASSES_ROOT\AIR.InstallerPackage]
@="Installer Package"

[HKEY_CLASSES_ROOT\AIR.InstallerPackage\DefaultIcon]
@="C:\\PROG~FBU\\COMM~CP1\\ADOB~553\\Versions\\1.0\\ADOB~DWN.EXE,1"

[HKEY_CLASSES_ROOT\AIR.InstallerPackage\shell]

[HKEY_CLASSES_ROOT\AIR.InstallerPackage\shell\open]
@="Install"

[HKEY_CLASSES_ROOT\AIR.InstallerPackage\shell\open\command]
@="C:\\PROG~FBU\\COMM~CP1\\ADOB~553\\Versions\\1.0\\ADOB~DWN.EXE \"%1\""
--- snip ---

Setting default key to "AIR.InstallerPackage" works around for AIR installers
but it's Wine code that needs to be fixed.

Source:
http://source.winehq.org/git/wine.git/blob/bf0c67c3220bbbf527316ff1384e25f00f79d843:/dlls/shell32/assoc.c#l243

Refining summary as this affects more apps.

$ wine --version
wine-1.5.27-200-g8b28893

Regards

-- 
Configure bugmail: http://bugs.winehq.org/userprefs.cgi?tab=email
Do not reply to this email, post in Bugzilla using the
above URL to reply.
------- You are receiving this mail because: -------
You are watching all bug changes.



More information about the wine-bugs mailing list