我不知道它是如何工作的,或者它是否可行,但我想要做的是例如创建一个文件类型(让我们想象.test(其中一个随机文件名是random.test))。在我继续之前,显然很容易使用例如:
filename = "random.test"
file = open(filename, 'w')
file.write("some text here")
但是现在我想知道的是,是否可以编写文件.test所以如果我将它设置为使用wxPython程序打开(直接(从桌面运行“random.test”)),它识别它,例如自动打开一个消息对话框。
答案 0 :(得分:2)
这是如何工作的不同操作系统,但是,AFAIK,一般规则是,如果您在操作系统中注册您的应用程序以识别该文件类型,则单击该类型的一个或多个文件会导致操作系统使用文件名作为参数调用程序,因此如果程序具有以下形式的命令行调用,程序将正确处理文件打开:
program_name [options] <file1> [<file2> ... <fileN>]
在确定程序可以接受的文件类型方面......在Mac OS X上,这是通过在应用程序包的“Info.plist”文件中列出文件类型来完成的,该文件包含密钥CFBundleDocumentTypes的字典。由用户来执行关联,但“Info.plist”中的信息确定哪些应用程序被认为是注册的候选者。在Windows上,您需要edit the registry to associate the program with the file type,您还可以将注册表编辑为add "verbs" (right-click menu items) for your program。