當前位置:首頁 » 編程軟體 » 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