WineHQ

.NET Framework

.NET Framework 2.0, released on 2005-11-07.

Application Details:

Version: 2.0
License: Free to use
URL: http://msdn.microsoft.com/netf...
Votes: 24
Latest Rating: Platinum
Latest Wine Version Tested: 4.13

Maintainers: About Maintainership

Link Codeweavers AppDB Free Download Microsoft .NET Framework 2.0 Redistributable x86 32-bit Free Download Microsoft .NET Framework 2.0 Service Pack 1 Redistributable x86 32-bit Free Download Microsoft .NET Framework 2.0 Service Pack 2 Redistributable x86 32-bit Free Download Microsoft .NET Framework 2.0 Redistributable x86 64-bit Free Download Microsoft .NET Framework 2.0 Service Pack 2 Redistributable x86 64-bit

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

The application that required .NET 2.0 Framework installed and ran successfully.

.NET Framework Setup Verification Tool from Aaron Stebner (Microsoft) which checks for proper installation of .NET assemblies and registry entries reports success.

SP1 and SP2 install and run.

What does not

n/a

Workarounds

What was not tested

n/a

Hardware tested

Graphics:

  • GPU:
  • Driver:

Additional Comments

It it advised to use 'winetricks' script for installation of .NET Framework 2.0 and service packs. Technically it's not required anymore for recent Wine versions. Always use a clean 32-bit WINEPREFIX for .NET installs (Framework + .NET based app)!

selected in Test Results table below
Operating systemTest dateWine versionInstalls?Runs?Used
Workaround?
RatingSubmitter
ShowSolusAug 22 20194.13Yes Yes NoPlatinumKevin Puertas 
ShowUbuntu 16.04 "Xenial" amd64 (+ variants like Kubuntu)Sep 28 20161.9.19Yes Yes Platinuman anonymous user 
ShowArch Linux x86_64Aug 11 20151.7.49Yes Yes Platinuman anonymous user 
ShowFedora 19 x86_64Dec 26 20141.7.33Yes Yes GoldAnastasius Focht 
ShowGentoo Linux x86_64May 03 20141.7.18Yes Yes GoldFarmboy0 

Known Bugs

Bug # Description Status Resolution Other apps affected
10506 .NET applications which use 'System.Security.Cryptography.DSA' need crypt32 DSS provider NEW View
12401 NET Framework 2.0, 3.0, 4.0 installers and other apps that make use of GAC API for managed assembly installation on NTFS filesystems need reparse point/junction API support (FSCTL_SET_REPARSE_POINT/FSCTL_GET_REPARSE_POINT) STAGED View
12457 SharpDevelop 2.2 crashes with NotImplementedException at IWebBrowser2.get_LocationName() NEW View
31882 Many multithreaded gui apps randomly deadlock in winex11 driver surface section (arial32.exe, Aquanox, Mahaa demo, Total Commander) RESOLVED NOTOURBUG View

Show all bugs

HowTo / Notes

Get winetricks!

Install winetricks (more details here) to make easier to configure the Wine prefix:

$ wget 'https://raw.githubusercontent.com/Winetricks/winetricks/master/src/winetricks' -O /usr/local/bin/winetricks
$ chmod +x /usr/local/bin/winetricks
Installation

Last update: 2020-05-03


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 dotnet20 corefonts

Replace dotnet20 with dotnet20sp1 or dotnet20sp2 to install Service Pack 1 or Service Pack 2, respectively.

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 the Wine prefix changed due to a Wine update):

$ env WINEPREFIX=$HOME/winedotnet wine "c:\\windows\\Microsoft.NET\\Framework\\v2.0.50727\\ngen.exe" update

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

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"


err:msi:HANDLE_CustomType34 Unable to execute command

If you see an error message at the end of the installer i­n console like this:

­err:msi:HANDLE_CustomType34 Unable to execut­e command L"\"C:\\windows\\Microsoft.NET\\Framework\\netfxsbs20.exe\" /install"
­

This message is harmless and expected (see my comment here).

