2010-09-12 144 views
0

我在我的應用程序中使用MVVM Light Toolkit。雖然我不知道我的問題是否與它有關。 我已經爲Win7 32位上的Windows資源管理器添加了一個ContextMenu條目。資源管理器ContextMenu條目問題

它看起來像這樣:

[HKEY_CLASSES_ROOT\*\shell\MyEntry] 
[HKEY_CLASSES_ROOT\*\shell\MyEntry\command] "MyPath+MyExe" "%1" 

現在,如果我打開從文件夾中myExe是所有的作品像它應該一個文件,但如果我嘗試從不同的文件夾中打開一個文件,我的應用程序瞬間崩潰。

我希望有人能幫助我。

編輯:我沒有做任何與我的應用程序中的啓動參數。

回答

0

當您從任何地方點擊上下文菜單項,那麼它是不是與你的註冊表項的問題你的應用程序被lauched,它與你的應用程序的問題。

檢查您的假設。你是否假設該文件與應用程序位於同一目錄中?

+0

就像我說我不是這樣做的論據任何事情。我已經測試過讓他們用string [] = Environment.GetCommandLineArgs();結果是像我期望從同一文件夾(顯示文件名),但不能從任何文件夾開始時得到任何東西。不能調試這個。 – SubZero 2010-09-12 20:57:54

0

那麼你是對的:) 我正在從虛擬機構造函數中的xml加載我的數據。 XML文件位於應用程序文件夾的子文件夾中。 我使用Environment.CurrentDirectory獲取ApplicationFolder在我編的開始,雖然當我從另一個文件夾傳遞CommandLineArguments到我的應用程序當前目錄改變,所以我的應用程序崩潰,由於缺乏正確的錯誤處理(我沒有通過例外)我沒有注意到這是問題所在。

Thx又把你推向了正確的方向。

(順便說一句,我得到了來自MSDN論壇錯碼,我應該想想也是下一次簽入的庫)