我有一个需要将多个配置文件写入reg_sz的应用程序
"sEndorsement"="C:\\x\\file1.txt
C:\\x\\file2.txt"
通过regedit添加此功能并不起作用。我尝试使用vbscript,如下所示,
Dim myval
myval = "C:\\x\\file1.txt" & VbCrLf _
& "C:\\x\\file2.txt" & VbCrLf _
& "C:\\y\\file3.dll" & VbCrLf
Dim WSHShell
set WSHShell = CreateObject("WScript.Shell")
WSHShell.RegWrite "HKEY_USERS\abc\def\TheSelectedFiles", myval, "REG_SZ"
但它仍然以单行出现...我不确定..有人可以帮我吗?感谢
答案 0 :(得分:3)
对于多行,称为REG_MULTI_SZ而不是REG_SZ。 您无法在HKEY_USERS的根目录下创建密钥,您需要使用.Default子项。值将显示在同一行,但如果双击该值,则可以看到有3行。
Set objRegistry = GetObject("winmgmts:{impersonationLevel=impersonate,authenticationLevel=pktPrivacy}!\\.\root\default:StdRegProv")
Const HKEY_CLASSES_ROOT = &H80000000
Const HKEY_CURRENT_USER = &H80000001
Const HKEY_LOCAL_MACHINE = &H80000002
Const HKEY_USERS = &H80000003
Const HKEY_CURRENT_CONFIG = &H80000005
strKeyPath = ".DEFAULT\abc\def\TheSelectedFiles"
MultValueName = "sEndorsement"
iValues = Array("C:\x\file1.txt", "C:\x\file2.txt", "C:\y\file3.dll")
objRegistry.CreateKey HKEY_USERS,strKeyPath
objRegistry.SetMultiStringValue HKEY_USERS,strKeyPath,MultValueName,iValues