[Bug 9638] VB6 apps using scrrun FileSystem object fail because GetIDsOfNames is not implemented (Fileant, WinAmbulance, ...)

wine-bugs at winehq.org wine-bugs at winehq.org
Mon Apr 30 12:43:56 CDT 2012


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

Anastasius Focht <focht at gmx.net> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
            Summary|fileant won't start         |VB6 apps using scrrun
                   |                            |FileSystem object fail
                   |                            |because GetIDsOfNames is
                   |                            |not implemented (Fileant,
                   |                            |WinAmbulance, ...)
           Severity|enhancement                 |normal

--- Comment #11 from Anastasius Focht <focht at gmx.net> 2012-04-30 12:43:56 CDT ---
Hello,

initial show stopper bug 29344 has been implemented now.

Capturing this bug for VB6 apps using FileSystem object.

The 'fileant' app doesn't crash anymore but a message box is displayed.

Prerequisite: 'winetricks -q vb6run'

--- snip ---
$ pwd
/home/focht/.wine/drive_c/Program Files/FileAnt
...
WINEDEBUG=+tid,+seh,+scrrun,+ole,+variant wine ./FileAnt.exe >>log.txt 2>&1
...
0024:trace:ole:CoCreateInstance (rclsid={0d43fe01-f093-11cf-8940-00a0c9054228},
pUnkOuter=(nil), dwClsContext=00000005,
riid={00000000-0000-0000-c000-000000000046}, ppv=0x32f7ec)
0024:trace:ole:CoGetClassObject CLSID:
{0d43fe01-f093-11cf-8940-00a0c9054228},IID:
{00000001-0000-0000-c000-000000000046}
0024:trace:ole:COMPOBJ_DllList_Add 
0024:trace:scrrun:DllMain 0x7d910000, 1, (nil)
0024:trace:ole:apartment_getclassobject added new loaded dll
L"C:\\windows\\system32\\scrrun.dll"
0024:trace:ole:apartment_getclassobject calling DllGetClassObject 0x7d91949e
0024:trace:scrrun:DllGetClassObject (CLSID_WshShell
{00000001-0000-0000-c000-000000000046} 0x32f6e4)
0024:trace:scrrun:scrruncf_QueryInterface (0x7d92694c)->(IID_IClassFactory
0x32f6e4)
0024:trace:scrrun:scrruncf_AddRef (0x7d92694c)
0024:trace:scrrun:FileSystem_CreateInstance ((nil)
{00000000-0000-0000-c000-000000000046} 0x32f7ec)
0024:trace:scrrun:filesys_QueryInterface 0x7d926938
{00000000-0000-0000-c000-000000000046} 0x32f7ec
0024:trace:scrrun:filesys_AddRef 0x7d926938
0024:trace:scrrun:scrruncf_Release (0x7d92694c)
0024:trace:scrrun:filesys_QueryInterface 0x7d926938
{7fd52380-4e07-101b-ae2d-08002b2ec713} 0x32f7fc
0024:fixme:scrrun:filesys_QueryInterface Unsupported interface
{7fd52380-4e07-101b-ae2d-08002b2ec713}
0024:trace:scrrun:filesys_QueryInterface 0x7d926938
{37d84f60-42cb-11ce-8135-00aa004bb851} 0x32f800
0024:fixme:scrrun:filesys_QueryInterface Unsupported interface
{37d84f60-42cb-11ce-8135-00aa004bb851}
0024:trace:scrrun:filesys_QueryInterface 0x7d926938
{00020400-0000-0000-c000-000000000046} 0x32f7cc
0024:trace:scrrun:filesys_AddRef 0x7d926938
0024:trace:scrrun:filesys_Release 0x7d926938
0024:trace:scrrun:filesys_AddRef 0x7d926938
0024:trace:scrrun:filesys_Release 0x7d926938
0024:fixme:scrrun:filesys_GetIDsOfNames
(0x7d926938)->({00000000-0000-0000-0000-000000000000} 0x32f7e8 1 1033 0x32f7ec)
0024:trace:seh:raise_exception code=c000008f flags=1 addr=0x7b8393b7
ip=7b8393b7 tid=0024
0024:trace:seh:raise_exception  info[0]=deadcafe
0024:trace:seh:raise_exception  info[1]=deadcafe
0024:trace:seh:raise_exception  eax=7b8263e1 ebx=7b8af6b0 ecx=deadcafe
edx=0032f710 esi=0012e6c0 edi=0012e6c0
0024:trace:seh:raise_exception  ebp=0032f74c esp=0032f6e8 cs=0023 ds=002b
es=002b fs=0063 gs=006b flags=00000287
0024:trace:seh:call_stack_handlers calling handler at 0x735044eb code=c000008f
flags=1
...
0024:trace:variant:VarBstrCat L"Form_Initialize: ",L"Object doesn't support
this action",0x32f7ec 
...
0024:trace:ole:ICreateErrorInfoImpl_SetSource (0x16aa78): L"FileAnt"
0024:trace:ole:ICreateErrorInfoImpl_SetDescription (0x16aa78):
L"Application-defined or object-defined error"
--- snip ---

Source:
http://source.winehq.org/git/wine.git/blob/62077059a5aa9bd26eb51be82a5c31691017b086:/dlls/scrrun/filesystem.c#l98

--- snip ---
  98 static HRESULT WINAPI filesys_GetIDsOfNames(IFileSystem3 *iface, REFIID
riid,
  99                                         LPOLESTR *rgszNames, UINT cNames,
 100                                         LCID lcid, DISPID *rgDispId)
 101 {
 102     FIXME("(%p)->(%s %p %u %u %p)\n", iface, debugstr_guid(riid),
rgszNames, cNames,
 103           lcid, rgDispId);
 104 
 105     return E_NOTIMPL;
 106 }
--- snip ---

$ du -sh fileant.exe 
2.4M    fileant.exe

$ sha1sum fileant.exe 
c5ae1630444ee4a11b2f7aa417002fac581f3273  fileant.exe

$ wine --version
wine-1.5.3

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