https://bugs.winehq.org/show_bug.cgi?id=48110
--- Comment #2 from Anastasius Focht focht@gmx.net --- Hello folks,
the log as requested (although it doesn't show something new):
--- snip --- $ pwd /home/focht/.wine/drive_c/Program Files (x86)/Quest Software/Toad for MySQL Freeware 7.3
$ WINEDEBUG=+seh,+loaddll,+process,+taskschd wine ./toad.exe >>log.txt 2>&1 ... 0137:fixme:path:parse_url failed to parse L"Microsoft.Win32.TaskScheduler" 0137:trace:process:NtQueryInformationProcess (0xffffffff,0x0000000c,0x32b864,0x00000004,(nil)) 0137:trace:loaddll:load_native_dll Loaded L"C:\windows\assembly\NativeImages_v4.0.30319_32\Microsoft.Wb2e8627a#\faac5f641827ac265e16ea27998d80dc\Microsoft.Win32.TaskScheduler.ni.dll" at 0x1a620000: native ... 0137:trace:loaddll:load_native_dll Loaded L"C:\windows\system32\xmllite.dll" at 0xfa20000: PE builtin 0137:trace:loaddll:load_native_dll Loaded L"C:\windows\system32\taskschd.dll" at 0xf990000: PE builtin 0137:trace:taskschd:DllGetClassObject {0f87369f-a4e5-4cfc-bd3e-73e6154572dd},{00000001-0000-0000-c000-000000000046},0032E798 0137:trace:taskschd:factory_QueryInterface 0F9AD078,{00000001-0000-0000-c000-000000000046},0032E798 0137:trace:taskschd:factory_QueryInterface 0F9AD078,{b196b28f-bab4-101a-b69c-00aa00341d07},0032E9B0 0137:fixme:taskschd:factory_QueryInterface interface {b196b28f-bab4-101a-b69c-00aa00341d07} is not implemented 0137:trace:taskschd:factory_CreateInstance 00000000,{00000000-0000-0000-c000-000000000046},0032E9C4 0137:trace:taskschd:TaskService_create created 0D7ED790 0137:trace:taskschd:TaskService_QueryInterface 0D7ED790,{00000000-0000-0000-c000-000000000046},0032E9C4 0137:trace:taskschd:TaskService_QueryInterface 0D7ED790,{00000000-0000-0000-c000-000000000046},0032E5DC 0137:trace:taskschd:TaskService_QueryInterface 0D7ED790,{c3fcc19e-a970-11d2-8b5a-00a0c9b7c9c4},0032E590 0137:fixme:taskschd:TaskService_QueryInterface interface {c3fcc19e-a970-11d2-8b5a-00a0c9b7c9c4} is not implemented 0137:trace:taskschd:TaskService_QueryInterface 0D7ED790,{af86e2e0-b12d-4c6a-9c5a-d7aa65101e90},0032E188 0137:fixme:taskschd:TaskService_QueryInterface interface {af86e2e0-b12d-4c6a-9c5a-d7aa65101e90} is not implemented 0137:trace:taskschd:TaskService_QueryInterface 0D7ED790,{ecc8691b-c1db-4dc0-855e-65f6c551af49},0032DEF4 0137:fixme:taskschd:TaskService_QueryInterface interface {ecc8691b-c1db-4dc0-855e-65f6c551af49} is not implemented 0137:trace:taskschd:TaskService_QueryInterface 0D7ED790,{94ea2b94-e9cc-49e0-c0ff-ee64ca8f5b90},0032DEA4 0137:fixme:taskschd:TaskService_QueryInterface interface {94ea2b94-e9cc-49e0-c0ff-ee64ca8f5b90} is not implemented 0137:trace:taskschd:TaskService_QueryInterface 0D7ED790,{00000003-0000-0000-c000-000000000046},0032DEB0 0137:fixme:taskschd:TaskService_QueryInterface interface {00000003-0000-0000-c000-000000000046} is not implemented 0137:trace:taskschd:TaskService_QueryInterface 0D7ED790,{00000144-0000-0000-c000-000000000046},0032E3AC 0137:fixme:taskschd:TaskService_QueryInterface interface {00000144-0000-0000-c000-000000000046} is not implemented 0137:trace:taskschd:TaskService_QueryInterface 0D7ED790,{2faba4c7-4da9-4013-9697-20cc3fd40f85},0032E95C 0137:trace:taskschd:TaskService_Connect 0D7ED790,0032E9E0 {VT_EMPTY},0032EA10 {VT_EMPTY},0032EA00 {VT_EMPTY},0032E9F0 {VT_EMPTY} 0137:trace:taskschd:start_schedsvc Trying to start L"Schedule" service 0137:trace:taskschd:TaskService_Connect server version 0x10003 0137:trace:taskschd:TaskService_get_TargetServer 0D7ED790,0032EB38 0137:fixme:taskschd:TaskService_get_ConnectedUser 0D7ED790,0032EB38: stub
0137:trace:seh:raise_exception code=e0434352 flags=1 addr=0x1000dab1 ip=1000dab1 tid=0137 0137:trace:seh:raise_exception info[0]=80004001 0137:trace:seh:raise_exception info[1]=00000000 0137:trace:seh:raise_exception info[2]=00000000 0137:trace:seh:raise_exception info[3]=00000000 0137:trace:seh:raise_exception info[4]=009e0000 0137:trace:seh:raise_exception eax=0032e938 ebx=00000005 ecx=0032e92c edx=00000005 esi=00000005 edi=00000001 0137:trace:seh:raise_exception ebp=0032e98c esp=0032e938 cs=0023 ds=c8b002b es=4d43002b fs=0063 gs=006b flags=00000212 0137:trace:seh:call_vectored_handlers calling handler at 0xb81bea code=e0434352 flags=1 0137:trace:seh:call_vectored_handlers handler at 0xb81bea returned 0 ... --- snip ---
I found a 'Microsoft.Win32.TaskScheduler' reference implementation here:
https://github.com/dahall/TaskScheduler ("Provides a .NET wrapper for the Windows Task Scheduler. It aggregates the multiple versions, provides an editor and allows for localization. ")
https://github.com/dahall/TaskScheduler/blob/74a56a9c0a4522d6f3928abe5cee02f...
Not sure how much it resembles the MS one though.
--- snip --- /// <summary>Connects this instance of the <see cref="TaskService"/> class to a running Task Scheduler.</summary> private void Connect() { ResetUnsetProperties();
if (!initializing && !DesignMode) { if (!string.IsNullOrEmpty(userDomain) && !string.IsNullOrEmpty(userName) && !string.IsNullOrEmpty(userPassword) || string.IsNullOrEmpty(userDomain) && string.IsNullOrEmpty(userName) && string.IsNullOrEmpty(userPassword)) { // Clear stuff if already connected connecting = true; Dispose(true);
if (LibraryIsV2 && !forceV1) { v2TaskService = new V2Interop.ITaskService(); if (!string.IsNullOrEmpty(targetServer)) { // Check to ensure character only server name. (Suggested by bigsan) if (targetServer.StartsWith(@"")) targetServer = targetServer.TrimStart('\'); // Make sure null is provided for local machine to compensate for a native library oddity (Found by ctrollen) if (targetServer.Equals(Environment.MachineName, StringComparison.CurrentCultureIgnoreCase)) targetServer = null; } else targetServer = null; v2TaskService.Connect(targetServer, userName, userDomain, userPassword); targetServer = v2TaskService.TargetServer; userName = v2TaskService.ConnectedUser; userDomain = v2TaskService.ConnectedDomain; maxVer = GetV2Version(); ... --- snip ---
If the reference implementation is accurate, we need 'TaskService::ConnectedDomain' as well.
https://source.winehq.org/git/wine.git/blob/HEAD:/dlls/taskschd/task.c#l3937
--- snip --- 3937 static HRESULT WINAPI TaskService_get_ConnectedDomain(ITaskService *iface, BSTR *domain) 3938 { 3939 FIXME("%p,%p: stub\n", iface, domain); 3940 return E_NOTIMPL; 3941 } --- snip ---
$ wine --version wine-5.0-rc4
Regards