Если есть класс, который вызывается как часть пакета установщика MSI как CustomAction.
Он пытается прочитать значения из реестра (попытаться найти локальные экземпляры SQL-Server):
RegistryKey sqlServer = Registry.LocalMachine.OpenSubKey(
@"SOFTWARE\Microsoft\Microsoft SQL Server", false );
string[] localInstances = (string[])sqlServer.GetValue( "InstalledInstances" );
В качестве автономного приложения это работает нормально, но не работает, если вызывается из установщика (запускается от имени того же пользователя). В установщик GetValue
возвращает null
.
Есть идеи?
Edit:
Я запустил установщик и исполняемый файл на той же машине, что и тот же пользователь.
FrameWork - это .Net 4 на 64-битной машине с Windows 7
Заранее спасибо
Mario