Hi,

Quick question. Do you install the app "For all users"? You can du this by 
setting the property "ALLUSERS" to 1. This ensures that the COM registry keys 
are registered under the HKCR part that is under HKLM and not under HKCU.

Remember, the HKCR key is a "logical" key that is a combination of the 
HKLM\Software\Classes and HKCU\Software\Classes keys. When installing without 
the ALLUSERS property set to 1 (you should set it to 1 and not 2 to ensure that 
everything is registered under HKLM - the value 2 means that HKLM is preffered, 
but the install will fall-back to HKCU if the installing user is not 
privileged).

I had the same problem last week when I had not set the ALLUSERS property at 
all, which means that it defaults to the current user only. You can read about 
the ALLUSERS property in the MSI documentation.



Regards,

Arild

________________________________
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Paul McLaughlin
Sent: 26. februar 2008 20:59
To: WiX Users
Subject: [WiX-users] Cannot create COM components when installed under Vista

There are several parts to this issue, so I will try to be as clear as possible 
with each part.

PROBLEM SUMMARY:
The goal is to install an ActiveX component on a client system (it is strictly 
for OLE automation, no UI) and have some JavaScript create it and use methods 
on it.  It works just fine under Windows XP, but not under Vista.

FAILURE ANALYSIS:
It appears that the .msi package creates the registry keys for the ActiveX 
component with insufficient user privileges.  Specifically, if I open up 
RegEdit.EXE and right-click and choose "Permissions..." on any one of the 
registry keys created for the component, I see my exact user name from my 
company's network domain.  For example, "Paul McLaughlin 
(<MyCompanyName>\paulm)".  Any time I see my name specifically in the list like 
this, the control cannot be created from JavaScript under Vista using "new 
ActiveXObject()" as you will see below in the source.  Again, XP seems to be OK 
with this.

MANUAL FIX:
In order to get the component created in JavaScript under Vista, after install 
I have to manually remove the keys from the registry that the .msi created and 
manually add them again.  I do this by some exported Windows Registry .REG 
files that contain the exact same entries and I just double-click on them from 
Explorer to put them back.  After I do this, and then I right-click on any one 
of these registry keys in RegEdit.EXE, I do NOT see my name in the 
"Permissions..." dialog, but rather my LOCAL MACHINE's "Users" group.  For 
example, "Users (LowRiderDevVista\Users)".  When this is the case, the 
JavaScript is able to create an instance of the COM component and the 
JavaScript works!

Obviously, I want Windows Installer via WiX to register the component and have 
it all work under Vista as well as XP.

Here are my sources (partial):

WIX:
...
<File Id="AXM" Name="MSI_AXM.dll" DiskId="1" Source="MSI_AXM.dll" Vital="yes" >
    <TypeLib Id="46A6400B-39E2-4C7F-8BCC-B701E43C6404" Language="0" 
MajorVersion="1" MinorVersion="0" Description="iShip, Inc. - ActiveXManager 1.0 
Type Library" HelpDirectory="INSTALLDIR">
        <Class Id="4392B188-CBA7-4CA8-A24F-31B378B3F4B5" 
Context="InprocServer32" Programmable="yes" ThreadingModel="apartment" 
Description="MSI.AXM" >
            <ProgId Id="MSI.AXM.1" >
                <ProgId Id="MSI.AXM" />
            </ProgId>
        </Class>
        <Interface Id="068BEF68-2AD3-4E79-87FD-2870B7B8DFC7" Name="IAXM" 
ProxyStubClassId="00020424-0000-0000-C000-000000000046" 
ProxyStubClassId32="00020424-0000-0000-C000-000000000046" />
    </TypeLib>
</File>
...

JavaScript from an .HTA web application file that is installed.
var oAXM = new ActiveXObject("MSI.AXM.1");  // Will throw() if it cannot be 
created.
oAXM.Test();


I have also tried setting the Package/InstallPrivileges attribute to "limited" 
to see if for some reason that helped, but it made no difference.  I do not see 
any other items in the WiX documentation that might suggest other privilege 
settings for Vista or install for that matter.

I am using WiX build 3.0.2925.

Thank you for any information about this issue you might have.

-Paul


________________________________
Need to know the score, the latest news, or you need your Hotmail(r)-get your 
"fix". Check it out.<http://www.msnmobilefix.com/Default.aspx>
-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2008.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users

Reply via email to