2010-09-18 89 views

回答

1

你應該能夠爲此使用ShellExecute;播放DVD或CD的動詞似乎是「玩」。

ShellExecute(NULL, "play", "D:\\", NULL, NULL, SW_SHOWNORMAL); 
+0

不幸的是這不起作用:雖然'play'似乎不是一個有效的動詞(根據MSDN),但ShellExecute函數會抱怨,沒有應用程序與文件「D:\」(或「D:」 )。 (GetLastError()= 1155 = ERROR_NO_ASSOCIATION) – Axel 2010-09-18 18:23:41

+0

在我的機器上正常工作。 – 2010-09-18 19:25:37

+0

咦?!這可能是比我更新的Windows版本的功能嗎? (我試過XP和Vista ...) – Axel 2010-09-18 19:35:42

0

它已經太長時間,因爲我用的Windows,我給你確切的細節,但你應該能夠得到一個什麼樣的潛水做進入註冊表編輯器在資源管理器中設置的一些想法和檢查什麼「播放「上下文菜單實際上在做。

我記得,上下文菜單條目是在一個子樹中定義的,其路徑類似於HKEY_LOCAL_MACHINE/Software/Microsoft/Windows/explorer/...,但不要引用它。

+0

嗯...如何從HKEY_CLASSES_ROOT/DVD/shell/play/command獲取命令行? – Axel 2010-09-18 19:14:03

+0

好吧,這似乎工作;雖然它涉及到很多字符串切割操作...... – Axel 2010-09-18 20:34:02

+0

我確實說過我在很久以前沒有使用Windows,並且我記憶中的路徑可能並不完全正確。鑑於大約6年前我使用的最後一個Windows是WinXP,我認爲「它們都有字母」可以被認爲足夠接近,只能算作部分錯誤。 :P我會拭目以待,看看這裏會發生什麼,如果這條評論的主題在接下來的幾天沒有用,我會刪除我的答案以保持清潔。 – ssokolow 2010-09-19 04:34:36