I'm not sure how closely this relates to the original post, but I just
downloaded the LAUNCHER application from .....

http://www.franklins.net/dotnet/


I followed the instructions:

-- Created a web site on our intranet
-- zipped up the BIN folder of my application

-- Changed the 4 variables from "myapp" to "the name of my app"

    '-- URL to the zip file containing the app
    Private ZipURL As String = "http://www.mydomain.com/myapp.zip";
    '-- Local zip file name to save it to
    Private LocalZipFile As String = Application.StartupPath & "\myapp.zip"
    '-- Local dir where the .exe will reside
    Private LocalExeDir As String = Application.StartupPath & "\myapp"
    '-- Local .exe filename
    Private LocalExeFile As String = LocalExeDir & "\myapp.exe"

-- reset the reference to the Zip Library.
-- Compiled the LAUNCHER app, ran it on a machine that did not have the
application previously installed.

Got the hourglass for about 30 seconds, and then my application loaded.

IT WORKED!




>From the website (http://www.franklins.net/dotnet/):

So I was not satisfied with all of the options for auto-deploying .NET apps
in version 1.1, and rather than waiting for ClickOnce, which only works in
v2.0 anyway, I sat down and designed and developed a simple and effective
solution. Launcher is a VB.NET project called you can copy to a new dev
directory and modify for each application you want to auto-deploy. Change
four variables, rebuild, create a deployment project for Launcher and
distribute it.
When your user runs Launcher, everything happens automatically. Launcher
prompts the user for downloading a newer version if one is available,
downloads, unzips, and runs the app. If offline, Launcher simply runs the
current version. The logic here is easy to modify to suit your needs. The
zip file is downloaded in chunks using the asynchronous model, and unzipped
asynchronously as well.

Note that this application works well with small projects but not so well
with large projects. Because a new zip file is downloaded whenever there are
any changes, if the zip file is too large your user may get impatient. Also,
make sure that your application generates any settings files itself. That
way, you don't run the risk of overwriting your settings whenever you update
the application.




-----Original Message-----
From: Shawn A. Van Ness [mailto:[EMAIL PROTECTED]
Sent: Tuesday, February 01, 2005 2:18 PM
To: [email protected]
Subject: Re: [ADVANCED-DOTNET] How do I determine if an instance of a smart
client is already up?

You need SecurityPermission.UnmanagedCode to acquire a named Mutex.

This is sortof an unavoidable fact of life: otherwise, malicious
controls could potentially interfere with other apps, by acquiring
their Mutex(es).

As hacky as it sounds, creating and/or locking a file in Isolated
Storage might be the best way to accomplish this, in a partial-trust
environment.

-S


On Tue, 1 Feb 2005 12:37:29 -0500, Jones, Jason <[EMAIL PROTECTED]> wrote:
> This seems kludgy to me.  If you are going to be grabbing resources, grab
a mutex or semaphore, which are designed for cross-process communication.
>
> Problem is (and this will be a problem with the solution below), since you
are doing a NTD, you might not have the permissions to grab local resources.
You have to p/invoke to get a semaphore, but you might be able to get a
mutex since it's managed.  I am not sure of the particulars, but hopefully
you can research it from here.
>
> ________________________________
>
> From: Unmoderated discussion of advanced .NET topics. on behalf of saad
rehmani
> Sent: Tue 2/1/2005 12:35 PM
> To: [email protected]
> Subject: Re: [ADVANCED-DOTNET] How do I determine if an instance of a
smart client is already up?
>
>
> Grab a resource on startup. If its not available, your client is still up.
Be sure to clean up on exit. Examples:
>
> - Open a socket listener.
> - Open a file with write access.
>
> Saad
> .
>
> Raj Malli <[EMAIL PROTECTED]> wrote:
> Hi all
>
> I do not want users to launch multiple instances of my smart client. What
> is the simplest way to detect if an instance of a smart client is already
> up? I guess I will not know it from the process list as all I see is
> IEExec.exe (smart client is launched off an IE shortcut) corresponding to
> my smart client application.
>
> Any pointers is appreciated
>
> Thanks
> Raj
>
> ===================================
> This list is hosted by DevelopMentor(r) http://www.develop.com
>
> View archives and manage your subscription(s) at
http://discuss.develop.com
>
> __________________________________________________
> Do You Yahoo!?
> Tired of spam?  Yahoo! Mail has the best spam protection around
> http://mail.yahoo.com
>
> ===================================
> This list is hosted by DevelopMentor(r)  http://www.develop.com
>
> View archives and manage your subscription(s) at
http://discuss.develop.com
>
> ===================================
> This list is hosted by DevelopMentor(r)  http://www.develop.com
>
> View archives and manage your subscription(s) at
http://discuss.develop.com
>

===================================
This list is hosted by DevelopMentor(r)  http://www.develop.com

View archives and manage your subscription(s) at http://discuss.develop.com

===================================
This list is hosted by DevelopMentor�  http://www.develop.com

View archives and manage your subscription(s) at http://discuss.develop.com

Reply via email to