Vista - UAC and Click Once

G

Guest

Hello,

This is a continuation of a question I was working with Willy and Kevin last
week (both provided excellent information). I am still having troubles in
final stages.

I am trying to get an OCX to register on Vista with my ClickOnce app. Willy
instructed how to embed a manifest into the exe to request admin privilages
(requireAdministrator) upon launch (so the UAC window would confirm to the
user they want to run the program).

It all works fine now... while running locally on my development and testing
machines. However, when we try to run the deployed app with this modified
executable, we are getting error messages that state:

Reference in the manifest does not match the identity of the downloaded
assembly [ourApp.exe].

We have signed both the application and deployment manifests anew and built
them up fresh with the modified exe and still this error is thrown upon
putting the application URL into the browser (and after the app download and
installs so I guess you could just say the error is thrown at launch).

Is what we are trying to do possible? Is there an easier way to register an
OCX control in our app without having to require admin privileges (aside from
making a seperate program, having the user install that, then have them Run
As Admin)?

Maybe there is code we can execute that will just bring up the UAC window so
we can just execute the small OCX registry process...?

Thanks,

Rob
 
W

Willy Denoyette [MVP]

RobKinney1 said:
Hello,

This is a continuation of a question I was working with Willy and Kevin last
week (both provided excellent information). I am still having troubles in
final stages.

I am trying to get an OCX to register on Vista with my ClickOnce app. Willy
instructed how to embed a manifest into the exe to request admin privilages
(requireAdministrator) upon launch (so the UAC window would confirm to the
user they want to run the program).

It all works fine now... while running locally on my development and testing
machines. However, when we try to run the deployed app with this modified
executable, we are getting error messages that state:

Reference in the manifest does not match the identity of the downloaded
assembly [ourApp.exe].

We have signed both the application and deployment manifests anew and built
them up fresh with the modified exe and still this error is thrown upon
putting the application URL into the browser (and after the app download and
installs so I guess you could just say the error is thrown at launch).

Is what we are trying to do possible? Is there an easier way to register an
OCX control in our app without having to require admin privileges (aside from
making a seperate program, having the user install that, then have them Run
As Admin)?

Maybe there is code we can execute that will just bring up the UAC window so
we can just execute the small OCX registry process...?

Thanks,

Rob


Rob,

I would try to get rid of the administrator" dependency by using "Reg-Free COM".
This article http://msdn.microsoft.com/msdnmag/issues/05/04/RegFreeCOM/ might help you to
get started.
Another option is to use Group Policy Management and the ActiceX Registration service in
Vista to install the ActiveX component from a trusted location in the corporation.

Willy.
 
G

Guest

Willy! It works! Thank you so much for your help on this thread and the
last. We just changed the Isolated to True and now everything seems to be
working just as it should... and the program doesn't even have to bring up
the UAC control. My coworker and I have learned a lot through this.

Seems Reg-Free COM did the trick.

Thanks again for your excellent help!

Rob

Willy Denoyette said:
RobKinney1 said:
Hello,

This is a continuation of a question I was working with Willy and Kevin last
week (both provided excellent information). I am still having troubles in
final stages.

I am trying to get an OCX to register on Vista with my ClickOnce app. Willy
instructed how to embed a manifest into the exe to request admin privilages
(requireAdministrator) upon launch (so the UAC window would confirm to the
user they want to run the program).

It all works fine now... while running locally on my development and testing
machines. However, when we try to run the deployed app with this modified
executable, we are getting error messages that state:

Reference in the manifest does not match the identity of the downloaded
assembly [ourApp.exe].

We have signed both the application and deployment manifests anew and built
them up fresh with the modified exe and still this error is thrown upon
putting the application URL into the browser (and after the app download and
installs so I guess you could just say the error is thrown at launch).

Is what we are trying to do possible? Is there an easier way to register an
OCX control in our app without having to require admin privileges (aside from
making a seperate program, having the user install that, then have them Run
As Admin)?

Maybe there is code we can execute that will just bring up the UAC window so
we can just execute the small OCX registry process...?

Thanks,

Rob


Rob,

I would try to get rid of the administrator" dependency by using "Reg-Free COM".
This article http://msdn.microsoft.com/msdnmag/issues/05/04/RegFreeCOM/ might help you to
get started.
Another option is to use Group Policy Management and the ActiceX Registration service in
Vista to install the ActiveX component from a trusted location in the corporation.

Willy.
 
W

Willy Denoyette [MVP]

RobKinney1 said:
Willy! It works! Thank you so much for your help on this thread and the
last. We just changed the Isolated to True and now everything seems to be
working just as it should... and the program doesn't even have to bring up
the UAC control. My coworker and I have learned a lot through this.

Seems Reg-Free COM did the trick.
Actually I should have told you about Reg-Free COM in your previous thread, I'm glad you
finally got it working with a great user experience as a bonus.

Willy.
 

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

Top