Message 1 of 2
C# AddIn Registration
Not applicable
10-07-2007
05:53 AM
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report
Right now I'm struggling to write an AddIn that will load. I have written a few very simple addins in C# based on the SDK samples. I basically removed all functionality and left the ApplicationAddInServer concrete class intact, only to display a message box in Activate().
For some reason, the AddIns will not load. My suspicion is that I've done something wrong with the registration. I changed the GUID for my assembly and also for my concrete ApplicationAddInServer implementation. I selected the option to make the assembly COM-visible and built the assembly. I also tried using regasm to register the assembly, but it made no difference.
So I'm wondering - I'm just going through the registration motions without a real concept of what is actually being accomplished. Could someone explain to me, in plain English, exactly what Inventor requires of an AddIn (wrt registration specifically).
Another anomaly that I've seen in my attempts to make an AddIn functional is that I create my .dll, register it, and open up Inventor. My AddIn will show up in the list of AddIns, but it simply will not load. I can check and uncheck the boxes all day, but I have not once seen my message box display (the one I am showing in ApplicationAddInServer.Activate()). This indicates to me that the AddIn is not actually being loaded, and not calling the Activate() method.
This brings up my final question, which regards Interop.Inventor.dll. Every time I build my project, it also updates that .dll in my project folder. Could that be the reason why the AddIn will not load in Inventor (while showing up on the list of AddIns)? If so, how can I access the Inventor object library without including that .dll in the build? Or what is another workaround?
Thanks in advance for helping me out. I'm sure I'll appreciate it.
-Tobe
For some reason, the AddIns will not load. My suspicion is that I've done something wrong with the registration. I changed the GUID for my assembly and also for my concrete ApplicationAddInServer implementation. I selected the option to make the assembly COM-visible and built the assembly. I also tried using regasm to register the assembly, but it made no difference.
So I'm wondering - I'm just going through the registration motions without a real concept of what is actually being accomplished. Could someone explain to me, in plain English, exactly what Inventor requires of an AddIn (wrt registration specifically).
Another anomaly that I've seen in my attempts to make an AddIn functional is that I create my .dll, register it, and open up Inventor. My AddIn will show up in the list of AddIns, but it simply will not load. I can check and uncheck the boxes all day, but I have not once seen my message box display (the one I am showing in ApplicationAddInServer.Activate()). This indicates to me that the AddIn is not actually being loaded, and not calling the Activate() method.
This brings up my final question, which regards Interop.Inventor.dll. Every time I build my project, it also updates that .dll in my project folder. Could that be the reason why the AddIn will not load in Inventor (while showing up on the list of AddIns)? If so, how can I access the Inventor object library without including that .dll in the build? Or what is another workaround?
Thanks in advance for helping me out. I'm sure I'll appreciate it.
-Tobe