This product is not supported on a 64-bit operating system. Setup will now exit.

This is because you are running the 32-bit installer in a WoW64 Wine. ­There are two ways to overcome this:


Method 1: create 32-bit WINEPREFIX

Set environment variable "export WINEARCH=win32", create a new WINEPREFIX and run the installer


Method 2: "hack" to force install into 64-bit WINEPREFIX

It is possible to install 32-bit .NET Framework in 64-bit prefix (shared Wow64 enviroment):

In order to do this: run the .NET installer as follows:

$ wine dotnetfx /C

It will ask you for a folder to put extracted files in. After extraction, go to the folder and open up the "install.ini" in text editor.

Change the value under [setup] section:

BlockOn64Platform=1

to

BlockOn64Platform=0

Now you are ready to run the installer using:

$ wine install.exe

This is only for experts and not the recommended way. Use at own risk! ­

err:eventlog:ReportEventW .NET Runtime version 2.0.50727.42 - Fatal Execution Engine Error (7A05E2B3) (80131506)

If a .NET application exits with the following mes­sage in console:

fixme:advapi:ReportEventW (0xcafe4242,0x0001,0x0000,0x000003ff,(nil),0x0001,0x00000000,0x33b6e8,(nil)): stub
err:eventlog:ReportEventW L".NET Runtime version 2.0.50727.42 - Fatal Execution Engine Error (7A05E2B3) (80131506)"
fixme:advapi:DeregisterEventSource (0xcafe4242) stub

This 'Fatal Execution Engine Error' (80131506) is pretty general and can be caused by many things, for example by bug 10506.­

Unhandled Exception: System.NullReferenceException: Object reference not set to an instance of an object

If you get a crash/backtrace like this in console:

Unhandled Exception: System.NullReferenceException: Object reference not set to an instance of an object.
at System.Resources.ResourceManager.GetSatelliteAssembliesFromConfig()
at System.Resources.ResourceManager.TryLookingForSatellite(CultureInfo lookForCulture)
at System.Resources.ResourceManager.InternalGetResourceSet(CultureInfo culture, Boolean createIfNotExists, Boolean tryParents)
at System.Resources.ResourceManager.GetString(String name, CultureInfo culture)
at System.Environment.ResourceHelper.GetResourceStringCode(Object userDataIn)
at System.Environment.GetResourceFromDefault(String key)
at System.TypeInitializationException..ctor(String fullTypeName, Exception innerException)
at System.Globalization.TextInfo.GetNativeTextInfo(Int32 cultureID)
at System.Globalization.TextInfo.get_InvariantNativeTextInfo()
at System.String.Compare(String strA, Int32 indexA, String strB, Int32 indexB, Int32 length, StringComparison comparisonType)
at System.Security.Util.URLString.PreProcessForExtendedPathRemoval(String url, Boolean isFileUrl)
at System.AppDomainSetup.NormalizePath(String path, Boolean useAppBase)
at System.AppDomainSetup.SetupDefaultApplicationBase(String imageLocation)
at System.AppDomain.SetupFusionStore(AppDomainSetup info)
at System.AppDomain.SetupDomain(Boolean allowRedirects, String path, String configFile)
wine: Unhandled page fault on read access to 0x00000000 at address 0x2de297f (thread 0019), starting debugger...
­

Please read appdb entry HOWTO more carefully! This is bug 10467.

If you followed appdb HOWTO and this problem still occurs you most likely have a corrupted "l_intl.nls" file in your winetricks cache. Update your winetricks script to newer version (contains checksum for detection of corrupted download) or remove "l_intl.nls" from "dotnet20" folder in "winetrickscache" and repeat the winetricks step.

­
ngen.exe hangs while compiling a particular assembly (out of file descriptors)

­Reported in Bug 16258. It seems the PE image generator runs out of file descriptors while writing out native images. T­his is a bug in the Microsoft .NET 2.0 Framework. Use the following workaround if you encounter this bug:­

$ su­
# ulimit -n 4096
­# su your_username
­$ wine your_installer­­
­

Comments

Back