ERROR .Net framework mscorwks.dll could not be loaded

Open forum for end-user questions about Wine. Before asking questions, check out the Wiki as a first step.
Forum Rules
Locked
Niky14
Newbie
Newbie
Posts: 4
Joined: Mon Jun 25, 2018 3:20 pm

ERROR .Net framework mscorwks.dll could not be loaded

Post by Niky14 »

Hi everyone.
I'm trying to run my first game on Wine but i can't because of this error: mscorwks.dll could not be loaded.
The game in question is Metin2.
I also installed winetricks in the wine prefix without root.
Followed the guide but i can't let it run. Can anyone help me? :D Have a good day
Niky14
Newbie
Newbie
Posts: 4
Joined: Mon Jun 25, 2018 3:20 pm

Re: ERROR .Net framework mscorwks.dll could not be loaded

Post by Niky14 »

EDIT:
I'll go deeper in details.
I installed winehq choosing the stable version, adding the winehq source to sources.list
I installed all the packages successfully.
Then i start the game going in the directory: $ cd/Downloads/gamefolder
After accessing the directory i started the .exe file with: wine start .Game.exe (The dot at the start is because it is a hidden file)
Then it creates the configuration directory in /home/user/.wine and i get this line of errors:

Code: Select all

0014:err:ole:marshal_object couldn't get IPSFactory buffer for interface {00000131-0000-0000-c000-000000000046}
0014:err:ole:marshal_object couldn't get IPSFactory buffer for interface {6d5140c1-7436-11ce-8034-00aa006009fa}
0014:err:ole:StdMarshalImpl_MarshalInterface Failed to create ifstub, hres=0x80004002
0014:err:ole:CoMarshalInterface Failed to marshal the interface {6d5140c1-7436-11ce-8034-00aa006009fa}, 80004002
0014:err:ole:get_local_server_stream Failed: 80004002
0012:err:ole:marshal_object couldn't get IPSFactory buffer for interface {00000131-0000-0000-c000-000000000046}
0012:err:ole:marshal_object couldn't get IPSFactory buffer for interface {6d5140c1-7436-11ce-8034-00aa006009fa}
0012:err:ole:StdMarshalImpl_MarshalInterface Failed to create ifstub, hres=0x80004002
0012:err:ole:CoMarshalInterface Failed to marshal the interface {6d5140c1-7436-11ce-8034-00aa006009fa}, 80004002
0012:err:ole:get_local_server_stream Failed: 80004002
0017:fixme:urlmon:InternetBindInfo_GetBindString not supported string type 20
0017:fixme:ntdll:NtLockFile I/O completion on lock not implemented yet
0017:err:mscoree:LoadLibraryShim error reading registry key for installroot
0017:err:mscoree:LoadLibraryShim error reading registry key for installroot
0017:err:mscoree:LoadLibraryShim error reading registry key for installroot
0017:err:mscoree:LoadLibraryShim error reading registry key for installroot
0017:fixme:msi:internal_ui_handler internal UI not implemented for message 0x0b000000 (UI level = 1)
0017:fixme:msi:internal_ui_handler internal UI not implemented for message 0x0b000000 (UI level = 1)
001e:fixme:urlmon:InternetBindInfo_GetBindString not supported string type 20
001e:fixme:ntdll:NtLockFile I/O completion on lock not implemented yet
001e:fixme:msi:internal_ui_handler internal UI not implemented for message 0x0b000000 (UI level = 1)
001e:fixme:msi:internal_ui_handler internal UI not implemented for message 0x0b000000 (UI level = 1)
0010:err:winediag:SECUR32_initNTLMSP ntlm_auth was not found or is outdated. Make sure that ntlm_auth >= 3.0.25 is in your path. Usually, you can find it in the winbind package of your distribution.
0010:fixme:dwmapi:DwmIsCompositionEnabled 0x6dbd1518
0023:fixme:iphlpapi:NotifyIpInterfaceChange (family 0, callback 0x69ebd3de, context 0x8d65c0, init_notify 0, handle 0x11cfa20): stub
0040:fixme:urlmon:InternetBindInfo_GetBindString not supported string type 20
0040:fixme:ntdll:NtLockFile I/O completion on lock not implemented yet
0040:fixme:msi:internal_ui_handler internal UI not implemented for message 0x0b000000 (UI level = 1)
0040:fixme:msi:internal_ui_handler internal UI not implemented for message 0x0b000000 (UI level = 1)
003e:err:winediag:SECUR32_initNTLMSP ntlm_auth was not found or is outdated. Make sure that ntlm_auth >= 3.0.25 is in your path. Usually, you can find it in the winbind package of your distribution.
003e:fixme:dwmapi:DwmIsCompositionEnabled 0x6d5d3018
0045:fixme:iphlpapi:NotifyIpInterfaceChange (family 0, callback 0x6a0cb608, context 0x9588c8, init_notify 0, handle 0x119fc88): stub
wine: configuration in '/home/user/.wine' has been updated.
After the configuration is "complete" it asks me to install Mono and Gecko.I press yes and Mono is asked to install one time and Gecko 2 times.

