Deploy dotNET/C# EXE or DLL Via Web Application

Posted on 2004-04-15
Last Modified: 2011-10-03
I have heard that there is a way to deploy EXE/DLLs via a Web application using the dotnet Framework.
Basically, I want to write an application that is available at http://server/MyApplication.exe which clients can access and it will run locally with whatever permissions the user has.  This is very similar to Active-X controls, but I have heard that there is a much easier way to do it then Active-X controls.

Someone mentioned creating a "Windows Control Library" and then accessing that directly, I made a dummy one, but couldn't get it to work.  I know that in dotnet 2.0, there is something called "Click Once" and I am not sure how that fits in.

So, how can I write an application that can be accessed via a URL and run locally on the machine.
Ideally, it would know if there was a previous install and whether it was newer version or not.

Question by:winterminute
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
  • 5
  • 2

Expert Comment

ID: 10840422
The best and most complete example of web deployment ( dotnet exes ) I've every seen is Chris Sells Wahoo. It also has full source availability and security discussions. He covers the subject in Chapter 15 of his book "Windows Forms Programming in C#"

Author Comment

ID: 10844778
Well, that's pretty much what I was looking for, but understanding it is another question.  It looks like he is using a Windows Control.  Is there a much simplier version available?  i.e. Hello World app that uses this technology?

Author Comment

ID: 10844832
I just came across this which might prove useful, written by Chris Sells who now works at Microsoft:
Independent Software Vendors: We Want Your Opinion

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!


Author Comment

ID: 10844918
And here is a walk-thru of Wahoo by Chris sells

Author Comment

ID: 10846727
I got this working, but I can't get the automatic versioning.
I can succesfully run the application over the intranet, but when I make changes and rebuild, the client loads the old version.  I have to clear the IE cache to get it to load the new version.  I read somewhere that if you don't sign your assemblies then you lose the automatic versioning, so I went ahead and did that.

Any ideas?

Expert Comment

ID: 10869417
I havent signed my assemblies and they download fine, even dependant assemblies....( you are copying them to the server?)

One of the controlling influences of wether a dll is downloaded is the modification date of the file, this is a http thing if the date is different to the clients cached copy then it will get downloaded.

btw the assembly will be copied to a special location in the the GAC to list installed downloaded assemblies you have to use the gacutil cmd line with -ldl option ie "gacutil -ldl" see gacutil /? for the switches to clear it.

I don't have my trusty "Windows Forms programming with C#" to hand at the minute but I'm sure the details are in there.......

Author Comment

ID: 10875324
Actually, it gets copied to the Temp Internet Files directory.  You can see it there with your cookies, etc.  It might also do something wih the GAC but I know that deleting it from the temp files will force the re-download.

I found out why it wasn't updating, err...rather, I fixed it, but I don't know why or how.  Basically, I created a new Virtual Directory and it started working.  Both VDs appeared identical, but not sure what the difference was.

Accepted Solution

ee_ai_construct earned 0 total points
ID: 11756993
PAQed, with points refunded (125)
ee_ai_construct - CS Mod

Featured Post

On Demand Webinar - Networking for the Cloud Era

This webinar discusses:
-Common barriers companies experience when moving to the cloud
-How SD-WAN changes the way we look at networks
-Best practices customers should employ moving forward with cloud migration
-What happens behind the scenes of SteelConnect’s one-click button

Question has a verified solution.

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

Article by: Najam
Having new technologies does not mean they will completely replace old components.  Recently I had to create WCF that will be called by VB6 component.  Here I will describe what steps one should follow while doing so, please feel free to post any qu…
Calculating holidays and working days is a function that is often needed yet it is not one found within the Framework. This article presents one approach to building a working-day calculator for use in .NET.
NetCrunch network monitor is a highly extensive platform for network monitoring and alert generation. In this video you'll see a live demo of NetCrunch with most notable features explained in a walk-through manner. You'll also get to know the philos…
Do you want to know how to make a graph with Microsoft Access? First, create a query with the data for the chart. Then make a blank form and add a chart control. This video also shows how to change what data is displayed on the graph as well as form…

734 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