2012-07-26 69 views
1

我有一个小的Python程序。我使用Windows注册表来启用使用右键单击上下文菜单打开文件。我的注册表项:在Windows中传递希伯来文件名作为命令行参数

C:\用户\我\项目\ mynotepad \ NOTEPAD.EXE “%1”

当我试图打开一个文件,一个希伯来名字用我右键点击上下文菜单中,我将文件名称命名为问号,并在获取文件大小时收到异常。

这里是我的代码:

file_name = sys.argv[1] 
file_size = os.path.getsize(unicode(file_name)) 

我已经试过这样:

file_name = sys.argv[1].decode("cp1255").encode('utf-8') 
file_size = os.path.getsize(unicode(file_name)) 

但没有奏效。

有什么建议吗?

回答

2

原来这是一个问题。有关解决方案,请参阅here。你需要诉诸Windows API来获取参数。