NewsArchive
05-19-2010, 02:16 AM
Ok, I have read over the other posts I found on Registry and 64bit os.
Still not sure why I am having the problem I am having.
Synopsis:
Get the SQL paths from the registry, so I know where to put the datafiles I
am installing/updating.
Code:
Set Variable %SQL_MSSQLKEY% to FUNCTION:Get Registry Key
Value("MyInstanceName") from
"HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\Instance
Names\SQL"
If %_SB_ERRORCODE% Does Not Equal "0" Then
Set Variable %SQL_DATAPATH% to FUNCTION:Get Registry Key
Value("SQLDataRoot") from "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft
SQL Server\%SQL_MSSQLKEY%\Setup"
Set Variable %SQL_BACKUPPATH% to FUNCTION:Get Registry Key
Value("BackupDirectory") from
"HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL
Server\%SQL_MSSQLKEY%\MSSQLServer"
Else
Display Message Box "It appears there was an error accessing the
follow..." -- "Error Accessing Registry"
End
Results:
This works perfectly on any 32 bit OS, but it appears that on 64 bit OS, it
is looking in the Wow6432Node section. Since SQL registry keys aren't
there, I get errors.
So, how do I force access into the regular 64 bit area of the registry?
Notes:
Install IS code signed. This particular install is not using any clarion
apps. Simply installs a SQL MyDatabase.BAK file, and then runs a restore
script.
Glenn Paschal
Still not sure why I am having the problem I am having.
Synopsis:
Get the SQL paths from the registry, so I know where to put the datafiles I
am installing/updating.
Code:
Set Variable %SQL_MSSQLKEY% to FUNCTION:Get Registry Key
Value("MyInstanceName") from
"HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\Instance
Names\SQL"
If %_SB_ERRORCODE% Does Not Equal "0" Then
Set Variable %SQL_DATAPATH% to FUNCTION:Get Registry Key
Value("SQLDataRoot") from "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft
SQL Server\%SQL_MSSQLKEY%\Setup"
Set Variable %SQL_BACKUPPATH% to FUNCTION:Get Registry Key
Value("BackupDirectory") from
"HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL
Server\%SQL_MSSQLKEY%\MSSQLServer"
Else
Display Message Box "It appears there was an error accessing the
follow..." -- "Error Accessing Registry"
End
Results:
This works perfectly on any 32 bit OS, but it appears that on 64 bit OS, it
is looking in the Wow6432Node section. Since SQL registry keys aren't
there, I get errors.
So, how do I force access into the regular 64 bit area of the registry?
Notes:
Install IS code signed. This particular install is not using any clarion
apps. Simply installs a SQL MyDatabase.BAK file, and then runs a restore
script.
Glenn Paschal