WineHQ

.NET Framework

.NET Framework 4.0, released on 2011-02-21.

Application Details:

Version: 4.0
License: Free to use
URL: http://msdn.microsoft.com/netf...
Votes: 6
Latest Rating: Garbage
Latest Wine Version Tested: 4.9

Maintainers: About Maintainership

Free Download Microsoft .NET Framework 4 (Standalone Installer) (48.1 MB)Direct download Free Download Microsoft .NET Framework 4 (Web Installer) (868 KB) Free Download Microsoft .NET Framework 4 (Standalone Installer)

Test Results

Old test results
The test results you have selected are very old and may not represent the current state of Wine.
Selected Test Results

What works

  • Everything Worked

What does not

  • None

Workarounds

What was not tested

  • None

Hardware tested

Graphics:

  • GPU:
  • Driver:

Additional Comments

I installed in 32 bits wineprefix. I needed the lib32-libxml2 package and gdiplus (installed with winetricks) for the installation work.

selected in Test Results table below
Operating systemTest dateWine versionInstalls?Runs?Used
Workaround?
RatingSubmitter
ShowUbuntu 18.04 "Bionic" amd64 (+variants like Kubuntu)Jun 03 20194.9No Not installable YesGarbageAaron Franke 
ShowKDE neonJan 17 20183.0-rc6Yes Yes YesGoldInvictus Tiberius 
ShowFedora 24 x86_64Apr 16 20172.2-stagingYes Yes GoldLuc Absil 
ShowUbuntu 16.04 "Xenial" amd64 (+ variants like Kubuntu)Sep 28 20161.9.19Yes Yes Goldan anonymous user 
ShowMac OS X 10.10 "Yosemite"Aug 17 20151.7.47Yes Yes Goldan anonymous user 
ShowUbuntu 14.04 "Trusty" i386 (+ variants like Kubuntu)Dec 07 20141.7.31No, but has workaround Yes Bronzean anonymous user 
ShowLinux Mint 17 "Qiana" x86_64Jul 21 20141.7.19Yes Yes GoldLinuxSupahFly 
ShowDebian GNU/Linux 8.x "Jessie"May 05 20151.6.2Yes Yes Goldan anonymous user 
ShowMac OS X 10.6 "Snow Leopard"Oct 26 20141.6.1Yes Yes Goldan anonymous user 
ShowSlackware 14.0Nov 05 20131.7.5Yes Yes Goldan anonymous user 
ShowPuppy Linux 5.xApr 08 20151.6Yes Yes Goldan anonymous user 
ShowUbuntu 12.04 "Precise" amd64 (+ variants like Kubuntu)Jul 07 20131.6-rc4No, but has workaround Yes GoldAnthony Seleznev 
ShowArch Linux x86_64Jul 03 20131.6-rc4No, but has workaround Yes GoldSerge Hooge 
ShowFedora 18 x86_64May 25 20131.5.31Yes Yes SilverAnastasius Focht 
ShowArch Linux x86_64May 18 20131.5.30No Not installable Garbagean anonymous user 
ShowUbuntu 13.04 "Raring" amd64 (+ variants like Kubuntu)May 09 20131.5.29Yes Yes BronzeAlexander Schlarb 
ShowFedora 16 x86_64Dec 21 20121.5.20Yes Yes SilverAnastasius Focht 
CurrentArch Linux x86_64Aug 18 20121.5.11Yes Yes BronzeLara Maia 
ShowFedora 16 x86_64Mar 08 20121.4Yes Yes BronzeAnastasius Focht 
ShowUbuntu 12.04 "Precise" i386 (+ variants like Kubuntu)May 03 20121.4-rc6Yes Yes Bronzean anonymous user 
ShowGentoo Linux x86_64Feb 10 20121.4-rc2Yes Yes Bronzean anonymous user 
ShowUbuntu 11.04 "Natty" amd64 (+ variants like Kubuntu)Sep 03 20111.3.27No Not installable Garbagean anonymous user 
ShowUbuntu 10.04 "Lucid" amd64 (+ variants like Kubuntu)Jul 07 20111.3.21No Not installable Garbagean anonymous user 
ShowGentoo Linux x86_64May 18 20111.3.19No Not installable Garbagepaulguy 
ShowsiduxJan 29 20111.3.12No Not installable GarbageMassteR 
ShowMac OS X 10.6 "Snow Leopard"Jan 20 20111.3.11No Not installable Garbagean anonymous user 
ShowFedora 13Dec 15 20101.3.9No Not installable Garbagean anonymous user 
ShowUbuntu 10.10 "Maverick" amd64 (+ variants like Kubuntu)Dec 22 20101.2.2No Not installable Garbagean anonymous user 
ShowUbuntu 10.10 "Maverick" i386 (+ variants like Kubuntu)Nov 26 20101.3.7No Not installable GarbageNathan.N 
ShowUbuntu 10.10 "Maverick" i386 (+ variants like Kubuntu)Nov 26 20101.3.7No Not installable GarbageNathan.N 
ShowUbuntu 10.04 "Lucid" amd64 (+ variants like Kubuntu)Aug 08 20101.3.0No Not installable Garbagean anonymous user 
ShowUbuntu 10.04 "Lucid" i386 (+ variants like Kubuntu)May 25 20101.2-rc1No Not installable Garbagean anonymous user 
ShowUbuntu 8.10 "Intrepid" i386 (+ variants like Kubuntu)Sep 21 20091.1.29No Not installable GarbageKen Sharp 

