installer for Revit 2015

installer for Revit 2015

CADdaddy.com
Collaborator Collaborator
791 Views
4 Replies
Message 1 of 5

installer for Revit 2015

CADdaddy.com
Collaborator
Collaborator

Hi there,

 

I'm trying to create an installer for my Revit addin.  I've been creating a single 32 bit .msi installer for years that has worked great on both x86 and x64 systems.  Now that I've upgraded to VS2013 InstallShield is used for the installer and it doesn't seem to allow any x64 merge modules in a 32 bit installer package.

 

If I look further in the log file I see that the merge module in question must be "Visual C++ 10.0".  I didn't add that as a reference so I'm guessing that it is a dependent of either RevitAPI.dll or RevitAPIUI.dll.  Am I on the right track here?  Does this mean I now can't create a single unified install program that works for both x86 and x64?

 

James LeVieux

www.CADdaddy.com

james@CADdaddy.com

0 Likes
792 Views
4 Replies
Replies (4)
Message 2 of 5

Anonymous
Not applicable

I've used NSIS http://nsis.sourceforge.net/ for projects in the past.  Open-Source and their website has every conceivable example.

 

I'm creating my first Revit installer.  Do you have a list of all Revit version installation paths?

 

 

Regards,

Randall Toepfer

zydecodigital.com

0 Likes
Message 3 of 5

gopinath.taget
Alumni
Alumni

Hello,

 

Your question is not completely clear but you seem to be saying that unless you add the merge module for VC++ 2010 to the installer project,  you are not able to merge the 64 bit portion of your installer to the 32 bit MSI project? Is this an accurate description of the problem?

 

If so, this does not make a lot of sense and I think some information is missing. You can use a free tool like dependency walker to determine which module in your app depends on a specific library. But if you are using VS 2013 to create the installer, the dependencies should be automatically referenced. Are there any modules that are linked to at runtime in your project (dynamically)? That would be one reason why VS would not be able to detect library dependency.

 

I really need more information on the problem to help better.

 

Thanks

Gopinath

0 Likes
Message 4 of 5

CADdaddy.com
Collaborator
Collaborator

Hi Gopinath,

 

Actually it is just the opposite.  All my stuff is targeting "any CPU" and the VC++ runtime is preventing my setup project from building as a 32 bit build.  I would love to just get rid of it.  I make no (direct) reference to it in my code so by elimination it appears to be required by revitAPI.dll or revitAPIUI.dll or Installshield.  The other possibility is that something that I am referencing uses VC++ runtime as a reference and I was never aware of it until I was forced to start using Installshield.

 

Since it is so easy to install a Revit addin I've instead created a Window form project to install and uninstall my addin.  So far so good...

 

James

0 Likes
Message 5 of 5

gopinath.taget
Alumni
Alumni

Hello,

 

Yes, the only way to be sure is by process of elimation and manually check the modules you are referencing with a tool like dependency walker.

 

Glad you have a working solution though.

 

Best Regards

Gopinath

0 Likes