найти путь установки Инструментов SQL Server в 64-битных и 32-битных системах - PullRequest
1 голос
/ 03 февраля 2012

У меня проблемы с установкой SQL Server 2005 Express Edtion на 64-разрядных компьютерах. Кажется, проблема в том, что система не находит sqlcmd (вызывается из ShellExec). Я считаю, что это связано с тем, что система не находит правильную переменную среды Path. Итак, мне нужно найти полный путь к sqlcmd.exe. Я узнал, как это сделать в 32-разрядных системах (проверьте реестр для HKEY_LOCAL_MACHINE \ ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ \ Microsoft \ Microsoft SQL Server \ 90 \ Tools \ ClientSetup)

Однако я не знаю, что искать на 64-битных машинах, и я прочитал сообщение с предупреждением, что оно может быть установлено под WoW, но и в других местах.

Кто-нибудь знает, как убедиться, что я выбрал правильный путь?

Спасибо

1 Ответ

1 голос
/ 14 марта 2012

Я подозреваю, что если вы используете директиву ArchitectureInstallIn64Bit Setup в вашем скрипте innosetup, это позволит вам попасть в 64-битный реестр.На этом этапе вы сможете запросить оба бита реестра, например

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\90\Tools\ClientSetup

и

HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Microsoft SQL Server\90\Tools\ClientSetup

Извините, я не проверял это, но это помогло нам в похожей ситуации некоторое времяназад.

Редактировать: На самом деле коллега отметил, что innosetup также имеет ключи псевдо, такие как HKLM64, которые также могут использоваться.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...