Having a single instance and forwarding document open requests
Doug Anderson
doug at vitamindinc.com
Wed Sep 26 13:58:04 PDT 2007
Hi,
I'm trying to accomplish roughly the same thing as MacOpenFile does
on the Mac, but on Windows.
For those unfamiliar, let me explain. I want it so that if someone
double-clicks on one of my document files, it will either:
- If no other copy of the app is running, it will start up the
application and open the document.
- If another copy of the app is running, it will just tell that
already-running copy to open the document.
Another way to put it: I'd like to work like Visual Studio works on
Windows: opening a .c file from the file explorer doesn't open a
separate copy of visual studio.
I'm using py2exe to create an application from my wxPython code.
Sorry if there's a simple way to do this, but I've been unable to
find it.
* My best idea so far is to use the wx.SingleInstanceChecker. With
it, I can prevent the second copy of the app from starting up, but I
can't communicate with it to tell it which documents to open. I
could use an out of band communication method (TCP sockets, a
file, ...), but that seems very kludgy.
* I saw references elsewhere to using DDE on Windows. Unfortunately,
I'm not a DDE expert and there appears to be very little
documentation in the context of python. ...also, the wxwidgets DDE
class doesn't appear to be supported on wxpython (unless I missed
it), so I'd have to mix in win32 calls. Ick.
* The pydocview stuff looks like it might be usable, though again I
don't see any docs for it (and one piece of sample code that doesn't
quite do what I want).
Thanks!
-Doug
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.wxwidgets.org/pipermail/wxpython-users/attachments/20070926/ea26b6a3/attachment.htm
More information about the wxpython-users
mailing list