我在医院环境中工作,现在正在进行PC部署。部署部分要求我们在网络驱动器上查看2个文件,以查找有关旧系统的信息。他们使用特定端口和/或TTY来查看每个部门的信息。
我正在尝试创建一个可以在2个不同的记事本窗口中打开2个文件的VBS文件。第一个打开但pcview.cfg一直给我一个错误。我试图链接到HBOWEM32所指向的相同位置。谁能解决?出于安全考虑,我已经取出了网络驱动器的确切位置。下面的代码提示输入特定的文件夹名称,即旧的PC名称。输入该数据后,它会打开HBOWEM32文件,但说它找不到其他部分。我已手动查看文件夹内部并且pcview.cfg文件已存在。我只是想要一种更快的方法来打开这些而不是强行通过运行提示。
这是代码。
CONST strDir = "<Netowrk Location)"
Dim WshShell
set objShell = CreateObject("WScript.Shell")
set objFSO = CreateObject("Scripting.FileSystemObject")
function findFolder(strDir, strFlag)
set objFolder = objFSO.GetFolder(strDir)
for each objSubFolder in objFolder.SubFolders
if (inStr(objSubFolder.Name, strFlag)) then
findFolder = objSubFolder.Path
exit function
else
findFolder = findFolder (objSubFolder.Path, strFlag)
end if
next
end function
strFlag = inputBox("Enter Computer Name:")
strWeb = findFolder(strDir, strFlag) & "\HBOWEM32.ini"
objShell.Run strWeb
Set WshShell = CreateObject ("WScript.Shell")
WshShell.Run ("notepad.exe """ + "\\<same location as above>\Pcview.cfg""")
答案 0 :(得分:2)
在代码中:
Option Explicit
...
Dim strComputer : strComputer = InputBox("Enter Computer Name:")
Dim strFolder : strFolder = findFolder(strDir, strComputer)
Dim strIniFSpec : strIniFSpec = objFSO.BuildPath(strFolder, "HBOWEM32.ini")
WScript.Echo "will run '" & strIniFSpec & "'"
objShell.Run strIniFSpec
Dim WshShell : Set WshShell = CreateObject("WScript.Shell")
Dim strCfgFSpec : strCfgFSpec = objFSO.BuildPath(strFolder, "Pcview.cfg")
Dim strCmd : strCmd = "notepad.exe """ & strCfgFSpec & """"
WScript.Echo "will run '" & strCmd & "'"
WshShell.Run strCmd
(未经测试,请小心)