Solved

Changing Development Machine for my ClickOnce App

Posted on 2011-09-15
12
222 Views
Last Modified: 2012-05-12
I have a click once app that I publish to my local network share and have ~100 users installed.  Works great.   My development machine is Vista with VS2008 is older and in need of replacement.    The thought of changing the machine makes me nervous.... When I do my next published update from my new development machine, anything to watch out for?

The old machine is Vista.
The new machine is Windows 7.    

Both will develop with VS2008.    I just don't want to have any gotcha's that will require re-install of all 100 clients.

Thanks
0
Comment
Question by:browe68
  • 5
  • 4
  • 2
  • +1
12 Comments
 
LVL 45

Expert Comment

by:Martin Liss
ID: 36546034
Are you actually changing the PC or just upgrading the OS?

If it's the latter then probably nothing to worry about but make sure that you have created a checkpoint from before the upgrade that you can go back to in case there are serious problems.
0
 
LVL 40
ID: 36546280
If you created your own digital signature on your old compuete, you might have to transfer it to the new computer.

Strangely, you do so through Internet Explorer.

In the Internet Options dialog, you go to the Content tab, and the Certificates button.

Select your signature. This can be hard if there are many and you did not took a note when you created it. The date might help you.

Export your signature, taking care of specifyint that you want to export the Private key, and select the default certificate.

Put the resulting file in a secure location in case you need to reuse it elsewhere.

If you have problems compiling or publishing your application from the new computer, copy the file on it and import it through the same way in Internet Explorer.

0
 

Author Comment

by:browe68
ID: 36546507
Actually, this is a brand new computer that has all the components reinstalled.  (i.e. Visual Studio, Crystal reports, etc...)   My ClickOnce app is not digitally signed - so I hope I am safe there.   I have it as a Trusted App, so only users on my network can use.

My concern is that when I publish from the new machine - what might go wrong!   Which brings up the next question of what is best 'rollback' strategy on a publish (that might have issues).
0
 
LVL 45

Expert Comment

by:Martin Liss
ID: 36546519
Keep the old PC around until you can verify that the new one works okay. Or perhaps partition the new machine to run both Vista and Win 7 and copy your current environment to the Vista partition.
0
 
LVL 83

Assisted Solution

by:CodeCruiser
CodeCruiser earned 100 total points
ID: 36570509
I would change MartinLiss's suggestion a bit. Publish a test app from old computer and install on 1-2 computers. Then move it to new machine and publish from there and see the impact.
0
 
LVL 40

Accepted Solution

by:
Jacques Bourgeois (James Burger) earned 400 total points
ID: 36570751
If the application install, its because everything went well. Otherwise, ClickOnce would automatically perform a Rollback.

If you want to feel safer, the Publish version does not have to be the same as the application version.

Publish from the old computer, noting the Publish version, such as 1.3.4
Publish from the new computer, incremengint the Publish version : 1.3.5
If something goes bad go back to the old computer, and republish, incrementing to 1.3.6

The Publish version is the one that ClickOnce use. So you can override a newer version of the program with an older one, as long as you increment the Publish version.
0
Highfive + Dolby Voice = No More Audio Complaints!

Poor audio quality is one of the top reasons people don’t use video conferencing. Get the crispest, clearest audio powered by Dolby Voice in every meeting. Highfive and Dolby Voice deliver the best video conferencing and audio experience for every meeting and every room.

 
LVL 40
ID: 36574857
Another one I forgot.

The user can always rollback to the previous version (only the last one) through the Control Panel. If he requests a Repair / Install on the application, he will have the choice to bring back the last version installed before the update.
0
 

Author Comment

by:browe68
ID: 36574950
Hey James, thanks for all of the suggestions...  I was unaware of the 'Restore the application to its Previous State".   So, that will roll it back 1 version?
0
 
LVL 40
ID: 36574970
Yes.

ClickOnce always keeps 2 copies of the installation for a ClickOnce deployment. The last Update, and the one before. So, automatic Update if needed.

I am too often thinking of my side of things as a programmer and had forgotten about that one on the side of the user.
0
 

Author Comment

by:browe68
ID: 36575161
Also, any tips on rolling back at the server level?  One strategy I have used is to make a copy of the Setup Folder on Server before Publish.  If something goes wrong after publish, I just replace that folder with the backup.  It has worked a few times in a pinch.

0
 
LVL 40
ID: 36575545
Better than making a backup before Publish, make a backup of the whole project every day :-)
0
 

Author Comment

by:browe68
ID: 36575797
I do that too.
0

Featured Post

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

Join & Write a Comment

Most everyone who has done any programming in VB6 knows that you can do something in code like Debug.Print MyVar and that when the program runs from the IDE, the value of MyVar will be displayed in the Immediate Window. Less well known is Debug.Asse…
If you need to start windows update installation remotely or as a scheduled task you will find this very helpful.
Get people started with the process of using Access VBA to control Outlook using automation, Microsoft Access can control other applications. An example is the ability to programmatically talk to Microsoft Outlook. Using automation, an Access applic…
Get people started with the utilization of class modules. Class modules can be a powerful tool in Microsoft Access. They allow you to create self-contained objects that encapsulate functionality. They can easily hide the complexity of a process from…

760 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