Solved

Use VBS script and WSHShell.RegWrite

Posted on 2004-09-29
4
4,447 Views
Last Modified: 2008-01-09
A small project I am working on requires a silent installation of some software. For NAV2k5, it means no CD Key gets entered. I want a .vbs script I can run that prompts for the CD key, then merges the key to the registry.
This can be done with the info here ( http://www.winguides.com/scripting/library.php?id=6 ).

The key is...
[HKEY_LOCAL_MACHINE\SOFTWARE\Symantec\CCPD-LC\KStore\00000082\00000002\00000002]
"Key"="xxxxxxxxxxxxxxxxxxxxxxxx"

I need the .vbs script to prompt for the "xxxxxxxx"'s
Should be easy enough, I think...I don't know how to do it though. Any takers?
0
Comment
Question by:DVation191
  • 2
  • 2
4 Comments
 
LVL 4

Expert Comment

by:avi247
ID: 12181919
Option Explicit

' [HKEY_LOCAL_MACHINE\SOFTWARE\Symantec\CCPD-LC\KStore\00000082\00000002\00000002]
' "Key"="xxxxxxxxxxxxxxxxxxxxxxxx"
' REF:  http://www.winguides.com/scripting/library.php?id=6

Dim CDKEY
Dim WSHShell, RegKey, ScreenSaver, Result


CDKEY = InputBox("CD Key","Please enter the CD Key and press Ok. Press Cancel to Exit.","")

' keep asking till your CDKEY is valid or user exits.
While Not IsCDKeyValid(CDKEY)
  CDKEY = InputBox("CD Key","Please enter a valid CD Key and press Ok.","")
wend


Set WSHShell = CreateObject("WScript.Shell")
RegKey = "HKEY_LOCAL_MACHINE\SOFTWARE\Symantec\CCPD-LC\KStore\00000082\00000002\00000002\"
WSHShell.RegWrite regkey & "Key", CDKEY
Set WSHShell = Nothing
Msgbox("Done")


Function IsCDKeyValid(CDKEY)

  CDKEY = Trim(CDKEY)  

 'enter validation functions here
  If Len(CDKEY) = 0 Or Len(CDKEY) = 10 then
    IsCDKeyValid = True
  else
    IsCDKeyValid = False
  end if

End Function
0
 
LVL 20

Author Comment

by:DVation191
ID: 12182513
looks good.

i'd do this myself if i could...but could you remove the valid cd key check? it isnt necessary because i want to be able to accept a variety of legit keys, and the application itself will check the validity of the key upon startup.

if you could do that i'd say this question is closed. thanks for your help.
0
 
LVL 4

Accepted Solution

by:
avi247 earned 500 total points
ID: 12182878
Option Explicit

' [HKEY_LOCAL_MACHINE\SOFTWARE\Symantec\CCPD-LC\KStore\00000082\00000002\00000002]
' "Key"="xxxxxxxxxxxxxxxxxxxxxxxx"

Dim CDKEY
Dim WSHShell, RegKey, ScreenSaver, Result


CDKEY = InputBox("Please enter the CD Key and press Ok. Press Cancel to Exit.","CD Key","")


If CDKEY <> "" then
      Set WSHShell = CreateObject("WScript.Shell")
      RegKey = "HKEY_LOCAL_MACHINE\SOFTWARE\Symantec\CCPD-LC\KStore\00000082\00000002\00000002\"
      WSHShell.RegWrite regkey & "Key", CDKEY
      Set WSHShell = Nothing
end if

0
 
LVL 20

Author Comment

by:DVation191
ID: 12183027
Many thanks. It's perfect!
0

Featured Post

Gigs: Get Your Project Delivered by an Expert

Select from freelancers specializing in everything from database administration to programming, who have proven themselves as experts in their field. Hire the best, collaborate easily, pay securely and get projects done right.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

If you’re thinking to yourself “That description sounds a lot like two people doing the work that one could accomplish,” you’re not alone.
Although it can be difficult to imagine, someday your child will have a career of his or her own. He or she will likely start a family, buy a home and start having their own children. So, while being a kid is still extremely important, it’s also …
Viewers will learn how to properly install Eclipse with the necessary JDK, and will take a look at an introductory Java program. Download Eclipse installation zip file: Extract files from zip file: Download and install JDK 8: Open Eclipse and …
In this fourth video of the Xpdf series, we discuss and demonstrate the PDFinfo utility, which retrieves the contents of a PDF's Info Dictionary, as well as some other information, including the page count. We show how to isolate the page count in a…

776 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question