當使用「Process.CloseMainWindow()」方法試圖通過另一個應用程序關閉Windows資源管理器(而非Internet Explorer)窗口時,我遇到問題;因爲它沒有關閉資源管理器窗口,所以它試圖關閉Windows(操作系統),順便說一下,Windows XP。CloseMainWindow()關閉Windows資源管理器窗口的問題
的代碼如下:
[DllImport("user32.dll")]
static extern int GetForegroundWindow();
[DllImport("user32.dll")]
private static extern UInt32 GetWindowThreadProcessId(Int32 hWnd, out Int32 lpdwProcessId);
public String[] exeCommand()
{
try
{
//Get App
Int32 hwnd = 0;
hwnd = GetForegroundWindow();
Process actualProcess = Process.GetProcessById(GetWindowProcessID(hwnd));
//Close App
if (!actualProcess.CloseMainWindow())
actualProcess.Kill();
}
catch { throw; }
return null;
}
假設 「actualProcess」 是 「的explorer.exe」
任何幫助將理解!! 致敬!
Explorer.exe可以顯示很多窗口。你需要在你的問題中縮小哪一個你可能想要關閉的問題。 – 2010-04-05 15:42:52