我们的python应用程序使用py2app编译为独立的MacOsX应用程序(.app),并放入Dock。使用latest py2app from bitbucket,我们可以通过在setup.py中将 argv_emulation 设置为True来接收投放到其上的文件。 (此设置会在运行应用程序时使删除的文件显示在sys.argv列表中。)
但是,一旦应用程序运行,丢弃的新文件将无法启动应用程序的另一个实例。相反,它们将触发拖放消息以发送到正在运行的应用程序。理想情况下,我们希望能够使Dock生成另一个应用程序实例,或者使我们的PyQt4应用程序拦截发送给它的Drag& Drop消息。任何提示都非常感谢。