• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 155
  • Last Modified:

Single instance application...

I have developed an application that takes custumized protocol links from a web page. I had to write a registry key to invoke the program but I have succeded.

Here is the scenario:
just like http, ftp, and ed2k links, I have written a registry key so that if a URL in a web page contains a specific protocol lets say "myapp" as in
<a href="myjavaapp://|parameter_1|......|parameter_n|">Click here</a>
"myjavaapp" is invoked and from the link above receives the parameters.

My Problem:
If "myjavaapp" is not running there is no problem. The application is started.
If "myjavaapp" is already running a new instance of the program is run. So I have two copies of the same program running on my desktop.
What should I do to make this program run in one instance? I have been told to create a file on startup of the application and delete when exited, but incase my application crashes the file would not be deleted, thus if I check the existanse of that file, since it would exist from a previous crash, the application would not run.

So what should I do other than "creating and deleting a file upon start and exit" option?
  • 4
  • 2
2 Solutions
Hi DigiTechin,
this may help

DigiTechinAuthor Commented:

I already seen those. They both talk about locking a file, which is not what I intend to do.
My problem resides. If the program crashes, for one reason or another, I would get stuck.
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!

That's not true: a lock vanishes if the program stops!
sciuriware is write the lock finishes..
the other option is open a serverSocket, That is also the same as locking a file.
Thanks for your support armoghan, but please say "sciuriware is right" in stead of "write"
otherwise I feel a file myself.
I found that the file locking works on all platforms in the world and has
some advantages: the locker can write some identification in the lock file.
That means that, again system independent, the system manager can findout
where such a file belongs to: it's very hard to find socket-locks in a living system.
One application: can you take a system down, knowing that all locking applications
have left? From the socket-method you couldn't tell; from the lock-method you can.
hahaha .
Thanx for correcting
Sorry sciuriware

My english is not that good and I scramble words while writing

Featured Post

Free Tool: IP Lookup

Get more info about an IP address or domain name, such as organization, abuse contacts and geolocation.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

  • 4
  • 2
Tackle projects and never again get stuck behind a technical roadblock.
Join Now