1

I have a C# class library that is COM visible and can be called from Visual C++ 6. It works fine.

Probably a stupid question, but even after Googling for an answer I can't find one. How do I copy and register this on another non-development machine? My machine has gacutil and regasm on it which I am using. However, these are not on the other machine. The only answers I seem to be able to find on Google talk about creating an installation app, but this is overkill for something that will only ever be used internally.

FishBasketGordo
  • 22,904
  • 4
  • 58
  • 91
Jonnster
  • 3,094
  • 5
  • 33
  • 45

1 Answers1

4

Regasm and Gacutil are both installed with the .NET Framework (in C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727 for 3.5sp1, for example, by default).

Since you'll need the framework installed anyways, this should exist on every system.

Reed Copsey
  • 554,122
  • 78
  • 1,158
  • 1,373
  • Ah, I didn't think of that. It's probably that the .NET runtime isn't installed on it. Thanks. – Jonnster Jul 17 '12 at 16:26
  • But from what I just read, gacutil and regasm are not part of the .NET 4 runtime. The runtime is already on the machine. – Jonnster Jul 17 '12 at 16:28
  • @Jonnster Yeah - with .NET 4, you have to install the SDK to get them. In this case, I'd make an installer for your component (I'd probably do that anyways, as anything with deployment requirements [ie: registration] is nicer with installation) – Reed Copsey Jul 17 '12 at 16:31
  • @Reed Copsey - How do I do that? It just seems complete overkill for something that should be so simple. – Jonnster Jul 18 '12 at 09:01
  • I have added a setup project to my solution and set it up. It installs the DLL and TLB to the machine but it doesn't seem to be adding it to the GAC or registering it as a COM component. What am I missing? – Jonnster Jul 18 '12 at 09:52
  • I have this sorted now. Thanks. – Jonnster Jul 18 '12 at 14:34