The Visual Studio command line is something that many AVR coders have never used, or used very rarely. It makes at least three .NET components available that may be useful to AVR coders.

  • ILDasm - The IL Dissasembler, ILDasm.exe, lets you investigate the contents of a .NET assembly (a DLL or EXE). You can read more about it here.

  • MSBuild - The MS project build engine, MSBuild.exe, drives how your projects are compiled. Every time you compile a project in Visual Studio MSBuild is launched in the background to perform that compile. MSBuild is especially handy for web developers because MSBuild can be used to build a project from the command line. You can create great DevOps workflows using MSBuild from the commandline to compile and deploy your web projects without needing to do it interactively from within Visual Studio. This is a topic we'll revisit in another article.

  • RegAsm - Assembly Registration , RegAsm.exe, registers .NET assemblies for use with COM. This enables you to create a great deal of interesting AVR for .NET components that can be used by your AVR Classic applications.

The purpose of this article is to able to make RegAsm quickly and easily available inside Visual Studio. We're launching a series of articles on how you can create powerful class libaries with AVR for .NET that surface .NET goodies to AVR Classic. For example, the other day a customer needed to create a salted, hashed password for his AVR Classic application. Effective encoding of passwords for storing in databases is crucial these days and .NET offers great facilities to do this—and AVR Classic does not. We helped the customer create a class library with AVR for .NET that quite nicely solves the problem for both AVR for .NET and AVR Classic. Another time we helped a customer add regular expression capabilities to AVR Classic with this technique.

.NET includes many facilities that would be handy for AVR Classic applications including advanced math functions, string operations, HTTP requests, Windows file system access, SQL Server and other database access with ADO.NET, and even using .NET Windows forms from AVR Classic, which would make all of .NET's Windows controls available to AVR Classic. This interoperability should be especially important for AVR Classic shops needing to migrate their apps to AVR for .NET.

We'll address the nuts and bolts of how .NET -> Classic integration comes together in future articles. However, all of those articles require that you have instant, easy access to RegAsm. It is the key to the .NET to COM interoperabilty. For any shop with AVR Classic and an eye on moving to .NET, bookmark this article!

Read the full technical article on