Tuesday, February 06, 2007

Visual Studio 2005 and "writing" to the registry

I've spent the last few weeks learning how to approach Visual Studio 2005. I have no prior experience with .NET, CLR, managed code, and interop until now. I've been digging through videos, forums, blogs, and newsgroups (mainly through MSDN) to find information relative to my goal. My goal is to make a couple very specific client socket operations in a managed assembly (read: DLL) format. I have to make it part of the global assembly cache, so there are minor requirements to achieve beyond learning the language, libraries, and IDE.

Regardless, there is a lot to learn, and I think Microsoft is heading in a good direction with their C++ compiler group. I also (coming from VS6.0) think the IDE has advanced in many good ways. Least of all of these is the tabs at the top, and the tabbed toolbars on all sides (that you can hide). The only thing I'm worried about, is that M$ will limit what each programmer is allow to use and not use. Yeah, we can use sockets and have access to the registry...but do we really have these things? They're taking away the lowest level of abstraction, in order to provide user friendly tools, so someday they will be able to control every aspect low level access. They will tell us when we can write to the registry, and what and where. I'm not ready for this yet.

This will relate Windows to an OS like Apple IIe... firewalled by hardware. If Microsoft doesn't allow development beyond a certain level, they are essentially fire-walling their OS as if it were impossible to mangle anything below that level. We could, of course, hack the assemblies, but who wants to do that with managed code? With the program memory that will be used in the heap because of .NET libraries, there's a lot of assembly to look through before finding how to hack the registry. We might be getting the best treatment by the Visual Studio C++ compiler and IDE past, but the abstraction and development depths are being sacrificed.

What do you think?

No comments: