WineHQ
Wine Forums

Board index » WineHQ » Wine Help » Linux




 Page 1 of 1 [ 20 posts ] 



 
Author Message
 Post Posted: Wed May 08, 2019 3:49 am 
Offline
Level 2
Level 2

Joined: Wed May 08, 2019 3:23 am
Posts: 10
Hello,

I'm trying to run an application using third party Dlls. I registered the third party libraries and i can look up the entries in the registry. When I start the application i get these errors:

Code:
002c:warn:file:CreateFileW Unable to create file L"\\\\.\\pipe\\{BEB4B3C8-CCD6-4F37-97E6-21DD51BD2F23}" (status c0000034)
002c:warn:ole:create_local_service No LocalService value
002c:err:ole:create_server class {beb4b3c8-ccd6-4f37-97e6-21dd51bd2f23} not registered
002c:err:ole:CoGetClassObject no class object {beb4b3c8-ccd6-4f37-97e6-21dd51bd2f23} could be created for context 0x4


I already tried to deregister and register the dlls manually with regsvr32.

Thanks for any suggestions :)


Top 
 Post Posted: Wed May 08, 2019 12:37 pm 
Offline
Level 7
Level 7
User avatar

Joined: Tue Nov 22, 2016 5:39 pm
Posts: 804
Do you find the GUID inside the wine regedit?


Top 
 Post Posted: Mon May 13, 2019 3:59 am 
Offline
Level 2
Level 2

Joined: Wed May 08, 2019 3:23 am
Posts: 10
DarkShadow44 wrote:
Do you find the GUID inside the wine regedit?


Yes in the HKEY_CLASSES_ROOT/CLSID directory and in HKEY_LOCAL_MACHINE/Software/Classes/CLSID


Top 
 Post Posted: Mon May 13, 2019 12:35 pm 
Offline
Level 7
Level 7
User avatar

Joined: Tue Nov 22, 2016 5:39 pm
Posts: 804
Interesting, then it should work. In the registry, what is the path for the dll for that GUID? And does this DLL exist in the file system?


Top 
 Post Posted: Tue May 14, 2019 5:36 am 
Offline
Level 2
Level 2

Joined: Wed May 08, 2019 3:23 am
Posts: 10
DarkShadow44 wrote:
Interesting, then it should work. In the registry, what is the path for the dll for that GUID? And does this DLL exist in the file system?


Yes the DLL does exist, it's in the same directory of the application. I also tried to move ist to the system32 directory of the 32-bit prefix, but it didn't change anything


Top 
 Post Posted: Tue May 14, 2019 11:17 pm 
Offline
Level 7
Level 7
User avatar

Joined: Tue Nov 22, 2016 5:39 pm
Posts: 804
Is there a download I could use to test?


Top 
 Post Posted: Wed May 22, 2019 6:55 am 
Offline
Level 2
Level 2

Joined: Wed May 08, 2019 3:23 am
Posts: 10
Here is the necessary Dll and the program.

https://we.tl/t-zwMS9V0Ulf


Top 
 Post Posted: Wed May 22, 2019 11:38 am 
Offline
Level 7
Level 7
User avatar

Joined: Tue Nov 22, 2016 5:39 pm
Posts: 804
Are you sure this is an issue? Because that program seems to do the same as on windows.

For the record, the program calls CoGetClassObject with CLSCTX_LOCAL_SERVER. And since that is not registered (neither on wine nor windows) it doesn't work.


Top 
 Post Posted: Mon May 27, 2019 8:09 am 
Offline
Level 2
Level 2

Joined: Wed May 08, 2019 3:23 am
Posts: 10
The desired output should be :
Code:
INFO: 2019/05/27 14:41:15.785341 Module[main] - ID[] - Message[Interface version
 : 1.5.5.0]

Which is for me the case, when i execute it under Win7
But on Linux i get the following message as i mentioned before:
Code:
002c:err:ole:create_server class {beb4b3c8-ccd6-4f37-97e6-21dd51bd2f23} not registered
002c:err:ole:CoGetClassObject no class object {beb4b3c8-ccd6-4f37-97e6-21dd51bd2f23} could be created for context 0x4


Top 
 Post Posted: Mon May 27, 2019 9:27 am 
Offline
Level 7
Level 7
User avatar

Joined: Tue Nov 22, 2016 5:39 pm
Posts: 804
Yeah, because windows doesn't log failed calls. But I'm pretty sure the same "failure" happens on windows. So what exactly is the issue here, except for additional debug output?


Top 
 Post Posted: Tue May 28, 2019 7:43 am 
