Creating an all-in-one .Net Executable

I discovered a nice utility that accompanies Visual Studio; at least it is in Visual Studio 2015. It is called ilmerge. It specific purposes is to fold an executable along with any dependent DLLs into a new executable that requires no external dependencies. You might need this for those time when you want a single executable on, say, a remote system.

Here is a command that binds two .Net libraries, one a distributed Microsoft API and the other is part of my program.

ilmerge /log:ilmerge.log `
/lib:C:\Windows\Microsoft.NET\Framework\v4.0.30319 `
/target:winexe /targetplatform:v4 `
/out:FreeBytesC.exe `
/ndebug FreeBytes.exe `
FreeBytes.exe FSharp.Core.dll VolLib.dll

Good F# Example

After a decade of Linux database work, a lot more of my time is being spent on the Microsoft platform, using Visual Studio. Because our enterprise is on Windows 7, Visual Studio 2012 is as high as I can use.

Over the past six years, I’ve learned enough Clojure to write small applets; added to my Perl knowledge; and ported a VB application to C#.

So, I am learning F# now, and was looking for a good example. I was lucky to find one that includes posting a dialog box. I had to tweak a couple of things, because this example was written for Visual Studio 2010, but it is the first good example I have found for F#.

C#, F# and .Net

My Clojure learning continues by starting on a small client-server application to compare two reports using a MySQL database. There is Python code to maintain, some part of a Django application and other standalone bots.

My platforms are mixed bag living between Windows desktops and servers and Linux servers where Python and JVM-based languages make sense. What therefore would possess me to think about learning another language?

Well, last week I unpacked the wrong tool kit from a vendor. I have the correct tool kit now, but looking at the .Net C# samples in the wrong tool kit made me wonder. Should I be learning C#? What about learning F#? If learning one of these languages would be a smart thing, then what about this book from Manning?

In thinking about my next job, will the platform be Windows or .Net, and does it make a difference?

Will Clojure be a good language for my resume? (Even if the answer were no, it would not deter my learning Clojure.)

What about C# or F#?

Well, at least it is worth some research.