Назад | Перейти на главную страницу

Как мне установить переменную ORACLE_HOME для учетной записи локальной системы?

У меня возникла проблема с одной из моих систем, где установлено несколько версий Oracle для поддержки различных приложений, но мне нужно запустить программу как службу Windows, используя учетную запись Local System. В настоящее время я получаю следующую ошибку:

System.Exception: OCIEnvNlsCreate не удалось с кодом возврата -1, но текст сообщения об ошибке недоступен.

но мне сообщили, что это, вероятно, связано с неправильной настройкой переменных среды для учетной записи Local System. Таким образом, как мне на самом деле изменить значения для учетной записи локальной системы?

Если вы не возражаете, чтобы он был установлен для всей системы, просто установите его в разделе «Система» диалогового окна «Переменные среды» на странице «Дополнительно» в свойствах «Мой компьютер». Это определенно установит его для контекста SYSTEM. Вы всегда можете переопределить его для каждого пользователя.

Если вы действительно хотите установить его только в контексте SYSTEM, добавьте его в: HKEY_USERS\.Default\Environment

Если вы хотите использовать для этого пользовательский интерфейс проводника, запустите командную строку как СИСТЕМУ, используя трюк «at (время сейчас + 1 минута) / ИНТЕРАКТИВНЫЙ CMD» из сеанса консоли, завершите процесс Explorer, запущенный как ваша учетная запись пользователя, и запустите проводник из командной строки SYSTEM. (Это действительно "неподдерживаемая" территория, и я не обязательно поощряю вас делать это ...)

Я бы просто установил общесистемную переменную среды.

В качестве альтернативы я бы посмотрел на создание специальной учетной записи службы, предоставил ей необходимые права, настроил службу для работы с этими учетными данными и установил переменную ORACLE_HOME для профиля этой учетной записи. Вы обнаружите, что таким образом легче контролировать то, что делает ваша программа.