I am working on a deployment project (Wix based) which is used to run with AutoCAD and to create a shortcut Passes your logic of AutoCAD's acad.exe
To achieve this, there is a custom action DLL (C ++) that repeats through the registry keys of AutoCAD and receives the "Acad.XA" location and makes / updates MyInstaller Shortcuts using MSI Api methods when running in .msi
Problem:
On Windows 7 on the X-7 bit OS, reading custom action is the proper 'acad.exe' location from the registry ie C: \ Update the program file \ AutoCAD 2010 \ ARAD.XA, and shortcut property to MSI at runtime. But when MSI finishes making shortcuts, the path is converted to 32 bit program files, that is C: \ Program Files (x86) \ Autocad 2010 \ acad.exe, which does not actually exist.
Around My Work:
As my MSI is 32 bit (x86), so I created a separate component with Win64 = Yes , And have modified the custom action to update / create shortcuts for this component. But still changing the path in shortcuts to C: \ program files (x86).
I know that I convert my MSI to X64 OS, this can be solved, but at present, I do not make such a big change.
Is there any way that a 32 bit MSI can create shortcut with x64 OS path?
Any help will really be appreciated ..
Thank you very much.
You are swimming on top of MSI on this one (although I can understand why. )
Officially not on the MSI platform, I think that you are using a custom verb to read the registry values because MSI's AppSearch / Reglocator will force you to the WoWSys64 node After this, MSI is a programmatic compatibility approach (originally Microsoft believes that you do not So that you were doing and they know that you will actually move the hard-coded references to the program files as part of what you want to do) in.
Informally - Read this thread to find a hack, which I thought to work on it. Summary I have come to know that if you change the C: \ program files in a short way (C: \ progera ~ 1) then MSI is not very wise what you are talking about, so this is not the option of price is.
Note, this is a hack and there is no way to say in future Microsoft will 'fix it'. I can think that there is only another way that you do not use the shortcut table and instead you can create custom actions to create shortcuts for you.
If you do not want to swim against MSI, consider this solution. Create a small 64 bit XEe (yes, you can deploy 64 bit or ANCPU EXE in the program file, x86 is an x86 MSI) which works as a launcher in front of AutoCAD. Ask it from the Registry table and find the file then launch it or display a message that says AutoCAD is unavailable if it can not be found.
If you do this then you install your cleaner.
Comments
Post a Comment