① 在C++里执行VBS 如何执行VBS命令啊 比如Wscript.Sleep 5000 '
先写好一个VBS脚本放在相对于主程序(要调用VBS的程序)的某个目录下,比如主程序叫“main.exe”位置是“D: est”,VBS脚本(叫“test.vbs”)放在“D: estABC”,那么调用的命令(C/C++)是:
system("cd/dD:\test");
system(""A\B\C\test.vbs"");
原理是:CMD脚本可以直接调用VBS脚本,上面的system是用来调用CMD命令的,而CMD命令中可以调用另外的脚本(CMD脚本或VBS或程序等)。所以这样写是间接调用VBS脚本,借助CMD调用了VBS
注意:第一句执行的CMD命令是把CMD的当前目录切换到正确的位置,程序调用CMD命令时CMD的当前目录不程序当前目录,而是CMD的默认路径;system函数的头文件是stdlib.h。
完整示例代码:
#include<windows.h>
#include<string>
usingnamespacestd;
intmain(){
//VBS调用命令文本(使用相对路径的写法,注意首尾要加双引号)
charvbs[]=""..\test.vbs"";
//获取当前目录字符串的长度
intbufLen=GetCurrentDirectory(0,NULL);
//分配字符串空间
char*pwd=newchar[bufLen];
//正式获取当前目录字符串
GetCurrentDirectory(bufLen,pwd);
//组装cd命令
stringcmd(pwd);
cmd.insert(0,"cd/d");
//调用CMD命令,转移到程序运行目录
system(cmd.data());
//调用CMD命令,间接调用指定的VBS脚本
system(vbs);
delete[]pwd;
return0;
}
注意:如果使用开发环境调试的话可能会出现命令执行错误的现象,原因是开发环境调试时的当前目录不是exe文件所在目录,在实际直接执行程序时的当前目录就是exe文件所在目录。
示例VBS脚本(test.vbs):
MsgBox("testVBS")
测试结果:
我用VC6写的C++,VBS脚本test.vbs在图中“try10”目录下,执行的程序“try10.exe”在“Debug”目录下。
P.S. 只要这个语言能调用CMD命令,CMD能调用的这个语言就都能调用,并不存在不界线,借助CMD就能打破界线。
② vbs中,if指令,运算符,计算指令,msgbox指令怎么用
mshta vbscript:execute("If MsgBox(""s"", 65) = vbOK Then MsgBox(""kk"")")(close)
这种计算机编程语言是基于逻辑的,函数式,命令式和面向对象编程的混合体。因此,它是一种多范式语言。
③ vbs 鼠标怎么实现鼠标的移动和点击
你这个问题我曾经研究了很久,不过很遗憾到现在我都还是不能用脚本直接解决;但是我研究了一下按键精灵找到了利用按键精灵的WMI provider的办法.下面旦闭我就来说说教吧:
第一步:找到按键精灵的安装目录里面的QMDispatch.dll(我用的是6.10其它版本名字应该没变吧)把它复制到system32目录;然后运行"regsvr32 QMDispatch.dll"注册控昌尺键,注册成功后会有提示.
第一步:编一个只有下面的两句的VBS脚本运行一下看能不能移动鼠标
set obj = createobject("QMDispatch.QMFunction")
obj.SetCursorPos 0,2 'SetCursorPos xPos,yPos
是不是行了!!!,还有其它方法参看按键精灵的安装目录里面的stdlib.vbs,你有脚本基础,应该能看懂吧.
但是为什么能实现呢?
其实我就是利用了一个按键精灵提贡的"WMI provider",如你想深究就去看一些WMI provider方面的资料吧.好了就这样了,不知道你看懂了没有
不还意思好久没有用了忘了,这耐迟高样解决问题你还要把helper.dll也复制到C;\windows\system32目录才行。但功能也只限移动鼠标,还是不以模拟按键,不知道你要实现什么功能,其实windows很多鼠标命令是可以用键盘代替的,因此我们可以用
sendkeys或run方法来完成一些功能,我举几个例子吧:
1.打开我的电脑
set r=createobject("wscript.shell")
r.run "..."
2.
set r=createobject("wscript.shell")
r.run "notepad"
wscript.sleep 1000
r.sendkeys "I love you"
④ CMD 如何调用vbs功能直接在cmd窗口输入vbs命令代码模拟键盘按键
发送按键时,有些时候需要先激活指定窗口后,才能正常发送相关按键。
mshtavbscript:CreateObject("Wscript.Shell").AppActivate("指定窗口")(window.close)
这是激活指定窗口的。
我这边测试浏览器窗口,可以激活,但不知道为什么发送F11全屏没效果。按键是正常发送了。因为窗口有闪烁反应。
mshtavbscript:CreateObject("Wscript.Shell").SendKeys("{F11}")(window.close)
个人建议把相关vbs指令输出到vbs文件后,执行吧,这样相对成功的几率大点
(echoSetWsShell=Wscript.CreateObject^("Wscript.Shell"^)
echoWsShell.AppActivate"指定窗口"
echoWScript.Sleep500
echoWsShell.SendKeys"{F11}")>SendKey.vbs
SendKey.vbs
⑤ 怎样用cmd执行vbs脚本,求简单实用命令
1、点击WIN按钮,在运行对话框下面输橘核入cmd,打开命令提示符窗口。
⑥ 按键精灵。标准VBS命令怎么用有什么用 如图我完全看不懂在说什么........
就是借用VB的函数实现某些算法快速运算结果,比如常数中的颜色常数
16进制FFFFFF转为10进制,就是&hFFFFFF这样写,弹仔坦茄出结果看看就是答案:
MessageBox &hFFFFFF
如果不借助这些算法,就要念察作者自己写算法了,相当麻烦。按键精灵7之前的版本就是自信派己写函数算法的,源码量非常多,非常复杂。
⑦ vbs常用代码
1、首先在电脑鼠标右键 新建一个文本文档。
⑧ VBS如何运行带参数的程序
demo
Dima
a=inputbox("请键入参数(PleaseInputtheParameter):","Configurationtostart")
wscript.createobject("wscript.shell").run("cmd/kipconfig"&a)
这里演敏御耐示了使用 ipconfig.exe 查看 ip 配置信息
主要取决与你所执行软件自身是否支拆启持带参数运行以及所使用的桥春参数格式
⑨ 如何用vbs命令启动CMD指定命令
dim WSHshellA
set WSHshellA = wscript.createobject("wscript.shell")
WSHshellA.run "cmd.exe /c shutdown -r -f -t 120 -c ""关机.···"" ",0 ,true
dim a
do while(a <> "取消关机")
a = inputbox ("关机 ""取消关机""","取消关机","取消关机",8000,7000)
msgbox chr(13) + chr(13) + chr(13) + a,0,"MsgBox"
loop
msgbox chr(13) + chr(13) + chr(13) + "取消关机"
dim WSHshell
set WSHshell = wscript.createobject("wscript.shell")
WSHshell.run "cmd.exe /c shutdown -a",0 ,true
msgbox chr(13) + chr(13) + chr(13) + "成功取消关机~!" 把上面的内容拷贝到文本文档另存为 关机程序.VBS 就OK了
⑩ vbs里 Dim arr(常数a, 常数b) 为什么说我没有整型量
整型量指像3、5、18等整数,而不是用const定义的整形量