Переменная среды - конечно, удобно, но переменные среды в Oracle под Windows чаще всего не используют.
Результат сегодняшнего "век живи, век учись":
Код:
Dim Folder1, Folder2, key, Str
set sh = WScript.CreateObject("WScript.Shell")
Set exec = sh.Exec("reg QUERY HKLM\Software\ORACLE /F KEY")
Set OutStream = exec.StdOut
While Not OutStream.AtEndOfStream
Str = OutStream.ReadLine()
if (InStrRev(Str, "KEY") <> 0) then
rem WScript.Echo(Str)
key = Str & "\ORACLE_HOME"
rem WScript.Echo("KEY: " & key)
OH = sh.RegRead(key)
WScript.Echo("ORACLE_HOME 32: " &OH)
end if
Wend
Set exec = sh.Exec("reg QUERY HKLM\Software\WOW6432Node\ORACLE /F KEY")
Set OutStream = exec.StdOut
While Not OutStream.AtEndOfStream
Str = OutStream.ReadLine()
if (InStrRev(Str, "KEY") <> 0) then
rem WScript.Echo(Str)
key = Str & "\ORACLE_HOME"
rem WScript.Echo("KEY: " & key)
OH = sh.RegRead(key)
WScript.Echo("ORACLE_HOME 64: " &OH)
end if
Wend
Код:
C:\>cscript oracle_home.vbs
Сервер сценариев Windows (Microsoft ®) версия 5.812
Copyright (C) Корпорация Майкрософт 1996-2006, все права защищены.
ORACLE_HOME 32: c:\ora11\orahome
ORACLE_HOME 64: C:\ora11client\orahome