[Bug 37818] Monopolie 0.9.7 (VB6 game) crashes on the first buy (missing OLE1 '{0003000d-0000-0000-c000-000000000046}' Sound class registry data)
wine-bugs at winehq.org
wine-bugs at winehq.org
Thu Jan 1 13:02:16 CST 2015
https://bugs.winehq.org/show_bug.cgi?id=37818
Anastasius Focht <focht at gmx.net> changed:
What |Removed |Added
----------------------------------------------------------------------------
Keywords| |download
Status|UNCONFIRMED |NEW
URL| |http://skylink.dl.sourcefor
| |ge.net/project/monopolie/Mo
| |nopolie/Monopolie%200.9.7/m
| |onopolie0.9.7-installer.exe
CC| |focht at gmx.net
Summary|Monopolie 0.9.7 crashes on |Monopolie 0.9.7 (VB6 game)
|the first buy |crashes on the first buy
| |(missing OLE1
| |'{0003000d-0000-0000-c000-0
| |00000000046}' Sound class
| |registry data)
Ever confirmed|0 |1
--- Comment #1 from Anastasius Focht <focht at gmx.net> ---
Hello folks,
confirming.
Prerequisite: 'winetricks -q comctl32ocx'
That VB6 based game is very old, possibly from Win9X era.
It makes use of several outdated/superseded OLE1 classes which are not present
in Wine.
Basically stuff in '{0003xxxx-0000-0000-C000-000000000046}' range.
--- snip ---
$ pwd
/home/focht/.wine/drive_c/Program Files/Monopolie
$ WINEDEBUG=+tid,+seh,+relay,+ole,+variant wine ./Monopolie\ 0.9.7.exe
>>log.txt 2>&1
...
0023:trace:ole:CoCreateInstance (rclsid={0003000d-0000-0000-c000-000000000046},
pUnkOuter=(nil), dwClsContext=00000014,
riid={00000112-0000-0000-c000-000000000046}, ppv=0x17c51c)
0023:trace:ole:CoGetTreatAsClass
({0003000d-0000-0000-c000-000000000046},0x33ce98)
0023:Call ntdll.RtlInitUnicodeString(0033cce0,0033cd32
L"CLSID\\{0003000D-0000-0000-C000-000000000046}") ret=7e94c764
0023:Ret ntdll.RtlInitUnicodeString() retval=0033cce0 ret=7e94c764
0023:Call ntdll.NtOpenKey(0033cd2c,00020019,0033cce8) ret=7e94c780
0023:Ret ntdll.NtOpenKey() retval=c0000034 ret=7e94c780
0023:Call ntdll.RtlNtStatusToDosError(c0000034) ret=7e94c78b
0023:Ret ntdll.RtlNtStatusToDosError() retval=00000002 ret=7e94c78b
0023:trace:ole:CoGetClassObject CLSID:
{0003000d-0000-0000-c000-000000000046},IID:
{00000001-0000-0000-c000-000000000046}
0023:trace:ole:RPC_GetLocalClassObject
rclsid={0003000d-0000-0000-c000-000000000046},
iid={00000001-0000-0000-c000-000000000046}
0023:trace:ole:RPC_GetLocalClassObject waiting for
L"\\\\.\\pipe\\{0003000D-0000-0000-C000-000000000046}"
0023:Call KERNEL32.WaitNamedPipeW(0033cbf8
L"\\\\.\\pipe\\{0003000D-0000-0000-C000-000000000046}",ffffffff) ret=7e9915bf
0023:Ret KERNEL32.WaitNamedPipeW() retval=00000000 ret=7e9915bf
0023:Call KERNEL32.CreateFileW(0033cbf8
L"\\\\.\\pipe\\{0003000D-0000-0000-C000-000000000046}",c0000000,00000000,00000000,00000003,00000000,00000000)
ret=7e991600
0023:Ret KERNEL32.CreateFileW() retval=ffffffff ret=7e991600
0023:trace:ole:create_local_service Attempting to start Local service for
{0003000d-0000-0000-c000-000000000046}
...
0023:err:ole:create_server class {0003000d-0000-0000-c000-000000000046} not
registered
0023:fixme:ole:CoGetClassObject CLSCTX_REMOTE_SERVER not supported
0023:err:ole:CoGetClassObject no class object
{0003000d-0000-0000-c000-000000000046} could be created for context 0x14
0023:Ret ole32.OleRun() retval=80040154 ret=734c91f2
...
--- snip ---
CLSID '{0003000D-0000-0000-C000-000000000046}' is 'SoundRec' OLE1 class.
I found more or less conflicting information since the original OLE1 CLSID is
not to be directly used but substituted ('TreatAs' attribute).
Depending on Windows version used you end up with different CLSIDs.
http://camas.comodo.com/cgi-bin/submit?file=8c76de1f01099579e73a6a0a032aeaf07323241864df7153ccbaef75cf82d9ab
(Windows 2k/XP?)
--- snip ---
LM\Software\Classes\ClsId\{0003000D-0000-0000-C000-000000000046}\ REG_SZ
12 "Sound"
LM\Software\Classes\ClsId\{0003000D-0000-0000-C000-000000000046}\Insertable\
REG_SZ 2 ""
LM\Software\Classes\ClsId\{0003000D-0000-0000-C000-000000000046}\Ole1Class\
REG_SZ 18 "SoundRec"
LM\Software\Classes\ClsId\{0003000D-0000-0000-C000-000000000046}\ProgID\
REG_SZ 18 "SoundRec"
LM\Software\Classes\ClsId\{0003000D-0000-0000-C000-000000000046}\TreatAs\
REG_SZ 78 "{00020C01-0000-0000-C000-000000000046}"
--- snip ---
The substitution CLSID is not present in Wine:
http://camas.comodo.com/cgi-bin/submit?file=8c76de1f01099579e73a6a0a032aeaf07323241864df7153ccbaef75cf82d9ab
--- snip ---
LM\Software\Classes\ClsId\{00020C01-0000-0000-C000-000000000046}\ REG_SZ
26 "Sound (OLE2)"
LM\Software\Classes\ClsId\{00020C01-0000-0000-C000-000000000046}\AuxUserType\2\
REG_SZ 48 "Sound Recorder Document"
LM\Software\Classes\ClsId\{00020C01-0000-0000-C000-000000000046}\AuxUserType\3\
REG_SZ 64 "Microsoft Sound Recorder Server"
LM\Software\Classes\ClsId\{00020C01-0000-0000-C000-000000000046}\DataFormats\DefaultFile\
REG_SZ 6 "12"
LM\Software\Classes\ClsId\{00020C01-0000-0000-C000-000000000046}\DataFormats\DefaultSet\
REG_SZ 18 "SoundRec"
LM\Software\Classes\ClsId\{00020C01-0000-0000-C000-000000000046}\DataFormats\GetSet\0\
REG_SZ 18 "3,1,32,1"
LM\Software\Classes\ClsId\{00020C01-0000-0000-C000-000000000046}\DataFormats\GetSet\1\
REG_SZ 18 "8,-1,1,3"
LM\Software\Classes\ClsId\{00020C01-0000-0000-C000-000000000046}\Implemented
Categories\{7DD95801-9882-11CF-9FA9-00AA006C42C4}\ REG_SZ 2 ""
LM\Software\Classes\ClsId\{00020C01-0000-0000-C000-000000000046}\Implemented
Categories\{7DD95802-9882-11CF-9FA9-00AA006C42C4}\ REG_SZ 2 ""
LM\Software\Classes\ClsId\{00020C01-0000-0000-C000-000000000046}\InprocHandler32\
REG_SZ 20 "ole32.dll"
LM\Software\Classes\ClsId\{00020C01-0000-0000-C000-000000000046}\Insertable\
REG_SZ 2 ""
LM\Software\Classes\ClsId\{00020C01-0000-0000-C000-000000000046}\LocalServer\
REG_SZ 26 "sndrec32.exe"
LM\Software\Classes\ClsId\{00020C01-0000-0000-C000-000000000046}\LocalServer32\
REG_SZ 26 "sndrec32.exe"
LM\Software\Classes\ClsId\{00020C01-0000-0000-C000-000000000046}\MiscStatus\
REG_SZ 4 "0"
LM\Software\Classes\ClsId\{00020C01-0000-0000-C000-000000000046}\PersistentHandler\
REG_SZ 78 "{098f2470-bae0-11cd-b579-08002b30bfeb}"
LM\Software\Classes\ClsId\{00020C01-0000-0000-C000-000000000046}\ProgID\
REG_SZ 18 "SoundRec"
LM\Software\Classes\ClsId\{00020C01-0000-0000-C000-000000000046}\verb\0\
REG_SZ 20 "&Play,0,3"
LM\Software\Classes\ClsId\{00020C01-0000-0000-C000-000000000046}\verb\1\
REG_SZ 20 "&Edit,0,2"
LM\Software\Classes\ClsId\{00020C01-0000-0000-C000-000000000046}\verb\2\
REG_SZ 20 "&Open,0,2"
--- snip ---
http://www.windowrdb.com/w.php?w=hkcr-clsid-0003000d-0000-0000-c000-000000000046
(Windows Vista/7+)
--- snip ---
[HKEY_CLASSES_ROOT\CLSID\{0003000D-0000-0000-C000-000000000046}]
Name : (Default)
Value : Sound
Type : REG_SZ
[HKEY_CLASSES_ROOT\CLSID\{0003000D-0000-0000-C000-000000000046}\NotInsertable]
Name : (Default)
Value : (Value not set)
Type : REG_SZ
[HKEY_CLASSES_ROOT\CLSID\{0003000D-0000-0000-C000-000000000046}\TreatAs]
Name : (Default)
Value : {F20DA720-C02F-11CE-927B-0800095AE340}
Type : REG_SZ
--- snip ---
The substitution CLSID is present:
http://mikolajapp.appspot.com/uuid/query?q={f20da720-c02f-11ce-927b-0800095ae340}
--- snip ---
Results for {f20da720-c02f-11ce-927b-0800095ae340}
Found in Windows Vista registry
Registered class: Package
Inproc sever: packager.dll (product: Microsoft Windows Operating
System,version 6.0.6000.16386)
Subkey of registry key HKLM\SOFTWARE\Classes\AppID
--- snip ---
Putting the entries from Windows 7 in registry reveals another problem which
will be subject to a new bug.
--- snip ---
REGEDIT4
[HKEY_CLASSES_ROOT\CLSID\{0003000D-0000-0000-C000-000000000046}]
@="Sound"
[HKEY_CLASSES_ROOT\CLSID\{0003000D-0000-0000-C000-000000000046}\NotInsertable]
[HKEY_CLASSES_ROOT\CLSID\{0003000D-0000-0000-C000-000000000046}\TreatAs]
@="{F20DA720-C02F-11CE-927B-0800095AE340}"
--- snip ---
$ sha1sum monopolie0.9.7-installer.exe
b7cff9b04b11c55b5d1fa4cddb2f0914f61b6653 monopolie0.9.7-installer.exe
$ du -sh monopolie0.9.7-installer.exe
1.7M monopolie0.9.7-installer.exe
$ wine --version
wine-1.7.33-117-g6bab173
Regards
--
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