[2 days left] What’s wrong with your cloud strategy? Learn why multicloud solutions matter with Nimble Storage.Register Now

x
?
Solved

"Auto Updatable" application

Posted on 2004-04-15
5
Medium Priority
?
288 Views
Last Modified: 2008-03-21
Hello,

here is a theoric question, I want to investigate the different possibilities before starting.
I have an application that will be deployed at several places in several cities. When a new version of the application is released, I do not want to go to each place and redeploy the new version, and I do not want the users to do that themselves.

So I had several ideas.
Idea 1:
----------
At every startup of my application, it could check if a new version is available (comparing its version with a value returned by a web service for instance). If it is the case, uninstall itself and install it again. (maybe using an external process and working in command line... is it doable ? Can we install a .NET application without using the msi wizard ? What happens if the user doesn't have local administrator rights ? can we install for everyone ?

Idea 2:
----------
Quite similar, but it will update only a DLL. My application will be a small exe, doing for instance just a myDllEntryPoint.Start() or something like that.
Of my course, my new DLL will have a higher version number and so I believe there will be a problem for my soft. It won't use the new DLL as the version number is no longer correct. How can we change that ?

Idea 3:
----------
Using a distant DLL. Like in previous case, my application would launch only a start method in the DLL, but this DLL would be installed in the GAC of a distant computer. So when a new version is released, I only uninstall and reinstall that DLL on the server.
Can we use a distant DLL ? (and how ?) Only on a local network ? Also thru a VPN ? Is there a drawback in term of performance (I was thinking that the DLL would be loaded at every startup in memory... Is that true ? Will it have to go to the server each time a methof of the DLL is called ?)


Do you have another / better idea ?
What would you do in such a case ?
0
Comment
Question by:Jarodtweiss
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 3
  • 2
5 Comments
 
LVL 7

Expert Comment

by:culshaja
ID: 10833137
According to Microsoft if you have the .Net framework on the client machine and you put a .Net exe on a webserver and provide a link to it in a webpage, if that person clicks the link, the App will download and run from a sandbox on the local machine. It is intelligent enough to know wether to run a cached version (if you have clicked the link before) or to download the latest version to the sandbox and run that. What I am not so sure about is associated DLLs.

Refering to your ideas above, I use a program which calls a webservice to check for a list of updates. The app then uses this list to determine if there are any newer files which it requires to download and then goes and downloads these files from the location that is specified in the update list. This update checking occurs in the app load. Seems to be used by quite a few different applications.

James :-)
0
 
LVL 7

Expert Comment

by:culshaja
ID: 10833186
Take a look at this: http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnbda/html/updater.asp

Its a pre built code block for auto-updating applications.

James :-)
0
 
LVL 7

Accepted Solution

by:
culshaja earned 2000 total points
ID: 10833206
0
 
LVL 4

Author Comment

by:Jarodtweiss
ID: 10833226
Thanks for the links !
I'm having a look on it !
0
 
LVL 4

Author Comment

by:Jarodtweiss
ID: 10968040
Hey culshaja !
Sorry for being so late for giving points.. I have no more time to work on that part for now...
Thanks anyway for those links
I'll reopen a topic if I have problems with that in the future !

Jarod
0

Featured Post

Windows Server 2016: All you need to know

Learn about Hyper-V features that increase functionality and usability of Microsoft Windows Server 2016. Also, throughout this eBook, you’ll find some basic PowerShell examples that will help you leverage the scripts in your environments!

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

For those of you who don't follow the news, or just happen to live under rocks, Microsoft Research released a beta SDK (http://www.microsoft.com/en-us/download/details.aspx?id=27876) for the Xbox 360 Kinect. If you don't know what a Kinect is (http:…
A long time ago (May 2011), I have written an article showing you how to create a DLL using Visual Studio 2005 to be hosted in SQL Server 2005. That was valid at that time and it is still valid if you are still using these versions. You can still re…
Sometimes it takes a new vantage point, apart from our everyday security practices, to truly see our Active Directory (AD) vulnerabilities. We get used to implementing the same techniques and checking the same areas for a breach. This pattern can re…
In a question here at Experts Exchange (https://www.experts-exchange.com/questions/29062564/Adobe-acrobat-reader-DC.html), a member asked how to create a signature in Adobe Acrobat Reader DC (the free Reader product, not the paid, full Acrobat produ…

656 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