Solved

Deploying vb .net windows production version app while development version still being tested by users

Posted on 2009-07-06
7
692 Views
Last Modified: 2013-12-12
I am using ClickOnce Deployment with automatic updates before the application starts for a vb .net windows app.  My problem is that I need to temporarily leave the test version of the app on all the machines on which I'm installing the production version.  The development app is intalled from the development server and the production app is being installed from the production server, so I can't just make the production app the next revision #.  I tried to rename the app but there were so many components to rename that the whole app was out of sync.  Can I just override the installation path or are there internal registries that will step on each other?  Any help will be greatly appreciated!  
0
Comment
Question by:DenaMP
  • 4
  • 3
7 Comments
 
LVL 3

Accepted Solution

by:
nhenny2009 earned 500 total points
ID: 24798615
I've done this...our ClickOnce app, when deployed to our customer sites could be used by more than one group and the ClickOnce app needs to be installed twice (or more).  This will allow two revisions to be installed in the same Windows profile.

Your case is easier, because you have two different servers involved (each holding a DEV or PRODUCTION version of your ClickOnce app).

On your DEV server:
1.Deploy your app with a MyAppName.application that contains a
<assembly><assemblyIdentity name="MyAppNameDEV.application"...

Also change the assemblyIdentity under the <dependency> tags to
<assemblyIdentity name="MyAppNameDEV.exe"...

On your PRODUCTION server:
1.Deploy your app with a MyAppName.application that contains a
<assembly><assemblyIdentity name="MyAppNamePROD.application"...

Also change the assemblyIdentity under the <dependency> tags to
<assemblyIdentity name="MyAppNamePROD.exe"...


Please note...you are not actually changing the name of the executable you are deploying, rather you are only changing the "identity" of your ClickOnce executable and this is what allow you to install both even if they have the same ClickOnce revision.

Best Wishes.








0
 

Author Comment

by:DenaMP
ID: 24803442
Thanks so much for your reply.   The only place where I found the  <assembly><assemblyIdentityname
tags was in the appName.exe.manifest file, but when I tried to change the AppName as you suggested and run the set up, I got a signature error --  
            
                      + Manifest XML signature is not valid.
      + The digital signature of the object did not verify.

which of course makes sense because I changed the manifest.  So, how can I change these fields in the project itself before deployment.  Once again, thanks for your time and help!  

0
 
LVL 3

Expert Comment

by:nhenny2009
ID: 24803458
You need to use mage.exe and then resign the manifest files after you make the changes....you can make them manually but you will still need to resign the manifest.

Best Wishes.
0
How to run any project with ease

Manage projects of all sizes how you want. Great for personal to-do lists, project milestones, team priorities and launch plans.
- Combine task lists, docs, spreadsheets, and chat in one
- View and edit from mobile/offline
- Cut down on emails

 

Author Comment

by:DenaMP
ID: 24803770
How do you resign the manifest?  
0
 
LVL 3

Expert Comment

by:nhenny2009
ID: 24803869
use mage.exe with the "-sign" parameter and the "-certfile" parameter.  Here's the MSDN article link:

http://msdn.microsoft.com/en-us/library/acz3y3te.aspx

0
 

Author Closing Comment

by:DenaMP
ID: 31600156
Thanks loads for your help!  I won't have a chance to try this out until next week but I guess I'll holler if I run into a glitch.  
0
 
LVL 3

Expert Comment

by:nhenny2009
ID: 24816452
NP DenaMP, just let me know if you run into a glitch.

Best Wishes.
0

Featured Post

What Should I Do With This Threat Intelligence?

Are you wondering if you actually need threat intelligence? The answer is yes. We explain the basics for creating useful threat intelligence.

Join & Write a Comment

A high-level exploration of how our ever-increasing access to information has changed the way we do our jobs.
This article describes how to use the timestamp of existing data in a database to allow Tableau to calculate the prior work day instead of relying on case statements or if statements to calculate the days of the week.
This video demonstrates how to use each tool, their shortcuts, where and when to use them, and how to use the keyboard to improve workflow.
Viewers will learn how to use the Hootsuite Dashboard.

705 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

18 Experts available now in Live!

Get 1:1 Help Now