.NET Framework 3.5 machine.config

Hi there,

For those out there asking the question: where is my machine.config on my ASP.NET server, read on.As you all know the machine.config is the master configuration file and the Web.config files overwrite certain values (like the .htaccess overwrites the httpd.conf in Apache).
Some values – like the database transaction timeout – are machine-only settings, which mean they can’t be supplied in the Web.config file.
Instead, it must go into the machine.config. Let’s go looking for that file, shall we?

Easier said than done. Looking through some forums I figured out it was under $WINDOWS_ROOT\Microsoft .NET\Framework\v2.0*\CONFIG\machine.config (with * being the minor version of the 2.0 framework).

Two problems arise here:

  • I also have a Framework64 folder under Microsoft.NET.
  • I want to set it for the 3.5 version, not the 2.0 version.

Both are simple problems, but take some time to find out.
The first problem is easily tackled by going to the Task Manager and checking out whether you have w3wp.exe or w3wp*32.exe. If you have the former, go look in the Framework64 directory as you’re running the 64 bit version of the framework. If you have the latter, edit in the Framework folder.

The second problem is a bit trickier, but still easily solved. As the machine.config is related to a certain CLR version, both 2.0 and 3.5 (and hence 3.0) are on the same CLR version, so you can edit the CONFIG\machine.config in the 2.0 folder. Simple, as there is no other folder (3.*) containing a machine.config file.


Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s