2011-12-13 47 views
0

我有一個共享的Office加載使用一個單獨的進程使用下面的代碼刪除文件:從Office加載項調用進程?

string currentDir = System.Reflection.Assembly.GetExecutingAssembly().Location; 
currentDir = Path.GetDirectoryName(currentDir); 
Process.Start(Path.Combine(currentDir, "process.exe"), "/d \"" + file + "\""); 

這似乎是隨機找不到的過程,即使它是在同一目錄下加入。 我想避免必須將目錄添加到PATH變量。

任何想法?

+0

通過隨機...你的意思是有時`Process.Start`起作用或者它從來不起作用? – SliverNinja 2011-12-13 17:02:24

+0

是的,有時它有效,然後有時它會拋出一個錯誤,並找不到exe – 2011-12-13 17:03:44

回答

1

我想避免必須將目錄添加到PATH變量。

這不會幫助,Process.Start必須提供完全合格的路徑。

我會建議更新安裝程序寫的安裝目錄到註冊表中。確保授予每個人對密鑰/值的讀取權限。在另一個應用程序中使用assembly.Location和/或AppDomain.CurrentDirectory可能會產生問題。只要避免它,並使用知名的價值存儲。

相關問題