Known Bugs

Bug # Description Status Resolution Other apps affected
10601 Microsoft .NET Framework: GAC API for managed assembly installation needs reparse point/junction API support (.NET Framework 2.0, 3.0, 4.0 installers and other apps that make use of GAC API) CLOSED DUPLICATE View
12401 NET Framework 2.0, 3.0, 4.0 installers and other apps that make use of GAC API for managed assembly installation need reparse point/junction API support, i.e. DeviceIoCtl(FSCTL_SET_REPARSE_POINT/FSCTL_GET_REPARSE_POINT) STAGED View
15670 .NET applications that make use of System.IO.IsolatedStorage crash (missing "HKLM\Software\Microsoft\Windows NT\CurrentVersion\ProfileList\" registry subkey) STAGED View
18640 .NET Framework 3.x/4.x WPF Media Integration Layer requires IDirect3D9ExImpl_GetAdapterDisplayModeEx implementation CLOSED FIXED View
20128 MS .Net Framework 4.0 installer needs native msxml3 CLOSED FIXED View
20220 Missing windowscodecs.dll.WICCreateImagingFactory_Proxy causes failure for many .NET 3.x/4.x (WPF) based installers/apps CLOSED FIXED View
23759 Many .NET gui apps report unhandled exception on launch due to gdiplus GdipTranslateLineTransform stub (no menu bar and status bar with built-in gdiplus) CLOSED FIXED View
25197 Installation hangs after accept .NET 4 EULA (Standalone Installer) CLOSED FIXED View
25535 .NET Framework 4.0 Fails to install with HRESULT 0x80070643 CLOSED FIXED View
26924 Calling UpdateLayeredWindowIndirect in multi-threaded apps might lead to freezes (Beta League of Legends Patcher, Tunatic, .NET 3.x/4.x WPF apps) CLOSED FIXED View
27991 LsaLookupNames2 separate allocations break .NET 4.0 System.Security subsystem and leak returned buffer data CLOSED FIXED View
28484 .NET Framework 4.0: Crash after extracting files - unimplemented wer.WerReportAddDump CLOSED FIXED View
29666 TurboTax 2011 fails to install (.NET 4.0 Framework verification fails) CLOSED FIXED View
29676 .NET 4.0 runtime fails to initialize MediaSystem subsystem due to rpcrt4.dll RpcMgmtIsServerListening being a stub CLOSED FIXED View
30076 .NET Framework 4.x with WinVer setting "Windows 7" spams terminal with "LocaleNameToLCID/LCIDToLocaleName unsupported flags 8000000" (LOCALE_ALLOW_NEUTRAL_NAMES) CLOSED FIXED View
30485 MeGUI 2112 crashes after first update / restart (application XML settings can't be fully deserialized due to oleaut32 VarDecRound being a semi-stub) CLOSED FIXED View
30572 Multiple applications need vectored continue handler support (.NET 3.x/4.x/Silverlight, Lync from Office 2013) CLOSED FIXED View
30635 .NET 3.x/4.x WPF based installers/apps require windowscodecs.dll.IWICStream_InitializeFromMemory_Proxy CLOSED FIXED View
30758 .NET 4.0 installer/CLR native ngen.exe runs into "unimplemented function fusion.dll.InitializeFusion, aborting" (Wine builtin fusion override during .NET 4 install) CLOSED FIXED View
31056 .NET Framework 3.x/4.x WPF Media Integration Layer deadlocks between ui and render thread when calling SetPixelFormat CLOSED FIXED View
31293 Multiple .NET apps need GdipPrivateAddFontFile (MTGO v3 launcher, Harmony Practice 3) CLOSED FIXED View
31440 Can't install .NET 4.0 - Installation failed with error code: (0x80070643) CLOSED WORKSFORME View
32323 Netflix (Silverlight 4.x) and several .NET Framework 3.x/4.0 WPF apps require either Arial or Verdana to be installed STAGED View
32471 Multiple .NET 4.0 apps using WPF4 fail with "X Error of failed request: GLXBadDrawable" on glxdrv_wglMakeCurrent (Evolve client, JMP 10.0) CLOSED FIXED View
32654 Visual Studio 2010 needs windowscodecs WICSetEncoderFormat_Proxy CLOSED FIXED View
32758 .NET 3.5 and 4.x apps using Microsoft Enhanced RSA and AES Cryptographic Provider with default WinVer = Windows XP report "PlatformNotSupportedException" (TurboTax 2012, Adicom PNV, GOG.com downloader) CLOSED FIXED View
32830 TurboTax 2012 wants dwmapi.dll.DwmAttachMilContent (Vista/Win7 mode) CLOSED FIXED View
32847 Microsoft Expression Design 4 (Free Version) installer needs windowscodecs IcoFrameDecode_GetThumbnail impl CLOSED FIXED View
33506 Microsoft Expression Design 4 (Free Version) crashes when quickly populating main menu items (dropdown sub-menu drawing) CLOSED FIXED View
33572 Windows Download Integrator 3.x needs IWbemServices::ExecNotificationQueryAsync CLOSED FIXED View
34399 .NET 3.x/4.x WPF based installers/apps require windowscodecs.dll ComponentFactory_CreateBitmapFromHBITMAP implementation CLOSED FIXED View
36461 Multiple .NET 4.0 applications fail on startup, WPF message dispatcher unexpectedly receives messages during 'CoWaitForMultipleHandles' call with 'COWAIT_ALERTABLE' flag (Visual Studio 2010, BgmHkClient) NEW View
38062 .NET 2.0/3.x/4.x applications and games using System.Net.NetworkInformation NetworkAddressChangedEventHandler crash on startup CLOSED FIXED View
38387 Multiple .NET 4.x WPF applications abort with 'Unrecoverable system error' in Win7 mode (dwrite font family resolution must be case-insensitive) CLOSED FIXED View
43408 Quest 5.7.x (.NET 4.0 WPF app) crashes on direct access of MIL4 (Media Integration Layer, wpfgfx_v0400.dll) to internal bitmap struct/class impl (depends on exact layout) NEW View
44562 .NET 4.x - rundll32.exe - Error messages when running any application or starting wine after update RESOLVED INVALID View
45537 Microsoft .NET Framework 4.x installation fails with Wine 3.13 in 64-bit WINEPREFIX CLOSED FIXED View
47949 .NET 4.x and later do not run on MacOS with 64 bit prefix NEEDINFO View

Show open bugs

HowTo / Notes

Get winetricks!

You need to install winetricks first (see more details here). This tool make easier to install and configure many things on your Wine prefix. Your distribution probably comes with a package to install it but it could likely be outdated, so, to be safe, download the latest version:

$ wget 'https://raw.githubusercontent.com/Winetricks/winetricks/master/src/winetricks'
$ chmod +x ~/winetricks
Automated installation through winetricks

Last update: 2019-08-17


As usual, create a new Wine prefix (for most applications, it's better to set its own prefix):

$ env WINEPREFIX=$HOME/winedotnet wineboot --init

If Wine prompts for installing Mono, click Cancel.

Install .NET Framework (and optionally install corefonts):

$ env WINEPREFIX=$HOME/winedotnet ~/winetricks dotnet40 corefonts

Use dotnet40 to install .NET Framework 4.0. To install another version of 4.x series, change it to one of the following list:

dotnet45   to install .NET Framework 4.5
dotnet451  to install .NET Framework 4.5.1
dotnet452  to install .NET Framework 4.5.2
dotnet46   to install .NET Framework 4.6
dotnet461  to install .NET Framework 4.6.1
dotnet462  to install .NET Framework 4.6.2
dotnet47   to install .NET Framework 4.7
dotnet471  to install .NET Framework 4.7.1
dotnet472  to install .NET Framework 4.7.2
dotnet48   to install .NET Framework 4.8

... And so on. For example, to install .NET Framework 4.5.2:

$ env WINEPREFIX=$HOME/winedotnet ~/winetricks dotnet452 corefonts

If this doesn't work or you need to install a version not supported by winetricks, try a manual installation (explained below).

Manual installation (Step 1)

Start with a new Wine prefix:

$ env WINEPREFIX=$HOME/winedotnet wineboot --init

Try to install .NET 4.0 through winetricks:

$ env WINEPREFIX=$HOME/winedotnet ~/winetricks dotnet40 corefonts

If it success and you need to install a higher 4.x version, go to Step 2 (next How-To). If it doesn't work (very unlikely) keep reading.


Uninstall wine-mono from your Wine prefix:

$ env WINEPREFIX=$HOME/winedotnet wine uninstaller --remove '{E45D8920-A758-4088-B6C6-31DBB276992E}'

Change reported version to Windows XP, then download and install .NET 4.0:

$ env WINEPREFIX=$HOME/winedotnet ~/winetricks winxp
$ wget 'http://download.microsoft.com/download/9/5/A/95A9616B-7A37-4AF6-BC36-D6EA96C8DAAE/dotNetFx40_Full_x86_x64.exe'
$ env WINEPREFIX=$HOME/winedotnet wine ~/dotNetFx40_Full_x86_x64.exe

Open winecfg dialog:

$ env WINEPREFIX=$HOME/winedotnet winecfg

Go to "Libraries" tab, add a new library substitution called "mscoree" and set it to "Native (Windows)". Close the dialog by clicking OK.

Manual installation (Step 2)

Change reported version to Windows 7:

$ env WINEPREFIX=$HOME/winedotnet ~/winetricks win7

Now you can download and execute the installer for the desired version of .NET (install only the highest version you need):

  • .NET Framework 4.5:
    $ wget 'http://download.microsoft.com/download/b/a/4/ba4a7e71-2906-4b2d-a0e1-80cf16844f5f/dotnetfx45_full_x86_x64.exe'
    $ env WINEPREFIX=$HOME/winedotnet wine ~/dotnetfx45_full_x86_x64.exe /q
  • .NET Framework 4.5.1:
    $ wget 'https://download.microsoft.com/download/1/6/7/167F0D79-9317-48AE-AEDB-17120579F8E2/NDP451-KB2858728-x86-x64-AllOS-ENU.exe'
    $ env WINEPREFIX=$HOME/winedotnet wine ~/NDP451-KB2858728-x86-x64-AllOS-ENU.exe /q
  • .NET Framework 4.5.2:
    $ wget 'http://download.microsoft.com/download/E/2/1/E21644B5-2DF2-47C2-91BD-63C560427900/NDP452-KB2901907-x86-x64-AllOS-ENU.exe'
    $ env WINEPREFIX=$HOME/winedotnet wine ~/NDP452-KB2901907-x86-x64-AllOS-ENU.exe /q
  • .NET Framework 4.6:
    $ wget 'https://download.microsoft.com/download/C/3/A/C3A5200B-D33C-47E9-9D70-2F7C65DAAD94/NDP46-KB3045557-x86-x64-AllOS-ENU.exe'
    $ env WINEPREFIX=$HOME/winedotnet wine ~/NDP46-KB3045557-x86-x64-AllOS-ENU.exe /q
  • .NET Framework 4.6.1:
    $ wget 'https://download.microsoft.com/download/E/4/1/E4173890-A24A-4936-9FC9-AF930FE3FA40/NDP461-KB3102436-x86-x64-AllOS-ENU.exe'
    $ env WINEPREFIX=$HOME/winedotnet wine ~/NDP461-KB3102436-x86-x64-AllOS-ENU.exe /q
  • .NET Framework 4.6.2:
    $ wget 'https://download.microsoft.com/download/F/9/4/F942F07D-F26F-4F30-B4E3-EBD54FABA377/NDP462-KB3151800-x86-x64-AllOS-ENU.exe'
    $ env WINEPREFIX=$HOME/winedotnet wine ~/NDP462-KB3151800-x86-x64-AllOS-ENU.exe /q
  • .NET Framework 4.7:
    $ wget 'https://download.microsoft.com/download/D/D/3/DD35CC25-6E9C-484B-A746-C5BE0C923290/NDP47-KB3186497-x86-x64-AllOS-ENU.exe'
    $ env WINEPREFIX=$HOME/winedotnet wine ~/NDP47-KB3186497-x86-x64-AllOS-ENU.exe /q
  • .NET Framework 4.7.1:
    $ wget 'https://download.microsoft.com/download/9/E/6/9E63300C-0941-4B45-A0EC-0008F96DD480/NDP471-KB4033342-x86-x64-AllOS-ENU.exe'
    $ env WINEPREFIX=$HOME/winedotnet wine ~/NDP471-KB4033342-x86-x64-AllOS-ENU.exe /q
  • .NET Framework 4.7.2:
    $ wget 'https://download.microsoft.com/download/6/E/4/6E48E8AB-DC00-419E-9704-06DD46E5F81D/NDP472-KB4054530-x86-x64-AllOS-ENU.exe'
    $ env WINEPREFIX=$HOME/winedotnet wine ~/NDP472-KB4054530-x86-x64-AllOS-ENU.exe /q
  • .NET Framework 4.8:
    $ wget 'https://download.visualstudio.microsoft.com/download/pr/7afca223-55d2-470a-8edc-6a1739ae3252/abd170b4b0ec15ad0222a809b761a036/ndp48-x86-x64-allos-enu.exe'
    $ env WINEPREFIX=$HOME/winedotnet wine ~/ndp48-x86-x64-allos-enu.exe /q


Verify .NET Framework installation using .NET Framework Setup Verification Tool (Microsoft)

Last update: 2019-01-06


To verify .NET Framework installation(s) you can use the .NET Framework Setup Verification Tool from Aaron Stebner (Microsoft) which checks for proper installation of .NET assemblies and registry entries:

$ wget 'https://msdnshared.blob.core.windows.net/media/2018/05/netfx_setupverifier_new.zip'
$ unzip netfx_setupverifier_new.zip
$ env WINEPREFIX=$HOME/winedotnet wine ~/netfx_setupverifier.exe

Select the .NET Framework version you want to verify and evaluate the log file manually if verification failed.

fixme:shell:URL_ParseUrl failed to parse ...

URL_ParseUrl FIXME messages on console when running/installin­g .NET apps are harmless and can be safely ignored. Example console output:

fixme:shell:URL_ParseUrl failed to parse L"mscorlib"
­
Manually trigger rebuild of the Global Assembly Cache (GAC) after .NET Framework installation

Use the following command to manually trigger GAC rebuild after .NET Framework installation (or if WINEPREFIX changed due to Wine update):

$ wine "c:\\windows\\Microsoft.NET\\Framework\\v4.0.30319\\ngen.exe" update

Some errors while loading dependent modules that are not GAC'd yet are expected and can be ignored.­

The application requested process termination through System.Environment.FailFast

If a .NET application exits with the following message in console:

err:eventlog:ReportEventW ...
Description: The application requested process termination through System.Environment.FailFast(string message).\n
Message: Unrecoverable system error.\n
Stack:\n
at System.Environment.FailFast(System.String)\n
at MS.Internal.Invariant.FailFast...

Some of Wine's truetype fonts are still not in shape of being a complete replacement for Windows ones, causing errors.

You must use 'winetricks corefonts' recipe to work around this problem!

System.Window.Markup.XmlParseException when starting .NET apps

If a .NET application exits with the following message in console:

err:secur32:SECUR32_initSchannelSP TLS library not found, SSL connections will fail
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.
fixme:rpc:RpcBindingSetAuthInfoExW unsupported AuthnSvc 10

You are missing the samba/winbind component which is essential for certain Wine functionality.

Please install winbind with your distribution package manager!

To run this application, you first must install one of the following versions of the .NET Framework: .NETFramework,Version=v4.0

If you encounter this error, the .NET4 app basically requests .NET 4.0 Full Framework. The default for .NET 4.0 Framework is "Client Profile".

Workaround: If your .NET4 application is called "foo.exe", rename "foo.exe.config" to something different and run again.

If this file is missing the CLR assume that your app is targeting NET4 Client Profile by default (which should work out in most cases).­

This links explains the differences and implications: Microsoft MSDN blog

Comments

Back