After the installation of Mono and 2 Gecko's i get this line of error:

0009:fixme:exec:SHELL_execute flags ignored: 0x00000100 where a window pops up and says:
C:\windows\Microsoft.NET\Framework\v 4.0.30319\mscorwks.dll could not be loaded.

Note that this is a new installation that i have done this morning without installing Winetricks. Before installing again Winehq i removed all the files and config data as the official WineHq guide said.

Please help me :roll:
User avatar
Bob Wya
Level 12
Level 12
Posts: 3068
Joined: Sat Oct 16, 2010 7:40 pm

Re: ERROR .Net framework mscorwks.dll could not be loaded

Post by Bob Wya »

Niky14 wrote:...

After the installation of Mono and 2 Gecko's i get this line of error:

Code: Select all

0009:fixme:exec:SHELL_execute flags ignored: 0x00000100
where a window pops up and says:
C:\windows\Microsoft.NET\Framework\v 4.0.30319\mscorwks.dll could not be loaded.
You'll need to setup a 32-bit WINEPREFIX. See: WineHQ FAQ: 6.5.3 How do I create a 32 bit wineprefix on a 64 bit system?

Then install .Net framework version 4.0.x:

Code: Select all

winetricks dotnet40
Then install your application to your newly created WINEPREFIX.

Bob
Niky14
Newbie
Newbie
Posts: 4
Joined: Mon Jun 25, 2018 3:20 pm

Re: ERROR .Net framework mscorwks.dll could not be loaded

Post by Niky14 »

Bob Wya wrote:
Niky14 wrote:...

After the installation of Mono and 2 Gecko's i get this line of error:

Code: Select all

0009:fixme:exec:SHELL_execute flags ignored: 0x00000100
where a window pops up and says:
C:\windows\Microsoft.NET\Framework\v 4.0.30319\mscorwks.dll could not be loaded.
You'll need to setup a 32-bit WINEPREFIX. See: WineHQ FAQ: 6.5.3 How do I create a 32 bit wineprefix on a 64 bit system?

Then install .Net framework version 4.0.x:

Code: Select all

winetricks dotnet40
Then install your application to your newly created WINEPREFIX.

Bob
Thank you for answering me.
I uninstalled everything completely and installed again Winehq.
It created a .wine prefix automatically where to config went apparently ok.
Then i created a new 32bit prefix using:

Code: Select all

WINEARCH=win32 WINEPREFIX=~/.wine32 winecfg
but i got this error:

Code: Select all

0012:err:ole:marshal_object couldn't get IPSFactory buffer for interface {00000131-0000-0000-c000-000000000046}
0012:err:ole:marshal_object couldn't get IPSFactory buffer for interface {6d5140c1-7436-11ce-8034-00aa006009fa}
0012:err:ole:StdMarshalImpl_MarshalInterface Failed to create ifstub, hres=0x80004002
0012:err:ole:CoMarshalInterface Failed to marshal the interface {6d5140c1-7436-11ce-8034-00aa006009fa}, 80004002
0012:err:ole:get_local_server_stream Failed: 80004002
0014:err:ole:marshal_object couldn't get IPSFactory buffer for interface {00000131-0000-0000-c000-000000000046}
0014:err:ole:marshal_object couldn't get IPSFactory buffer for interface {6d5140c1-7436-11ce-8034-00aa006009fa}
0014:err:ole:StdMarshalImpl_MarshalInterface Failed to create ifstub, hres=0x80004002
0014:err:ole:CoMarshalInterface Failed to marshal the interface {6d5140c1-7436-11ce-8034-00aa006009fa}, 80004002
0014:err:ole:get_local_server_stream Failed: 80004002
0017:fixme:ntdll:NtLockFile I/O completion on lock not implemented yet
0017:err:mscoree:LoadLibraryShim error reading registry key for installroot
0017:err:mscoree:LoadLibraryShim error reading registry key for installroot
0017:err:mscoree:LoadLibraryShim error reading registry key for installroot
0017:err:mscoree:LoadLibraryShim error reading registry key for installroot
0017:fixme:msi:internal_ui_handler internal UI not implemented for message 0x0b000000 (UI level = 1)
0017:fixme:msi:internal_ui_handler internal UI not implemented for message 0x0b000000 (UI level = 1)
001b:fixme:ntdll:NtLockFile I/O completion on lock not implemented yet
001b:fixme:msi:internal_ui_handler internal UI not implemented for message 0x0b000000 (UI level = 1)
001b:fixme:msi:internal_ui_handler internal UI not implemented for message 0x0b000000 (UI level = 1)
0010:err:winediag:SECUR32_initNTLMSP ntlm_auth was not found or is outdated. Make sure that ntlm_auth >= 3.0.25 is in your path. Usually, you can find it in the winbind package of your distribution.
0010:fixme:dwmapi:DwmIsCompositionEnabled 0x6d5d3018
001d:fixme:iphlpapi:NotifyIpInterfaceChange (family 0, callback 0x6a0cb608, context 0x9588c8, init_notify 0, handle 0x119fc88): stub
wine: configuration in '/home/user/.wine32' has been updated.
when i use "winetricks dotnet40" it says i'm using a 64 bit version of the prefix and it's dangerous.

