2011-12-13 101 views
0

我知道如何使用explorer.exe命令行選項'/ n,@/select'在Windows資源管理器中打開並選擇文件,但我只能使其與常規字符。任何人都知道如何使它支持unicode字符,例如這個五輪代?我試圖用'utf-8'對它進行編碼,但它不起作用,我確信有一個正確的方法來做到這一點我只是不知道我希望有人能給我想法。提前致謝! :)在Windows資源管理器(Unicode)中打開並選擇項目 - Python

這裏是我的示例代碼:

import win32api 

win32api.ShellExecute(None, 'open', 'explorer.exe', 
         '/n,@/select, ' + file_path, None, 1) 

回答

4

您可以使用​​訪問API以更直接的方式:(FILE_PATH應該是一個Python的Unicode對象,而不是UTF-8)

import ctypes 
ctypes.windll.shell32.ShellExecuteW(None, u'open', u'explorer.exe', 
            u'/n,/select, ' + file_path, None, 1) 
+0

你真了不起,它現在正在工作。非常感謝。 – vinzon

0

this可能會有些用處。這是爲了在Python中使用unicode文件名。但它沒有提到有關pyWin32的任何信息。

+0

是啊我之前瞭解這一點,得到了理念約統一碼但沒有關於如何使用它在Windows資源管理器中選擇項目的線索。我需要知道如何將unicode(utf-8)路徑傳遞給explorer.exe命令行參數,無論是否可能或者我必須在支持unicode的Windows資源管理器中找到其他選擇項目的方法。 – vinzon

+0

URL似乎已經死了 –

相關問題