当前位置:首页 » 编程软件 » vbs脚本返回值

vbs脚本返回值

发布时间: 2022-06-18 14:12:15

❶ bat调用vbs并返回值(用mshta)

利用for命令,去执行mshta,然后获得返回值。

for /f "delims=" %%a in ('mshta vbscript:^(.............^)') do set 结果=%%~a

❷ VBS返回语句

Function AA()
'/////////////////////////
'/////////////////////////
AA = 1
End Function
赋值到和函数名称同名的变量即可

❸ VBS怎么使用有返回值的函数

给你弄个示例看看就明白了

Dima
a=5
MsgBox5+fact(4)'这里引用函数计算4的阶乘
'下面是一个有返回值的算阶乘的函数
Functionfact(n)
Dimi
fact=1
Fori=1Ton
fact=fact*i
Next
EndFunction

❹ VBS function返回值问题

<body>
<script language="VBScript">
function xingming()
if form1.t1.value="" then
msgbox("用户名不能为空")
xingming=false
else
xingming=true
end if
End function
</script>
<form name="form1" method="post" action="a.htm" onsubmit="jscript:return xingming()">
<input type="text" name="t1">
<input type="Submit" name="Submit" value="提交" >
</form>
</body>

❺ 在VC++中调用VBS程序,并且需要得到这个VBS程序的返回值,怎么做,

没有过多的理论, 但有些内容是必要的.

在 C++ 中执行一段 Script 的方法相当的多, 但你需要其返回值, 这可能需要使用 MS 提供的 MSScript.ocx (在 C++ 中引用该 ActiveX Object).

先来个例子, 假定一段 VBScript 的过程如下:
Private Function GetValue()
GetValue=5
End Function

你期望在 C++ 中执行此过程, 并将返回值 5 保存到 C++ 中定义的变量中.
这好办, 在 C++ 需要引用 MSScript.ocx, 以下是一个Win32 Console Application (控制台程式, 但这与本主题无关):

main.cpp

#include <windows.h>
#include <stdio.h>
#import "D:\WINDOWS\System32\msscript.ocx" raw_interfaces_only, raw_native_types, no_namespace, named_guids

int main()
{
_variant_t vReturn; // Script 的返回值, Script 是返回 Variant 的
short returnValue; // 从返回值提取有用的值, 因为例子返回 5, 所以用 short 保存
::CoInitialize(NULL);

::IScriptControlPtr p(__uuidof(ScriptControl));
p.AddRef();
p->put_Language(_bstr_t("VBScript")); // 必要, Script 为 VBScript, 当然还可以是 JScript 等
p->put_AllowUI(TRUE); // 可选, 若 VBScript 出现对话框, 并希望在响应之前, C++ 的窗口要等待, 则用 TRUE
p->AddCode(_bstr_t("Private Function GetValue()\nGetValue=5\nEnd Function"));
p->Eval(_bstr_t("GetValue"), &vReturn); // 执行过程, 另还有 Run 和 ExecuteStatement 方法, 但这是关联返回值的.
returnValue = vReturn.iVal; // 因为例子返回 5, 所以使用 _variant_t 的 iVal
p->Release();

printf("%d\n", returnValue);
system("pause");

return 0;
}

执行之后, GetValue 过程的返回值 5 就保存到了 returnValue 中.

----------------------------
关键是使用 MSScript.ocx

需要注意的是:
本例使用了 ::CoInitialize 来初始化 ocx 提供的内容, 但没有使用 ::CoUninitialize (因为这会导致出问题)
所以使用 AddRef 和 Release.

-----
-----
一点错误, 在上面出现, 现在指出:
p.AllowUI(TRUE); // 这个应是允许 Script 有 UI
而等待 C++ 窗口的属性应是 SiteHWnd
即 p->put_SiteHWnd(hwnd);
由于这个例子用 Console, 所以没有提供这个属性.

❻ vbs中的msgbox 我需要点击后能产生四种返回值 怎么设置 点击button或者关闭都无所谓 只要有四种返回值就OK

要做出有四个按钮的msgbox可以(如下),但要有四种返回值,用msgbox真的是做不到了。
MsgBox "Data is not valid", vbYesNoCancel + vbDefaultButton4, "tt", "helpfolder/helpfile.hlp", 71

通过InputBox可以获取4种及以上的返回值(借助对输入内容的判断)。
很奇怪为什么你会有这样的需求,也许我了解原因后可以帮你找到其他的解决方法。

❼ vbscript函数中的函数返回值是什么意思

例如你定义一个变量a,再定义一个函数fun1(),如果你需要用到fun1()的返回值的时候,就是说当你写a=fun1()的时候,fun1()的返回值就赋给了a。所以一般在vbscript的函数需要返回的时候,在函数的最后就要写上fun1=xyz此类语句,这时a就赋值为xyz了。

❽ 在批处理和vbs混合脚本中,可以用wscript.echo 输出到命令提示符中,但是如何将命令提示符中的信息返回到

使用for /f获取,例子如下:
批处理代码:

::═════代═══码═══开═══始═════
@echo off
for /f "tokens=*" %%i in ('cscript /nologo 123.vbs') do (
echo %%i)
pause
::Created By escortmnm from VBS团队
::═════代═══码═══结═══束═════

用到的vbs示例文件(123.vbs):

'═════代═══码═══开═══始═════
dim data
data=date()
wscript.echo data
'═════代═══码═══结═══束═════

将vbs代码保存到与批处理同目录下面为123.vbs,运行批处理代码即可获得数据。

❾ 怎样取得vbs的返回值

只能用写文本文件的方法,无其它方法。
我以前做的方法是这样的,一个文本文件,第一行是记数,即第一行里个有数字。
vbs写内容的时候,第一行里的数字加1,第二行起为内容。在运行vbs程序前,先读取第一行数字。然后后面只要判断第一行内容是否有变就行了。

这主要为了解决有时候vbs返回的内容是一样的情况。

❿ vbs 函数一定要有返回值吗

如果类型为函数就必须有返回值,如果类型是过程,则必须不能有

热点内容
java返回this 发布:2025-10-20 08:28:16 浏览:645
制作脚本网站 发布:2025-10-20 08:17:34 浏览:936
python中的init方法 发布:2025-10-20 08:17:33 浏览:632
图案密码什么意思 发布:2025-10-20 08:16:56 浏览:821
怎么清理微信视频缓存 发布:2025-10-20 08:12:37 浏览:731
c语言编译器怎么看执行过程 发布:2025-10-20 08:00:32 浏览:1066
邮箱如何填写发信服务器 发布:2025-10-20 07:45:27 浏览:299
shell脚本入门案例 发布:2025-10-20 07:44:45 浏览:160
怎么上传照片浏览上传 发布:2025-10-20 07:44:03 浏览:852
python股票数据获取 发布:2025-10-20 07:39:44 浏览:763