VB Script Run time error : Object not a collection

sumit dubey
sumit dubey used Ask the Experts™
I am running some installer on my machine which is giving me error on 78th line. I don't know how to fix hence providing you code snippet from line number 74 to 84:
Function GetInstanceNames
      strKeyPath = "SOFTWARE\Microsoft\Microsoft SQL Server\Instance Names"
      dReg.EnumKey  HKEY_LOCAL_MACHINE,strKeyPath,subkeys
      IsSQLsubkeyFound = FALSE
      FOR EACH subkey IN subkeys
            'WScript.echo subkey
            IF subkey = "SQL" THEN
                  IsSQLsubkeyFound = TRUE
                  EXIT FOR
            END IF
Note : This script basically checks for the sql instance name and then installs simulator installer. This vb script works fine when I have MSSQLSERVER 2008 Express installed on my machine. However currently I have installed MSSQL Server 2012 and having this error. Screenshot attached, in case more info is required please let me know. Thanks!
Watch Question

Do more with

Expert Office
EXPERT OFFICE® is a registered trademark of EXPERTS EXCHANGE®
Top Expert 2016


How do you define dReg?



Hi Rgonzo,

I could find below code which probably talks about "d.Reg" :

Set dReg=GetObject("winmgmts:{impersonationLevel=impersonate}!\\" & _
    strComputer & "\root\default:StdRegProv")

Apologies in advance if the question is not clear to you. Actually the code was written long back and I am here just to use it as an installer.
Top Expert 2016
Are you sure the key ("SOFTWARE\Microsoft\Microsoft SQL Server\Instance Names") exists?

Have you controlled in regedit?
Top Expert 2016

Maybe try

If Not IsNull(subkeys) Then
For Each subkey In subkeys
    WScript.Echo subkey
End If

Open in new window


Thanks Rgonzo, the code snippet given by you eliminated previous error (run time error). However now I am having another error as "SQL Instances are not available". Then I checked in registry and found there is no instance name under "SOFTWARE\Microsoft\Microsoft SQL Server" path. May be now I need to check my SQL installation and registry settings. Thanks for your time and help, I will get back to you in case of any further issue.

Do more with

Expert Office
Submit tech questions to Ask the Experts™ at any time to receive solutions, advice, and new ideas from leading industry professionals.

Start 7-Day Free Trial