In my spare time, I double as Senior Project Wrangler on the #develop open source project. One of my duties is Release Manager, and thus I also have to deal with maintaining the setup scripts, for which we chose NSIS.
One of the nice challenges I now stumbled into is this: How do I install assemblies in the global assembly cache on a machine that has the runtime only? With no gacutil at hand, the next best thing I came up with was to write a minimalist clone myself, one that is capable of installing and removing assemblies only.
The result of my quest is attached to this post, the code is BSD-licensed. Note that the project files are for #develop (of course).
GacUtil2.zip (22.43 KB)
public class MereMortalProgrammer
{
}
public class Expert : MereMortalProgrammer
{
}
public class Blog
{
public void DailyWork()
{
Expert e = this.Pose() as Expert;
}
public MereMortalProgrammer Pose()
{
return new Expert();
}
}