CeAppMgr.exe is the ActiveSync Add/Remove Programs utility. If you pass an
.ini file which contains a list of .cab files, it registers those cab files
as 'a program'. The intent is that the .cab files are the same product
compiled for different processors/platforms.

ActiveSync stores this information in the registry under HKEY_LOCAL_MACHINE
and therefore can only be written to by a privileged install. There is no
HKCU part of this installer. However, the format of the keys under HKLM is
not documented and the only supported way to write to them is to run
CeAppMgr. You can specify the /register switch to have it merely register
the fact that the program exists for installation, rather than have it
install straight away.

(If you just want to look, they're under
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows CE Services\AppMgr\Apps.)

There's no point attempting to implement undo custom actions for this,
because CeAppMgr offers no way to uninstall a package.

Virtual PC and ActiveSync have nothing in common. The Windows CE Emulators
before VS2005 were based on Virtual PC technology, so you couldn't run them
within a virtual machine, but ActiveSync itself is fine. However, Virtual PC
does not implement USB virtualization, so for most devices you won't be able
to sync the device with the virtual machine. I believe VMWare does but
haven't tried it.

I'm afraid I think you need a per-machine installation, or forget about
ActiveSync's Add/Remove Programs applet.

-- 
Mike Dimmick

-----Original Message-----
From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] On Behalf Of Bob Arnson
Sent: 26 March 2007 05:18
To: Anthony Wieser
Cc: wix-users@lists.sourceforge.net
Subject: Re: [WiX-users] Custom actions and per user installs,and UAC
problems

Anthony Wieser wrote:
> CEAPPMGR seems to require it to be run with admin privileges.  I've
already 
> specified that the msi file run elevated, but the actions seem to run as
the 
> user, or in the namespace of the administrator, which still causes the 
> program not to be installed for the current user.
>   

CAs run as the user with the user's rights by default. You can mark them 
for elevation but then they run as LocalSystem, not the user, which 
might not be what you're looking for, depending on what the ActiveSync 
thing wants (e.g., to register with the user's ID on the device).

> Is there a better way around this?  Do I need to build a special EXE to
run 
> that does the dirty work, which requests the elevation in its manifest 
> instead.
>   

Can you break the procedure up? Install the file elevated (needed to 
write to per-machine locations) and run AppMgr as an unelevated user? It 
really depends on how AppMgr works, which I personally know nothing about.

> Secondly, is there a really good description anywhere of what the
difference 
> between per user and per machine installs actually is?  When I ran the 
> install from an elevated command prompt, it installed on my device, but
then 
> when I next started the app manager on my account, it tried to install the

> software again.  (not sure why).
>   

See above. You shouldn't elevate for things that depend on the current 
user -- it won't work for LocalSystem. A real per-user app uses only 
per-user resources (AppData directories, HKCU registry, etc).

> I've gotten in such a mess trying to get this simple thing right so that 
> it's easy for my users to do.  I've filled up my system restore log, and 
> lost all prior install points except for the last 20 or so, which are all 
> installing and uninstalling this.
>   

Can you run ActiveSync in a virtual machine? As I recall, Virtual PC and 
ActiveSync share some components, but maybe one of the other 
virtualization products will work? There's really no substitute for 
testing with virtual machines.



-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys-and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users

Reply via email to