Offline
Level 2
Level 2

Joined: Wed May 08, 2019 3:23 am
Posts: 10
If Windows would have the same fail, you would get the Logging message from the program and the empty Interface-version message like in Linux or not?

Code:
ERROR: 2019/05/28 13:50:42.843102 Module[main] - ID[] - Message[GetVersionComInterface: Could not get version of COM-Interface Version: error -2147352567 (FormatMessage failed with: Message 0x%1 not found in file %2.)]
INFO: 2019/05/28 13:50:42.843364 Module[main] - ID[] - Message[Interface version : ]


This is the present issue for me. How can Windows retrieve the Interface version, but Wine/Linux can't?


Top 
 Post Posted: Tue May 28, 2019 9:46 am 
Offline
Level 7
Level 7
User avatar

Joined: Tue Nov 22, 2016 5:39 pm
Posts: 804
That error code is DISP_E_EXCEPTION, and it complains that it can't find a message in a file. That's not because a class is not registered though.

You probably don't happen to have the source? Would be nice to know how it tries to get the version. Other way would be to investigate the error without, I could probably do that.


Top 
 Post Posted: Wed Jun 12, 2019 8:05 am 
Offline
Level 2
Level 2

Joined: Wed May 08, 2019 3:23 am
Posts: 10
Sorry for the late answer, i got the sourcecode of the little test programm.
You can find it here: https://we.tl/t-ddp4C9EH6w


Top 
 Post Posted: Wed Jun 12, 2019 1:16 pm 
Offline
Level 7
Level 7
User avatar

Joined: Tue Nov 22, 2016 5:39 pm
Posts: 804
Ah I see. Well, on windows I get also an error and an empty interface version. Using the dll you sent me previously. Does it work for you only with "heidenhaindnc.dll" and "TestProgrammHH.exe"? Without anything else registered?


Top 
 Post Posted: Thu Jun 13, 2019 3:41 am 
Offline
Level 2
Level 2

Joined: Wed May 08, 2019 3:23 am
Posts: 10
Ah, I previously executed an installer-file and then only unregistered and reregistered the Dlls. Apparently then it works. But now I executed the installer-file to uninstall and reregistered the Dll and it didn't worked on windows.

But under Linux I still got the same error.

Maybe it will work for you with this : https://we.tl/t-bbNZ1lxIry


Top 
 Post Posted: Thu Jun 13, 2019 2:02 pm 
Offline
Level 7
Level 7
User avatar

Joined: Tue Nov 22, 2016 5:39 pm
Posts: 804
Quote:
For the record, the program calls CoGetClassObject with CLSCTX_LOCAL_SERVER. And since that is not registered (neither on wine nor windows) it doesn't work.

Yeah, I'll take that back...
Interesting enough, it indeed seems to be because of that "not registered class". If I hack wine to always load classes, it works. Didn't expect that at all, but here we are. I'll try and look into what causes this.

And since I didn't say that yet, many thanks for the bugreport and helping to troubleshoot! :)


Top 
 Post Posted: Fri Jun 14, 2019 3:15 am 
Offline
Level 2
Level 2

Joined: Wed May 08, 2019 3:23 am
Posts: 10
How do you hack into wine to always load classes?
Would be nice to know, so I can keep going for the time you are looking into the problem.

No problem, thank you for the help :)


Top 
 Post Posted: Fri Jun 14, 2019 11:17 am 
Offline
Level 7
Level 7
User avatar

Joined: Tue Nov 22, 2016 5:39 pm
Posts: 804
Menneck wrote:
How do you hack into wine to always load classes?

In dlls/ole32/compobj.c, line 3150 remove
Code:
if (CLSCTX_INPROC_SERVER & dwClsContext)


Top 
 Post Posted: Tue Jun 18, 2019 4:25 am 
Offline
Level 2
Level 2

Joined: Wed May 08, 2019 3:23 am
Posts: 10
Is there a Bug ID to track the problem?
So I could change to the improved version, when the problem gets solved?


Top 
 Post Posted: Tue Jun 18, 2019 11:34 am 
Offline
Level 7
Level 7
User avatar

Joined: Tue Nov 22, 2016 5:39 pm
Posts: 804
No, no bug yet. I'd create one, but I don't think I'm allowed to link the files.


Top 
Display posts from previous:  Sort by  
 
 Page 1 of 1 [ 20 posts ] 




Board index » WineHQ » Wine Help » Linux


Who is online

Users browsing this forum: Google [Bot] and 18 guests

 
 

 
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to: