There is something called CAS (Code Access Security) in .NET. The CLR handles your program differently when it is from another source (so Local Intranet, Internet and Local Disk are handled differently)
When you are loading from CD, the settings would revert to a mode with less privileges.
You can find more on CAS here on MSDN.
You can request privileges by adding and configuring the app.manifest file.