2009-08-05 20 views
11

VbScript kullanarak kayıt defteri değerini nasıl kontrol edebilirim? BöyleVbScript kullanarak kayıt defteri değeri nasıl kontrol edilir

+0

vb kayıt defteri anahtarı ve kontrol etmek istediğiniz değeri, değer türünde bir örnek gibi, mod ayrıntılarını verebilir misiniz? – Helen

+0

Değeri okumanız mı, var olup olmadığını kontrol etmeli mi, değeri mi yoksa başka bir şeyi mi teyit etmelisiniz? – Helen

cevap

25
function readFromRegistry (strRegistryKey, strDefault) 
    Dim WSHShell, value 

    On Error Resume Next 
    Set WSHShell = CreateObject("WScript.Shell") 
    value = WSHShell.RegRead(strRegistryKey) 

    if err.number <> 0 then 
     readFromRegistry= strDefault 
    else 
     readFromRegistry=value 
    end if 

    set WSHShell = nothing 
end function 

Kullanımı:

str = readfromRegistry("HKEY_LOCAL_MACHINE\SOFTWARE\Adobe\ESD\Install_Dir", "ha") 
wscript.echo "returned " & str 

Original post

7

deneyin şey:

Dim windowsShell 
Dim regValue 
Set windowsShell = CreateObject("WScript.Shell") 
regValue = windowsShell.RegRead("someRegKey") 
3

Bu sizin için çalışması gerekir:

Dim oShell 
Dim iValue 

Set oShell = CreateObject("WScript.Shell") 

iValue = oShell.RegRead("HKLM\SOFTWARE\SOMETHINGSOMETHING") 
1

Bunu deneyin. Bu komut, kullanıcının adı & ana dizininde güncel giriş yapılmış olur:

On Error Resume Next 

Dim objShell, strTemp 
Set objShell = WScript.CreateObject("WScript.Shell") 

strTemp = "HKEY_CURRENT_USER\Volatile Environment\USERNAME" 
WScript.Echo "Logged in User: " & objShell.RegRead(strTemp) 

strTemp = "HKEY_CURRENT_USER\Volatile Environment\USERPROFILE" 
WScript.Echo "User Home: " & objShell.RegRead(strTemp) 
1
Set objShell = WScript.CreateObject("WScript.Shell") 
skey = "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{9A25302D-30C0-39D9-BD6F-21E6EC160475}\" 
with CreateObject("WScript.Shell") 
    on error resume next   ' turn off error trapping 
    sValue = .regread(sKey)  ' read attempt 
    bFound = (err.number = 0)  ' test for success 
end with 
if bFound then 
    msgbox "exists" 
else 
    msgbox "not exists" 
End If 
İlgili konular