DLLs don't register correctly with UAC turned on

  • Thread starter Scott Heimendinger [MS]
  • Start date

Scott Heimendinger [MS]

I created an MSI package using the VS2005 tools to register a DLL for use in
a Vista gadget. For the gadget to recognize the DLL, it must be visible
through COM. On machines with UAC disabled, the installation works fine.
However, if the machine has UAC enabled, the MSI appears succesful, but the
DLL is not visible to the gadget.

How can I fix this issue and make the DLL visible even for users with UAC

(for debugging purposes)
On UAC-enabled machines, the following steps make the DLL visible to the
1. Close the Vista SideBar.
2. Uninstall <<Program Name>> from the Control Panel.
3. Open the GAC (usually c:\windows\assembly) and find <<DLL Name>>.
Right-click the file and choose "Uninstall".
4. Copy <<DLL Name>> to your local machine from <<Network Location>>.
5. Open the Visual Studio 2005 Command Prompt (under Programs > Visual
Studio 2005 > Visual Studio Tools) and navigate to the local folder you used
in step 4.
6. Run the following commands:
regasm /uninstall <<DLL Name>>
gacutil /if <<DLL Name>>
regasm <<DLL Name>>
7. Open the SideBar. Everything should work now.

Thank you,
Scott Heimendinger
SDET, Microsoft Office PerformancePoint Server

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question