Hi Roy,
If the sysop has decided not install II_SYSTEM in in the System
environment (or there may be multiple installations) then you have an
number of options to search for installations:
If you have access to an Ingres Command window.
set | find "II"
set | find /i "lib"
Right click on an Ingres utility icon to see the wrapper which sets the
environment based on the location. In that shell you can query
environment and ingprenv:
eg
Actian Administrator Command Prompt
C:\IngresII\ingres\bin\ingadminwrap.exe "C:\Windows\system32\CMD.EXE" /K
"C:\IngresII\ingres\bin\setingenvs.bat"
Actian Visual DBA
C:\IngresII\ingres\bin\ingwrap.exe "C:\IngresII\ingres\bin\vdba.exe"
For DB servers I always use the 8 character name to simplify admin
scripting. eg C:\IngresII, D:\IngresII or similar. Default windows
directories are usually:
C:\ProgramData\Actian\
C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Actian>
C:\Program Files\Actian\
C:\Program Files (x86) \Actian\
If you have admin access to the server the reg command can be used directly:
reg query HKLM\Software\classes | find /i "\ingres"
HKEY_LOCAL_MACHINE\Software\classes\Ingres.IIA.II
HKEY_LOCAL_MACHINE\Software\classes\Ingres.VDBA.II
HKEY_LOCAL_MACHINE\Software\classes\IngresImportExport
HKEY_LOCAL_MACHINE\Software\classes\IngresImportExport.1
HKEY_LOCAL_MACHINE\Software\classes\Ingres_Database_II
reg query hklm\software\classes\ingres_database_ii /s
HKEY_LOCAL_MACHINE\software\classes\ingres_database_ii\shell
II_SYSTEM REG_SZ C:\IngresII
II_INSTALLATION REG_SZ II
II_TEMPORARY REG_SZ C:\ProgramData\Actian\IngresII\temp
The output of commands can be captured to a variable if you are trying
to automate:
C:\>for /f "tokens=*" %%a in ( 'reg query
hklm\software\classes\ingres_database_ii /s ^| find "II_SYSTEM"') do set
MYLOC=%%a
C:\>set MYLOC=II_SYSTEM REG_SZ C:\IngresII
C:\>echo %MYLOC%
II_SYSTEM REG_SZ C:\IngresII
C:\>for /f "tokens=3" %%a in ( 'reg query
hklm\software\classes\ingres_database_ii /s ^| find "II_SYSTEM"') do set
MYLOC=%%a
C:\>set MYLOC=C:\IngresII
C:\>echo %MYLOC%
C:\IngresII
(ps use %a instead of %%a if running directly from command window)
You can use Powershell to retrieve registry items without admin access.
I'm not a fan of powershell. All my scripts are traditional windows BAT
files.
PS W:\> Get-ChildItem -Path HKLM:\software\classes\ingres* |
Select-Object Name
Name
----
HKEY_LOCAL_MACHINE\software\classes\Ingres.IIA.II
HKEY_LOCAL_MACHINE\software\classes\Ingres.VDBA.II
HKEY_LOCAL_MACHINE\software\classes\IngresImportExport
HKEY_LOCAL_MACHINE\software\classes\IngresImportExport.1
HKEY_LOCAL_MACHINE\software\classes\Ingres_Database_II
PS W:\> Get-Item -Path HKLM:\software\classes\ingres_database_II\shell
Hive: HKEY_LOCAL_MACHINE\software\classes\ingres_database_II\
Name Property
---- --------
shell II_SYSTEM : C:\IngresII
II_INSTALLATION : II
II_TEMPORARY :
C:\ProgramData\Actian\IngresII\temp
PS W:\> Get-ItemProperty -Path
HKLM:\software\classes\ingres_database_II\shell
II_SYSTEM : C:\IngresII
II_INSTALLATION : II
II_TEMPORARY : C:\ProgramData\Actian\IngresII\temp
PSPath :
Microsoft.PowerShell.Core\Registry::HKEY_LOCAL_MACHINE\software\classes\ingr
es_database_II\shell
PSParentPath :
Microsoft.PowerShell.Core\Registry::HKEY_LOCAL_MACHINE\software\classes\ingr
es_database_II
PSChildName : shell
PSDrive : HKLM
PSProvider : Microsoft.PowerShell.Core\Registry
PS W:\> Get-ItemPropertyValue -Path
HKLM:\software\classes\ingres_database_II\shell -name II_SYSTEM
C:\IngresII
> _______________________________________________
> Info-ingres mailing list
>
Info-...@lists.planetingres.org
>
https://lists.planetingres.org/mailman/listinfo/info-ingres
--
Paul White<br>
Shift Seven Solutions<br>
<b>m: 0414681799</b><br>
p: 0754482137<br>
e:
paul....@shift7solutions.com.au<br>
w:
https://www.shift7solutions.com.au<br>
International:
+61414681799<br>