Sparx Systems Forum
Enterprise Architect => Automation Interface, Add-Ins and Tools => Topic started by: zalbina on October 16, 2012, 08:13:07 pm
-
Hello,
I've registerd my dll and created key successfully, but when EA starts in "Manage Add-Ins" the Status of it is "Error - Missing". I tried to do the same on different computes, but get the same result. I checked everything, but did not find the problem.
Thanks.
-
Forgot to mention that I'm running the application (VS) as administrator. And after distribution of my dll on other computers I've the same issue "Error-Missing".
Thanks.
-
Haven't we discussed that issue already?
q.
-
We did, but it did not work out anyway :(.
-
Try calling one of the operations EA will call (EAsomething()) from an excel VBA macro. If that works then the registration of your dll was successful.
Geert
-
But how can it help to work with my ea addins? I'll try this.
-
You want to know where the problem is right?
If you can call your dll from Excel VBA then the COM Interop registration is not the problem.
Geert
-
Hello,
I've built the MSI installer package following the Guru Geert instructions with SharpDevelop and Wix. It's very nice tools to work with, but ... SAME PROBLEM!!!!! "ERROR-MISSING". HOW COULD IT BE :o?
Thanks.
-
As said before, you first need to determine the cause of the problem.
This could be
- COM interop registration of your dll
- Error in EA Addins reg key value
- Error in the code (like you forgot a required EA_ operation)
As long as you don't determine that there's not much we can do. :-/
Geert
-
I see. I have not been trying the Excel yet, but I did try to deploy my dll using MSI package on different work stations in our network and it did work on some of them and did not on a rest. Could it be security issue or sort of it?
-
... or perhaps your add-in is using other resources that are missing, things like .net framework, or certain ocx-es or 3d part dlls? .... or ...: like Geert said, if you haven't got a clue use another method to access your add-in dll to rule out any issues that are not ea-related.
If Excel is not available on all workstations write a small vbscript in EA that uses createobject to load your assembly and run some method in it. If you have tested that in EA, run the script on other workstations in WSH or whatever scripting engine is available and check the err object for clues,
Paulus
-
OK, I've added MyAddin dll from the References. After that I wrote in Excell VBA:
Dim abc as New MyAddin.MyAddinClass
abc.CheckDLL 'CheckDLL function calls for Message Box
I've got the message:
"ActiveX component can't create object".
So ...
-
... so that tells you the current problem is not related to EA but the deployment of the DLL itself.
Brute force: start with a version of your add-in with no dependencies (comment the code) and call again from VBA. If that works, start adding code/dependencies until the problem reappears. Then check the offending dependency. Note that even if the registry looks OK it may be incorrectly installed or be corrupt.
Paulus
-
And if I created dll but don't see it in References it means the problem is with dll registration? How could it be? The VS 10 does it by itself and I also tried to register the dll with regasm. The registration was OK.
-
Maybe i misunderstand but my point is that you now have a simple testcase reproducing the error that doesn't require knowledge of EA to solve, just VS, COM and VBA.
So if you can't get an answer here (and this seems to be the case) there are plenty, and probably better, places where you can. Eventually your search might lead you back to EA but for now that's not the case.
I suggested the brute-force method since that's what i usually do if i'm stuck like this.
best regards,
Paulus
-
Yes, I did what you suggested. The problem is that I've crated with VS 10 dll project. I'm running the VS in Admin mode and WITHOUT ANY CODE IT DOES NOT WORK :(!!! I DID WRITE NOTHING! What could be wrong?
-
I'm sorry, but i can't help you with that. I'm using VS 2010 as well and i had some startup problems with DLL's but not something like this. :-/
-
This is a serious problem for me. It seems like VS 10 is a problem maker otherwise I don't know what to think. Someone can recommend me something?
-
If you think VS is the problem try SharpDevelop:
http://www.icsharpcode.net/opensource/sd/
Personally I think this is a classical case of PEBKAC.
Geert
-
Personally I think this is a classical case of PEBKAC.
;D
-
Well, I don't think so. Not only me have this problem in my office.
-
OK, I've installed SharpDevelop, made assembly COM-visible. "Register for COM interop" means use the RegAsm utility provided with the .net framework to register the dll, right? I did it also, but SAME THING :(. I run SharpDevelop in admin mode. I can built the installer for it, but I need to debug my dll with EA first. Sad story :(.
-
No "register for COM interop" means you have to tick the appropriate checkbox in your IDE.
But really, if you can't figure this out on your own I wouldn't even try to start programming an add-in for EA. ::)
Geert
-
But SharpDevelop does not have this Build tab with project properties and checkbox "Register for Com interop" as well. I found out that regasm does this job instead.
-
Sorry, I found it and I'll try again.
-
IT STARTED TO WORK. 100% OF THISS SUCCESS IS YOURS, GEERT!!!! BUT WHAT CAN BE WRONG WITH VS 10?
THANKS A LOT AGAIN !!!!!!!!!!!!!!!!!!!!!!!!!!!!!
-
No "register for COM interop" means you have to tick the appropriate checkbox in your IDE.
But really, if you can't figure this out on your own I wouldn't even try to start programming an add-in for EA. ::)
Geert
Sorry GEERT,
But she's a great programmer. ;)
-
No "register for COM interop" means you have to tick the appropriate checkbox in your IDE.
But really, if you can't figure this out on your own I wouldn't even try to start programming an add-in for EA. ::)
Geert
Sorry GEERT,
But she's a great programmer. ;)
Sometimes simply all this windoze stuff is shit :P ...
-
Often it feels like the windoze programmers went nuts too...
q.
-
I wanted to write sh** but YABB didn't let me and changed it automatically :P
-
Are all Americans (Australians?) prude? No. Just most of them.
Somehow I managed to get these f-words to appear in YABB but I forgot how.
q.
-
Are all Americans (Australians?) prude? No. Just most of them.
I know of many Americans and Australians who are very creative in their swearing. However, the strength of swear words is very much tied to their taboo nature and so it benefits prudes and non-prudes alike if we continue to ban their use on this forum.
-
I think I know what you mean. It's just really funny for (at least) Germans to see that kind of attitude. I guess it's because during times of the Wild West most of those prude Germans moved to America so we got rid of them ;)
q.