.NET Framework

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

Application Details:

Version: 2.0
License: Free to use
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

Installation and applications

What does not

I don't know! ;)


What was not tested

OleDB (new feature), all libraries;)

Hardware tested


  • GPU:
  • Driver:

Additional Comments

You need use native l_intl.nls to complete installation! I installed this using HOWTO in the down of this test. After this, I installed Visual C++ 2005 by Microsoft, because before start of every program wine said error! After this, all programs do some lag before starting. After reboot, I don't see this lag.

selected in Test Results table below
Operating systemTest dateWine versionInstalls?Runs?Used
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
3972 .NET Framework 2.0 installation fails on installation of assemblies CLOSED FIXED View
8499 AutoWikiBrowser doesn't work (uses .NET 2 framework) CLOSED FIXED View
10467 Microsoft .NET Framework 2.0 requires l_intl.nls (unicode casing tables) CLOSED FIXED View
10506 .NET applications which use 'System.Security.Cryptography.DSA' need crypt32 DSS provider NEW View
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
11228 .NET Framework 2.0 Registry Bug CLOSED FIXED View
11964 .NET Reflector 6.x user interface is distorted CLOSED FIXED View
12031 scambled fonts (encoding?) with .NET 2 application CLOSED WORKSFORME 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
12458 Multiple apps fail due to RichEdit ITextDocument_fnRange stub (MySQL Workbench, BlitzMaxDemo137) CLOSED FIXED View
15369 WINEDEBUG=+relay results in unhanded exception CLOSED WORKSFORME View
15545 Photomatix Pro works in 32-bit but crashes in 64-bit Ubuntu CLOSED FIXED View
15649 Ultima Online with Razor (.NET) often crashes CLOSED INVALID View
15670 .NET applications that make use of System.IO.IsolatedStorage crash (missing "HKLM\Software\Microsoft\Windows NT\CurrentVersion\ProfileList\" registry subkey) CLOSED FIXED View
15804 Multiple .NET applications fail to start, reporting exception "Culture name 'ga-ie' is not supported." (support for alternate calendar types needed) CLOSED FIXED View
16258 .net 2.0's ngen.exe hangs while compiling a particular assembly CLOSED WONTFIX View
16418 Keyword corral crashes (LsaLookupNames2 returns ERROR_NONE_MAPPED) CLOSED FIXED View
16445 Microsoft .NET Framework 2.0 refuses to install, reporting 'IE5.01 or higher version is required prior to installing Microsoft .NET Framework' (broken WINEPREFIX) CLOSED INVALID View
16491 Pindersoft DotNet Test hangs when advancing months (monthcal day state/notification data handling) CLOSED FIXED View
16626 NBC Direct installer can't find resources CLOSED FIXED View
16755 installation of .NET 2.0 crashes wineserver CLOSED DUPLICATE View
16956 Lexware: Installation of .Net 2.0 SP 1 fails CLOSED FIXED View
17161 Provide lodctr.exe tool to prevent misleading process spawn failure console messages (.NET installers) CLOSED FIXED View
17922 LiveZilla 3.x/4.x (.NET 2.0 app) aborts due to unimplemented HTMLDocument_execCommand CLOSED FIXED View
17991 QueryPathOfRegTypeLib fails to locate typelib when (major.minor) = (0xffff.0xffff) CLOSED FIXED View
18025 .NET 2.0 Regasm.exe typelib exporter needs ICreateTypeInfo2::SetCustData CLOSED FIXED View
18510 Microsoft .Net 20 SP1 Installer's text is unreadable CLOSED FIXED View
18531 .NET based apps using WebBrowser Control need OleInPlaceObject_InPlaceDeactivate properly implemented CLOSED FIXED View
19529 .NET 2.0: LDAP authorization fails CLOSED FIXED View
19861 Wine should warn when ulimit -n needs raising CLOSED FIXED View
20262 .NET 2.0 not installable due to repeating RegSvcs.exe crashings CLOSED DUPLICATE View
22365 .NET Framework 2.0 installer hangs CLOSED FIXED View
22521 .NET 2.0 SP2 installer fails (RegSvcs.exe bootstrapper expects updated assemblies while GAC update is deferred during install) CLOSED FIXED View
22722 Wine running out of address space (MacOS) CLOSED FIXED View
22724 windows opened by wine has zero size, and cannot be resized CLOSED FIXED View
22805 Can't install 64bit .NET 2.0 (install.exe fails to be mapped at preferred base when being restarted as 64-bit process, shared WoW64) 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
24196 oleaut32: typelib registration should not fail bitness-neutral assemblies (32-bit typelib wrapped in 64-bit PE, x64 .NET 2.0 installer) CLOSED FIXED View
28682 Ragnarok download shows a .NET exception on start (needs Win32_Processor WMI class) CLOSED FIXED View
30162 Microsoft .NET 2.0 Framework: "mscorsvw" compile worker hangs sometimes while generating native images from assemblies in GAC (loader section block reported) 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
30681 Microsoft SQL Server Management Studio Express 2008 installer fails (some .NET assemblies are not updated/patched by .NET service packs containing .msp) CLOSED FIXED View
31652 .NET Framework Setup Verification Tool stopped working with dotnet20sp1 CLOSED FIXED View
31882 Many multithreaded gui apps randomly deadlock in winex11 driver surface section (arial32.exe, Aquanox, Mahaa demo, Total Commander) RESOLVED NOTOURBUG View
32165 .NET installer does not set file dates CLOSED FIXED View
34207 Microsoft .NET Framework 2.0 service pack installers fail 'NGEN service version check' custom action (service not stopped before binary update) CLOSED FIXED View
34593 MS .Net 2.0 x64 installer fails under XP mode (works under win2k3) CLOSED FIXED View
34803 .NET Framework 2.0 SP2 refuses to install on top of .NET 2.0 SP1 (SBSDisabled registry key install blocker detected) CLOSED WORKSFORME View
39863 Microsoft .NET Runtime Optimization Service 2.x terminates prematurely due to failure to hook up registry notifier ('RegNotifyChangeKeyValue' must treat NTSTATUS 'STATUS_PENDING' as success) CLOSED FIXED 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 ''
$ chmod +x ~/winetricks
.NET Framework 2.0 installation

Make sure you operate on a clean 32-bit WINEPREFIX (~/.wine)!

Installation by using 'winetricks' script

Use this option for easy installation of .NET 2.0 Framework. Winetricks will take care of all needed installation prerequisites and work around some problems.


Always use the latest 'winetricks' script from the URL above! Several Linux distributions package outdated 'winetricks' versions, don't use them.

.NET Framework 2.0 Service Packs installation (SP1, SP2)
­­­­Make sure you operate on­ a clean 32-bit ­WINEPREFIX (~/.wine)!

­Installation by using 'winetricks' script

Use this option for easy installation of .NET 2.0 Framework Service Pack(s).

Winetricks will take care of all needed installation prerequisites and work around some problems (.NET 2.0 already installed, Service Packs already applied...).

$ wget


.NET Framework 2.0 Service Pack 1:

$ bash winetricks dotnet20sp1

.NET Framework 2.0 Service Pack 2: ­

$ bash winetricks dotnet20sp2

There is no need to manually install .NET Framework 2.0 be­­fore. Winetricks does this as part of service pack install!­

Unattended installation of .NET Framework 2.0

­See HOWTO Methods: refer to "manual" installation method what steps are needed before running the installer in unattended mode

Example command lines you can use to perform unattended installations for t­he .NET Framework 2.0 installation­:­

Silent installation

These command lines will run the .NET Framew­ork 2.0 setup in fully silent mode. The setup package will extract to a temporary location and installation will begin with no user interaction and no visible UI. The user will see no visible indication that setup is running.­

$ wine setup.exe /q:a /c:"install.exe /q"

Standard unattended installation

These command lines will run the .NET Framework 2.0 setup in standard unattended mode. The setup package will extract to a temporary location and installation will begin with no user interaction. A progress dialog will appear on the screen during installation, and it will disappear when setup is complete. Errors encountered during installation might pop up message boxes during installation if they occur.

$ wine setup.exe /q:a /c:"install.exe /qb"

Unattended installation with no cancel button available in the UI

These command lines will run the .NET Framework 2.0 setup in unattended mode with no cancel button. The behavior of setup is the same as with the command lines above except the cancel button will be hidden on the progress page during installation. This allows the user to know that a setup is in progress but prevent them from cancelling it (unless they kill the process).

$ wine ­setup.exe /q:a /c:"install.exe /qb!"
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\\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 ''
$ unzip
$ 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.

dotnet20sp1 install completed, but installed file ... /c:/windows/assembly/NativeImages_v2.0.50727_32/indexb.dat not found­

If you encounter this error while trying to run 'winetricks dotnet20sp1' recipe:

dotnet20sp1 install completed, but installed file /home//.wine/dosdevices/c:/windows/assembly/NativeImages_v2.0.50727_32/indexb.dat not found­

"indexXX.dat" files get changed (number increments) each time a native assembly is generated and installed into GAC (ngen run).

It's an error in older winetricks versions that relied on these numbers.

You can verify this by running full GAC rebuild (optional):

$ wine "c:\\windows\\Microsoft.NET\\Framework\\v2.0.50727\\ngen.exe" update

After this command new index files have been generated.

Please update your winetricks script to a newer version (see main HOWTO)

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:




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­­