set dd=00%dd% .bat Set objWbemLocator = CreateObject("WbemScripting.SWbemLocator") http://www.atmarkit.co.jp/fwin2k/operation/command008/command02.... vbs側では標準出力(Wscript.StdOut)に出力するようにすれば上手くいくはずです。, for /f "usebackq tokens=*" %%i IN (`call cscript //nologo <vbsフルパス>¥hoge.vbs`) DO @set vbskekka=%%i, 「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。. c = Application.DefaultFilePath vbscriptをバッチファイルで実行するとき、cscriptまたはwscriptコマンドの引数として vbscriptが書かれたファイルのパスを指定します ちょっとしたスクリプトを実行するのにbatファイルとスクリプト … を取得する事は可能でしょうか? lngResult = clsProcess.Create(A.bat, null, null, processId) @echo off . ::今日の日付を取得 pause よろしくお願いします。, こんな感じでできると思います。 ' Win32_Process クラスを生成     REM 標準出力のデータが無くなったら EOJ を True にする。 abcacbacbacbacbacbacbacbacb ("cmd.exe /cscript C:\tmp\ApacheStop.vbs", Null, Null, intProcessID) さらにこの中では環境変数の呼び出し方を%ではなく!で挟むようにしてやればOK     WScript.Echo rstr WSH初心者です。 BAT側 [strlen.bat] REM 文字列の長さを求める SET str=%date%-%time% SET mode=1 for /f "usebackq tokens=*delims=" %%D in (`call cscript //Nologo strlen.vbs "%str%" %mode%`)do SET res=%%D echo %res% pause exit /b VBscript側 [strlen.vbs] Option Explicit REM ------------------------------------------------------ REM strlen.vbs str [,mode] REM str:対象となる文字列 REM mode:0→文字数で表示, 1→バイト数で表示 REM (動作) REM str に含まれる文字の長さを返します。 REM ------------------------------------------------------ Dim ar… End Sub, コマンドプロンプトの記述で、ERRORLEVELというのがありますが >素朴な疑問ですいません。 do SET res=%%D, for /f "usebackq tokens=* delims=" %%D in (`call cscript //Nologo vbs\mid.vbs "%str%" "%pos%" "%len%"`) do SET res=%%D, cscript //Nologo regexp.vbs %sw% どなたかご存じでしたらご教授の程よろしくお願い致します。, 「リード 意味」に関するQ&A: 安全在庫=安全係数×√(リードタイム)×標準偏差の意味, 「正常 意味」に関するQ&A: 労働基準法の「事業の正常な運営を妨げる場合」の意味を示す文書, ご回答有難うございます。 3.cscript は cmd を使わなくても実行できますよ。 VBAで Dim intProcessID SET %%I=%%J if %mm%==01 (set mm=12&& set dd=31&& set /a yy=%yy%-1) Set objWsh = WScript.CreateObject ("WScript.Shell")    "デフォルトパス    : " & c & Chr(13) & _ 今日の日付は下記のように取得しています。 echo 昨日は、%yy%年%mm%月%dd%日です。 rem 日時変数の取得 bat cmd errorlevel setlocal. Sub test() ' #WMI に接続 Wim32_Process クラスを取り出す set dd=%date:~8,2% スマホ・WEBなどのデジタル系のお話しを中心に新しいことをいろいろお話しします. 1.実行アカウントについて .vbs ①.iniにエンコードしたパスワードを記述 ' ----------------------------------- >ところで"オブジェクトが必要です"となってしまいます。 ::1日前の日付を計算する if not ERRORLEVEL 1 goto aaa は、ERRORLEVEL が1未満つまり0のときにgoto aaaします(負になることはないので)。, Windows2000でバッチファイルを作っています。 if %mm%==01 (set mm=12&& set dd=31&& set /a yy=%yy%-1)   Else   End If if %mm%==03 (set mm=02&& set dd=28&& if %ymod%==0 (set dd=29)) -■remote.vbs(一部抜粋)------------------------------------------     rstr = objExec.StdOut.ReadLine set yy=%date:~0,4% Copyright (C) 2001 - 2020 hatena. -■A.bat------------------------------------------ By following users and tags, you can catch up information on technical fields that you are interested in as a whole, By "stocking" the articles you like, you can search right away.  戻り値は、0(プロセス完了)が帰ってきていて、接続はうまくいっているようなのですが、vbsファイルが実行されていないようです。 Dim strComputer   If tm < Timer() + t86400 Then echo 今日は、%yy%年%mm%月%dd%日です。 delims=" %%D in (`call cscript //Nologo inputbox.vbs %str1% %str2% "%str3%"`) do SET res=%%D, for /f "usebackq tokens=* VBScript で起動時に指定された引数を取得するには Wscript.Arguments プロパティに格納された WshArguments コレクションを使用します。 ... 別のVBScriptファイルを実行して戻り値を受け取る方法 ... bat … [VBS側] 私はこんな感じでよく使っていて、もちろん文字列もOK コマンドプロンプトやBATファイルからVBScriptで書いたスクリプトを実行させることはあると思います。, しかし、その実行がうまくいかなかった場合には後続の処理を止めたい、あるいは別の処理をさせたいということがあるでしょう。, そうしたときは、VBScriptのスクリプトから終了コードを返してあげればいいのです。, このWSHを表す「WScript」オブジェクトが持っている「Quit」という終了を行うメソッドの引数に数値で指定してやればいいのです。, コマンドプロンプトなどから実行したVBScriptの終了コードを受け取る必要があります。, これは通常のコマンドアプリと同じく、環境変数の「ERRORLEVEL」へセットされます。, 個人でプログラミングの学習サイト「なるーらぼ」を運営しています。https://nalu-labo.amebaownd.comPowerShell入門の電子書籍2冊も出版しています。http://www.amazon.co.jp/dp/B017LJOCJ2, 非プログラマにもオススメのプログラミングの学習サイトです。https://nalu-labo.amebaownd.com. よろしくお願い致します。, 大文字小文字を区別しなくていいなら、 ' コマンド実行     REM 実行結果を標準出力から行単位で読み込み画面に表示ます。  objWin32_Process.Create 以外のところで問題があれば記録されます。, VBからBATファイルを起動して戻り値(エラーコード)を delims=" %%D in (`call cscript //Nologo sleep.vbs %t%`) do SET res=%%D, FOR /F "usebackq tokens=* delims=" %%D IN (`call cscript //Nologo msgbox.vbs %str% "%btn%"`) DO SET res=%%D, FOR /F "usebackq tokens=*" %%I IN (`call cscript //nologo read_reg.vbs`) DO SET ret_value=%%I, FOR /F "tokens=1-3 delims= " %%F IN ('cscript //NoLogo array.vbs n p q') DO set %%F&set %%G&set %%H, Set objWsh = WScript.CreateObject ("WScript.Shell"), VBScriptの戻り値を配列で受け取る, バッチ(BAT)で使うVBscriptのサンプル, 2.対象文字列中から検索文字列の位置を調べます。, 3.対象文字列の指定の文字位置から指定の文字数を取り出します。, 4.正規文字列を使って文字列を検索/置換します。, 5.メッセージボックスを表示して、クリックされたボタンを返します。, 6.入力ボックスを表示して、入力された文字列を返します。, 7.指定の時間(ミリ秒単位)、処理を停止します。, 8.レジストリから「マイ ドキュメント」のフォルダーを読み取りフォルダーごとコピーします。, VBScriptからバッチファイルを呼びだすには, WSHで誰でも簡単プログラミング(WSH入門), VBScript ランゲージリファレンス(MSDN), ◆BATからVBscriptを呼び出すには, ◆バッチ(BAT)で使うVBscriptのサンプル, ◆2.対象文字列中から検索文字列の位置を調べます。, ◆3.対象文字列の指定の文字位置から指定の文字数を取り出します。, ◆4.正規文字列を使って文字列を検索/置換します。, ◆5.メッセージボックスを表示して、クリックされたボタンを返します。, ◆6.入力ボックスを表示して、入力された文字列を返します。, ◆7.指定の時間(ミリ秒単位)、処理を停止します。, ◆8.レジストリから「マイ ドキュメント」のフォルダーを読み取りフォルダーごとコピーします。, ◆VBScriptの戻り値を配列で受け取る, ◆VBScriptからバッチファイルを呼びだす.