環境:的Windows Server 2008 R2 64位如何從代碼執行兼容模式下的程序?
我有一個程序,用的Windows Server 2003 SP1兼容模式工作。但是,當我嘗試使用C#執行此程序時,程序出錯。
我認爲這是因爲它從另一個程序調用時沒有以兼容模式運行。我從我的代碼中使用Process.Start(pathToExe)
來啓動這個程序。
我試圖在兼容模式下運行調用程序來檢查這是否會使程序正常運行。
請注意,我已經設定的程序從屬性設置爲兼容性|兼容性。
環境:的Windows Server 2008 R2 64位如何從代碼執行兼容模式下的程序?
我有一個程序,用的Windows Server 2003 SP1兼容模式工作。但是,當我嘗試使用C#執行此程序時,程序出錯。
我認爲這是因爲它從另一個程序調用時沒有以兼容模式運行。我從我的代碼中使用Process.Start(pathToExe)
來啓動這個程序。
我試圖在兼容模式下運行調用程序來檢查這是否會使程序正常運行。
請注意,我已經設定的程序從屬性設置爲兼容性|兼容性。
我不知道如果我正好理解你的問題,但如果你想在兼容模式始終運行程序,你可以設置註冊表,使其工作等等。
註冊表項:
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers
添加一個新的字符串項,
名稱:在充斥着你應用程序路徑。
類型:REG_SZ
數據:必需的兼容值。我認爲你的情況是WIN2003
或WIN2003SP1
。
Example:
C:\ Program Files文件\ SYSTEM32 \ Notepad.exe的REG_SZ WIN2003
您可以檢查你正在下運行當前的操作系統版本,您可以調用程序之前設置和取消此註冊表值。