And also,the file i'm trying to start is a game patcher from a client folder. How can i put this in a prefix when i've solved these problems?

Before uninstalling and installing again i created the 32 bit prefix and i deleted the wine 64 bit prefix folder and the installation of net framework gave errors at everyline, similar to the winecfg one.
When .net finished installing i started the File from his own directory but gave me the same error C:\windows\Microsoft.NET\Framework\v 4.0.30319\mscorwks.dll could not be loaded

I'm a newbie and can't understand what's going on.Any kind of help is appreciated, thank you :)
User avatar
rawfox
Level 3
Level 3
Posts: 59
Joined: Tue Oct 05, 2010 10:59 am

Re: ERROR .Net framework mscorwks.dll could not be loaded

Post by rawfox »

do in a shell:

export WINEPREFIX=~/.wine32
export WINEARCH=win32
winecfg

You can delete your prefix, no need to install wine very time again, just the prefix matters.
It needs a bit to have all stuff in place.
When working on a prefix, you need to export the path every time again in that shell you work in.
Shell closed and exec something using wine will fall back to the default prefix ~/.wine .
So when you create a bash script to start your app, you want to export the path to the wineprefix to use before.

When there is no prefix, you also need to export the WINEARCH to make the installation due to a first call on winecfg.
Once the 32bit prefix is in place, its working as 32bit, you just neet to set the path by exporting the WINEPREFIX.
User avatar
Bob Wya
Level 12
Level 12
Posts: 3068
Joined: Sat Oct 16, 2010 7:40 pm

Re: ERROR .Net framework mscorwks.dll could not be loaded

Post by Bob Wya »

@Niky14

If you type:

Code: Select all

WINEARCH=win32 WINEPREFIX=~/.wine32 winecfg
winetricks dotnet40
That won't work because any BASH variables which are set, prefixing the winecfg command, only apply in the context of that command.
So winetricks will actually reference the default WINEPREFIX of:

Code: Select all

"${HOME}/.wine"
So you'd actually want something like:

Code: Select all

export WINEPREFIX=~/.wine32
WINEARCH=win32 wineboot -u
winetricks dotnet40
Exporting a shell variable will ensure it persists for that shell session (and only that shell session) plus child sessions of, in the shell env.
Note: that means the env variable export will only apply to the current / single tab in a graphical terminal manager, etc.

You can double check your env variable is set correctly with:

Code: Select all

env | grep 'WINEPREFIX'
before running any wine / winetricks commands!

Bob
Niky14
Newbie
Newbie
Posts: 4
Joined: Mon Jun 25, 2018 3:20 pm

Re: ERROR .Net framework mscorwks.dll could not be loaded

Post by Niky14 »

Bob Wya wrote:@Niky14

If you type:

Code: Select all

WINEARCH=win32 WINEPREFIX=~/.wine32 winecfg
winetricks dotnet40
That won't work because any BASH variables which are set, prefixing the winecfg command, only apply in the context of that command.
So winetricks will actually reference the default WINEPREFIX of:

Code: Select all

"${HOME}/.wine"
So you'd actually want something like:

Code: Select all

export WINEPREFIX=~/.wine32
WINEARCH=win32 wineboot -u
winetricks dotnet40
Exporting a shell variable will ensure it persists for that shell session (and only that shell session) plus child sessions of, in the shell env.
Note: that means the env variable export will only apply to the current / single tab in a graphical terminal manager, etc.

You can double check your env variable is set correctly with:

Code: Select all

