回复 4# apang
我把代码改为如下:- msg = "命令提示符下 输入的格式如 zzz.vbs -Saaa -TD:\zzz"
- Set fso = CreateObject("Scripting.FileSystemObject")
- Set oArgs = WScript.Arguments
- If oArgs.Count >= 2 Then
- fd = Mid(oArgs(1), 3) & "\"
- ElseIf oArgs.Count = 1 Then
- fd = ".\"
- Else
- MsgBox msg, , "提示" : WScript.Quit
- End If
-
- If Mid(oArgs(0), 3) = "aaa" Then
- Call ReplaceDEF()
- ElseIf Mid(oArgs(0), 3) = "bbb" Then
- Call ReplaceSFT()
- ElseIf Mid(oArgs(0), 3) = "ccc" Then
- Call ReplaceSYS()
- Else
- MsgBox msg, , "提示" : WScript.Quit
- End If
-
- Function ReplaceDEF()
- Set f = fso.OpenTextFile(fd & "HIVEDEF.INF", 1, false, -1)
- s = Replace(f.ReadAll, "HKCU,""", "HKLM,""WB-default\")
- s = "[DEFAULTINSTALL]" & vbCrLf & "ADDREG = AddReg" & vbCrLf & vbCrLf & s
- fso.OpenTextFile(fd & "HIVEDEF.INF", 2, true, -1).Write s
- f.Close
- End Function
-
- Function ReplaceSFT()
- Set f = fso.OpenTextFile(fd & "HIVESFT.INF", 1, false, -1)
- s = Replace(f.ReadAll, "HKLM,""SOFTWARE\", "HKLM,""WB-software\")
- s = "[DEFAULTINSTALL]" & vbCrLf & "ADDREG = AddReg" & vbCrLf & vbCrLf & s
- fso.OpenTextFile(fd & "HIVESFT.INF", 2, true, -1).Write s
- f.Close
- End Function
-
- Function ReplaceSYS()
- Set f = fso.OpenTextFile(fd & "HIVESYS.INF", 1, false, -1)
- s = Replace(f.ReadAll, "HKLM,""SYSTEM\", "HKLM,""WB-setup\")
- s = "[DEFAULTINSTALL]" & vbCrLf & "ADDREG = AddReg" & vbCrLf & vbCrLf & s
- fso.OpenTextFile(fd & "HIVESYS.INF", 2, true, -1).Write s
- f.Close
- End Function
复制代码 可以达到要求---aaa 时处理 HIVEDEF.INF,bbb 时处理 HIVESFT.INF,ccc 时处理 HIVESYS.INF,但问题来了:它区分大小写,也就是只能处理替换大写字符,请教如何让它不分大小写?
另外,可否处理完以后,运行安装如 HIVEDEF.INF?
bat 下安装 .inf 命令是 rundll32 syssetup,SetupInfObjectInstallAction DefaultInstall 128(或132) D:\inf\default.inf,vbs 中如何做? |