從32位應用程序讀取64位注冊表我有為AnyCPU編譯的ac#單元測試項目。我們的構(gòu)建服務器是64位機器,并安裝了64位SQL Express實例。測試項目使用類似于以下內(nèi)容的代碼來標識.MDF文件的路徑: private string GetExpressPath()
{
RegistryKey sqlServerKey = Registry.LocalMachine.OpenSubKey( @"SOFTWARE\Microsoft\Microsoft SQL Server\Instance Names\SQL" );
string sqlExpressKeyName = (string) sqlServerKey.GetValue( "SQLEXPRESS" );
RegistryKey sqlInstanceSetupKey = sqlServerKey.OpenSubKey( sqlExpressKeyName + @"\Setup" );
return sqlInstanceSetupKey.GetValue( "SQLDataRoot" ).ToString();
}這段代碼在我們的32位工作站上工作正常,并且在我最近使用NCover啟用代碼覆蓋率分析之前,在構(gòu)建服務器上工作正常。因為NCover使用32位COM組件,所以測試運行器(Gallio)作為32位進程運行。檢查注冊表,下面沒有“實例名稱”鍵HKEY_LOCAL_MACHINE \ SOFTWARE \ Wow6432Node \ Microsoft \ Microsoft SQL Server在32位模式下運行的應用程序是否有辦法訪問Wow6432Node外部的注冊表?
- 3 回答
- 0 關(guān)注
- 804 瀏覽
添加回答
舉報
0/150
提交
取消