Showing results for 
Show  only  | Search instead for 
Did you mean: 
Level 4

MSI Installer fails on Vista due to UAC.


I have a Basic MSI Installer that also contains a Merge Module project. I created .msi installer and try to install on Vista 64 bit platform and I see some strange behaviors on Vista. When UAC is disabled, I can install and everything works. But if UAC is enabled Installer does not behave as expected (it does not fail but it does not install driver files).

When i converted this .msi installer into .exe installer then it works fine. But problem is one of my clients wants .msi installer.

When i try to go into the problem i found that one of custom action in MSM is causing the problem. This custom action calls a function in my custom dll. This DLL function calls SetupDiCreateDeviceInfo API in WINDDK. It looks this function tries to write some entries in registry section but fails to do so. My custom action is of type 65.

Is there any way to handle this thing as i just want .msi installer not an .exe installer. I also tried changing custom action In-Script Execution setting from "Immediate Execution" to "Deffered Execution is system context", but it gives me another problem i.e i can't use MSIGetProperty and MSISetProperty. Also i have ALLUSERS set to 1 on the main installer.

Can you tell me how can i solve this problem. Any suggestion is appreciated.

Umesh Bansal.
Labels (1)
0 Kudos
(2) Replies
Level 10

Stefan Krueger has written a white paper that should help:
'7 Reasons Why your Installations May Fail on Windows Vista (And How You Can Fix Them)'
0 Kudos
Level 4

Thanks a lot:)
0 Kudos