Select to view content in your preferred language

ArcObjects in ArcGIS Desktop 9.3.1 and 10

2994
12
01-03-2011 08:35 AM
JamesCrandall
MVP Alum
Ok, I am having diffiuclty locating an answer on this and hope someone could help.  I have several applications that I maintain/support across an organizations IT infrastructure, all are developed with .NET Framewrok 3.5 SP1 and are all ICommand/ITooblar interfaces that run in ArcGIS Desktop 9.3/9.3.1 versions.

Will these need modification to be installed with ArcGIS Desktop 10?

1.  Will I need to bind these components to ArcGIS? For ex, will I need to include:

'Insert this line before invoking any ArcObjects to bind Engine runtime.
ESRI.ArcGIS.RuntimeManager.Bind(ESRI.ArcGIS.ProductCode.Desktop)


2.  Will my existing Setup.exe packages still function?  Do they need modification?

Thanks for any input.

james
0 Kudos
12 Replies
JamesCrandall
MVP Alum
The solution in that link is pretty much the same thing as the code I posted except they're putting the installer class in its own project.  They then add new custom actions to the installer project to call this installer class.  I used the same installer class that I had been using just so that I wouldn't have to remove the old custom actions and add new ones (not that it would take any real effort to do so).  The big difference between their solution and mine is how the installer class get the path to your assembly.  In my code, I'm using the Reflection namespace to get the needed path.  It's easy and it works.  Their solution is getting the path through a property you have to set inside your installer project.  This is what they're doing in the walkthrough when they are setting the CustomActionData property in the custom action properties dialog.  If you use this solution, you'll have to change this so that it uses the location of the assembly you want to register.  I haven't tried it but you'll probably need to change the value to something like this:  /arg1="[TARGETDIR]\yourAssemblyName.dll".  This is assuming you're installing the assembly directly to the target directory.  Othewise you'll also have to append whatever subdirectory path you're installing to before the assembly filename.


I'd rather just use your approach -- I am all about simplicity.

Thanks again for your comments, I appreciate it.

james
0 Kudos
PhilBlondin
Deactivated User
Can you guys give some help on this.  I'm using the sample that Neil provided and it will register and unregister if I just do a install and then unistall right after it.  If I install then open arcmap and test the tools, then uninstall the toolbar, the dll gets removed before the unregister happens.  Have either of you experienced this?  I have the un registration in the before uninstall sub.
0 Kudos
PhilBlondin
Deactivated User
Nevermind, thanks
0 Kudos