env | grep 'WINEPREFIX'
before running any wine / winetricks commands!

Bob


Guys thank you for helping me down this path! :D

I prefixed the .wine32 as Bob showed in his post. When i typed the second string

Code: Select all

WINEARCH=win32 wineboot -u

it started the winecfg and i got a lot of errors:

Code: Select all

wine: created the configuration directory '/home/user/.wine32'
0012:err:ole:marshal_object couldn't get IPSFactory buffer for interface {00000131-0000-0000-c000-000000000046}
0012:err:ole:marshal_object couldn't get IPSFactory buffer for interface {6d5140c1-7436-11ce-8034-00aa006009fa}
0012:err:ole:StdMarshalImpl_MarshalInterface Failed to create ifstub, hres=0x80004002
0012:err:ole:CoMarshalInterface Failed to marshal the interface {6d5140c1-7436-11ce-8034-00aa006009fa}, 80004002
0012:err:ole:get_local_server_stream Failed: 80004002
0014:err:ole:marshal_object couldn't get IPSFactory buffer for interface {00000131-0000-0000-c000-000000000046}
0014:err:ole:marshal_object couldn't get IPSFactory buffer for interface {6d5140c1-7436-11ce-8034-00aa006009fa}
0014:err:ole:StdMarshalImpl_MarshalInterface Failed to create ifstub, hres=0x80004002
0014:err:ole:CoMarshalInterface Failed to marshal the interface {6d5140c1-7436-11ce-8034-00aa006009fa}, 80004002
0014:err:ole:get_local_server_stream Failed: 80004002
0017:fixme:urlmon:InternetBindInfo_GetBindString not supported string type 20
0017:fixme:ntdll:NtLockFile I/O completion on lock not implemented yet
0017:err:mscoree:LoadLibraryShim error reading registry key for installroot
0017:err:mscoree:LoadLibraryShim error reading registry key for installroot
0017:err:mscoree:LoadLibraryShim error reading registry key for installroot
0017:err:mscoree:LoadLibraryShim error reading registry key for installroot
0017:fixme:msi:internal_ui_handler internal UI not implemented for message 0x0b000000 (UI level = 1)
0017:fixme:msi:internal_ui_handler internal UI not implemented for message 0x0b000000 (UI level = 1)
001e:fixme:urlmon:InternetBindInfo_GetBindString not supported string type 20
001e:fixme:ntdll:NtLockFile I/O completion on lock not implemented yet
001e:fixme:msi:internal_ui_handler internal UI not implemented for message 0x0b000000 (UI level = 1)
001e:fixme:msi:internal_ui_handler internal UI not implemented for message 0x0b000000 (UI level = 1)
0010:err:winediag:SECUR32_initNTLMSP ntlm_auth was not found or is outdated. Make sure that ntlm_auth >= 3.0.25 is in your path. Usually, you can find it in the winbind package of your distribution.
0010:fixme:dwmapi:DwmIsCompositionEnabled 0x6d5d3018
0023:fixme:iphlpapi:NotifyIpInterfaceChange (family 0, callback 0x6a0cb608, context 0x9588c8, init_notify 0, handle 0x119fc88): stub
wine: configuration in '/home/andreagiannozzi/.wine32' has been updated.
003e:err:winediag:SECUR32_initNTLMSP ntlm_auth was not found or is outdated. Make sure that ntlm_auth >= 3.0.25 is in your path. Usually, you can find it in the winbind package of your distribution.
003e:fixme:dwmapi:DwmIsCompositionEnabled 0x6d5d3018
0040:fixme:iphlpapi:NotifyIpInterfaceChange (family 0, callback 0x6a0cb608, context 0x9588c8, init_notify 0, handle 0x119fc88): stub
wine: configuration in '/home/user/.wine32' has been updated.
I ensured that the prefix was correct in this session with the env command that Bob showed me and it correctly showed .wine32.
I decide to go forward installing .net framework and i got again a lot of errors that ended like this:

Code: Select all

Executing wine regedit C:\windows\Temp\_dotnet40\override-dll.reg
The operation completed successfully
The operation completed successfully
Setting Windows version to winxp
Executing wine regedit C:\windows\Temp\_dotnet40\set-winver.reg
------------------------------------------------------
Running /usr/bin/wineserver -w. This will hang until all wine processes in prefix=/home/andreagiannozzi/.wine32 terminate
------------------------------------------------------
0216:err:ole:CoReleaseMarshalData IMarshal::ReleaseMarshalData failed with error 0x8001011d
and it keep going..
I tried to run the application but it still gave me the error mscorwks.dll could not be loaded.
Locked