Book a Demo

Author Topic: Deployment Question  (Read 6351 times)

Tom C

  • EA Novice
  • *
  • Posts: 14
  • Karma: +0/-0
    • View Profile
Deployment Question
« on: March 19, 2010, 07:23:13 am »
I hope this is not a dumb question, but all of the topics I have found explain how to deploy an AddIn as a DLL. I created a VS2008 solution that included the CS_AddInFramework project which I downloaded and 1 additional project that I developed. The solution builds as an EXE as opposed to a DLL.

Is there a way to deploy this solution to another machine that has EA? I added the registry entry, copied the files to the EA directory and registered the EXE using [full path to EXE] /REGSERVER. EA does not recognize the AddIn.

Do I need to redo the project as a DLL as opposed to an EXE? I do have a couple of WinForms in my solution if that makes a difference.

Thanks for any help.

g.makulik

  • EA User
  • **
  • Posts: 355
  • Karma: +0/-0
    • View Profile
Re: Deployment Question
« Reply #1 on: March 19, 2010, 08:26:14 am »
Hi,

There aren't any "dumb questions" at all, didn't you learn that at school? ;)
I also experienced diverse problems deploying an EA AddIn using a VS2005 setup project. Some cliffs I went around were
* install automatically to the EA program folder
* doing the registration from the setup

and in general it works. I'm also loading a ressourced profile using the EA_OnInitializeTechnologies AddIn event.
But I still have troubles to enable the MDG technology stuff sometimes, and the alternate graphics for stereotypes from my profile(s) behave pretty strange :P ...
If you'd like to have it though, leave me your eMail (as PM) and I'll  hand over the C# sources to you.

Have a nice evening,
g.
Using EA9.3, UML2.3, C++, linux, my brain, http://makulik.github.com/sttcl/

Geert Bellekens

  • EA Guru
  • *****
  • Posts: 13523
  • Karma: +574/-33
  • Make EA work for YOU!
    • View Profile
    • Enterprise Architect Consultant and Value Added Reseller
Re: Deployment Question
« Reply #2 on: March 22, 2010, 08:23:41 pm »
Tom,

I think indeed you'll need to build a dll rather then an exe. (should be an option somewhere).
Then you'll need to make sure the dll is COM visible, and register is using regasm with the option /codebase (or have VS take care of that for you)

As for deployment, I created an installation project in VS for each of my addins, which works pretty good. The addins get rolled out via SMS, but they required some special treatment because it has to set a key in the HKEY_CURRENT_USER.

Geert

Tom C

  • EA Novice
  • *
  • Posts: 14
  • Karma: +0/-0
    • View Profile
Re: Deployment Question
« Reply #3 on: March 23, 2010, 05:54:43 am »
I have made a DLL, but I am having an issue deploying it to a Windows Vista 64 bit machine. The registry entry was added with the appropriate value for the entry point and I was able to register the assembly successfully with REGASM.

Within EA AddIn manager, it says that there is an error. Anyone had issues deploying to Vista 64 bit?

Thanks,

smendonc

  • EA User
  • **
  • Posts: 148
  • Karma: +5/-0
  • I love YaBB 1 Gold!
    • View Profile
Re: Deployment Question
« Reply #4 on: March 23, 2010, 08:16:45 am »
Just a thought did you build as a 32 bit or 64 bit dll?

I haven't cross built for at least a couple of years but seem to remember that EA being a 32 bit application requires a 32 bit dll.

Stan.

g.makulik

  • EA User
  • **
  • Posts: 355
  • Karma: +0/-0
    • View Profile
Re: Deployment Question
« Reply #5 on: March 23, 2010, 04:41:54 pm »
Quote
The registry entry was added with the appropriate value for the entry point and I was able to register the assembly successfully with REGASM
These steps are at least autonatable, and made sure to do the right things for particular Windrops OS versions, using a VS2005 or VS2008 setup project. If its sure that this works well with a 'lets say' simple and stable Windrops OS (e.g. XP) variant, you should proceed with cross-compiling for a Windrops 64 bit version (which are widely known to show strange behavior in various ways).

Just my 0.02 EUR, hope they help a bit,
g.
Using EA9.3, UML2.3, C++, linux, my brain, http://makulik.github.com/sttcl/

Tom C

  • EA Novice
  • *
  • Posts: 14
  • Karma: +0/-0
    • View Profile
Re: Deployment Question
« Reply #6 on: March 23, 2010, 11:48:32 pm »
I was able to get this working. I'm not sure what the root cause of the issue was, but I was able to get the DLL registered and recognized by EA on Vista 64 bit. I did compile the DLL as a 32 bit DLL and also strong named the assembly.

I really appreciate all of your help and I'm sure it was just my lack of experience that was the problem. Thanks again for your replies and sharing your experience with me.  :)

Paolo F Cantoni

  • EA Guru
  • *****
  • Posts: 8626
  • Karma: +259/-129
  • Inconsistently correct systems DON'T EXIST!
    • View Profile
Re: Deployment Question
« Reply #7 on: March 24, 2010, 11:03:36 am »
Hi Tom,

Perhaps you could formally document your steps here - to save the rest of us some heartache...

TIA,
PAolo
« Last Edit: March 24, 2010, 11:05:41 am by PaoloFCantoni »
Inconsistently correct systems DON'T EXIST!
... Therefore, aim for consistency; in the expectation of achieving correctness....
-Semantica-
Helsinki Principle Rules!