Installing alike managed addin in 32bit and 64bit Autodesk creator

Installing alike managed addin in 32bit and 64bit Autodesk creator

  • Has got to elope disk aˆ“ no installment essential
  • Little needs (.NET framework is fine)
  • It needs to assist actual documents and folders aˆ“ no database or some such needed. Generally, I want to run they while having they immediately accumulate every little thing on disk, permitting us to categorize the things without transferring it around
  • Metadata must be held with actual files/folders. Basically go a folder by hand, i would like it to hold all of the categories they belonged to
  • Easy looking around by-name, description, class
  • Immediately update installments like, it must connect with Winamp site and download the most recent installations if necessary
  • Immediately install products
  • Establish audience for pictures, PDF, HTML, etcetera.
  • Reorganize data and files

A loan application that fulfill the essential specifications could be excessively beneficial to me, but i’d eventually desire the one that fulfills these additional specifications at the same time. I’m really thinking about starting this software as an unbarred origin project, but Im presently weighed down with other problem. Nevertheless, i believe i would starting it in the near future.

The laws is actually all C#, created as aˆ?Any CPUaˆ?, therefore it should have no troubles running unmodified with both 64 and 32 little creators

We have an addin for AutoDesk Inventor 2009, printed in C# and a build project to go with it. Being enroll the addin with Inventor, I needed to register the construction with aˆ?/codebaseaˆ? change, and so I produced a custom installer action:

The subscription rule operate by the registration service modifies some registry techniques under HKEY_CLASSES_ROOT . This worked fine on or windows 7, but once operate on my Vista 64, the setup completed successfully, but neglected to subscribe the addin with Inventor. The reason why turned into obvious once I noticed that my personal creator installment is 64 little bit aˆ“ consequently it looks for tips using the 64bit look at the registry, while the installer motion works utilizing the 32bit view.

Truly the only problem is how exactly to manage the installer as 64 little. In addition desired to allow the same MSI used on all systems, thus compiling multiple models wasn’t an alternative. And looking around the web, i obtained the feeling that it will never resolve the issue anyhow aˆ“ at least not without another gear.

The answer we came up with is simpler: instead of making use of RegistrationServices item, I am able to manually perform the RegAsm.exe software to join up the set up. On my Vista 64, there are 2 variations of this instrument:

The sites will not be alike on other machinery, needless to say. Happily, .NET gives the RuntimeEnvironment.GetRuntimeDirectory() fixed approach which comes back the folder for the usual language runtime. On my maker, they return C:\Windows\Microsoft.NET\Framework\v2.0.50727\ in the installer motion. We can utilize this, along with RuntimeEnvironment.GetSystemVersion() to make the pathways to 32bit and 64bit variations in the means:

Moving C++/CLI delegate to indigenous signal

I just needed to program a C++/CLI installation with a local DLL printed in C. This is mostly clear-cut, although C DLL could boost an internal occasion and supplied a method to experience the software informed for this occasion. To become updated, the application form has to enroll a callback features that will be invoked from the DLL if the occasion are brought up. The registration features are proclaimed similar to this:

Utilizing a normal features your callback could well be smooth, but i needed to use a .NET delegate to make certain that I could change the local celebration into a .NET celebration. This scenario also turns out to be supported by .NET. Everything you need to handle should prevent the delegate from getting moved or obtained by garbage collector.

Leave a Reply

Your email address will not be published. Required fields are marked *