• ベストアンサー

UWSCからvbsファイルを呼ぶ方法

UWSCからvbsを呼ぼうと思って以下の記述をしてみましたが、上手く動きません。 str="C:\SendMail.vbs" Exec(str) SendMail.vbsファイルをマウスでクリックすると正常にメールが届くのでSendMail.vbs内の記述には問題なさそうです。 ググってもUWSCファイル内にvbsのファンクションを記述する方法はありましたが、vbsファイルの呼び出し方は見つけられませんでした。 正しい記述方法があれば教えて下さい。よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • neKo_deux
  • ベストアンサー率44% (5541/12319)
回答No.1

> 正しい記述方法があれば教えて下さい。 ちょっと試せないですが、 Exec("WScript.exe " + str) とかでは? -- > SendMail.vbsファイルをマウスでクリックすると正常にメールが届くので ファイルをクリックした際、エクスプローラがファイルの種類/拡張子に対応したプログラムを探し、そのプログラムから対象ファイルを開くようにしてくれています。 hoge.txtをマウスでクリックするとメモ帳なんかで開くのと同じ。 hoge.txtをプログラムとして直接実行しようとしたって、実行不能みたいな話。

bennkyoutyuu1
質問者

お礼

まさにおっしゃるとおりでした。 なんとまぁあっさりとメールが届きました。 とても助かりました。本当にありがとうございましたm(_ _)m

関連するQ&A

  • SQLServer2005のストプロでxp_cmdshellを使いvbsファイルを実行できない

    ストプロ内でxp_cmdshellを使用し、vbsファイルを実行したいのですが実行できません。 vbsファイルはxp_cmdShellでキックされたらSQLサーバのデータをSELECTし、テキストファイルにSELECTで取得した行数だけ行を追加するという内容です。 vbsファイルはコマンドプロンプトから実行すると動くので正しいと思います。 ストプロにはvbsファイル実行の前後にtableのupdate作業があり、 その2つは行われます。しかし、書き出されるはずのデータがテキストファイルに書き出されません。 vbsファイルは実行されていないようですがエラーは出ず正常終了となり、 xp_cmdshell実行後の戻り値は0で成功となっています。 xp_cmdshellオプションは有効になっており、は混合モードでSysAdminの権限を持つユーザーで処理をしています。 また、ストプロではなく、SQLServerManagementStudioから下記のようにvbsファイル実行しようとした場合、エラーなく正常終了するのですがテキストファイルにデータは追加されていません。  EXEC @result = xp_cmdshell 'Cscript c:\AddRow.vbs' しかし、EXEC xp_cmdshell 'dir *.exe'は実行できます。 vbsファイルをxp_cmdshell で実行するときは何か特殊な記述が必要なのでしょうか。何がいけないのかわからず困っております。お気づきのことがありましたらご指摘いただけますようお願い致します。 以下にストプロの中身をを記述します。 BEGIN   SET NOCOUNT ON; -- テーブルのアップデート処理   UPDATE table1 SET Status = 1   WHERE Status = 0 --ファイル書き出しvbsの実行   DECLARE @result int   SET @result = 1   EXEC @result = xp_cmdshell 'Cscript c:\AddRow.vbs' --ここは下記のようにCscriptを抜いても試しましたがだめでした。 --EXEC @result = exec master..xp_cmdshell 'c:\AddRow.vbs'   IF (@result = 0)   BEGIN --xp_cmdshellの実行が成功したときのみこの処理に入る予定。 --実際は実行されていないようだが@result が0なのでこの処理を行っている。     UPDATE table1 SET Status = 2     WHERE Status = 1   END END

  • UWSCが動かない

    UWSCで録画も実行もできません。 録画ボタンは押せますが、一通り処理を行ったあとに実行しようとすると、有効データはありませんと出ます。 しかし、一時正常に動いたこともあって、今ではそのときに保存したプログラムを実行しても、マウスの動きだけ動作し、クリックやキー操作は行いません。 UWSCの再インストール、再起動、管理者実行、別PCで処理、などを試してみましたが改善されません。 ちなみにUWSCのファイルやアプリはデスクトップにあります。 何か他にできることがありましたら教えて頂けないでしょうか。

  • UWSCでWMPlayファイルを再生

    UWSCでプログラムを作成しています。 プログラムの中で警告音等をwavファイルで、音を鳴らしたいのですが方法が分かりません。 WMPlayerはExecで起動できましたが、ファイルを読み出して自動再生ができません。 ご教示をお願いします。

  • UWSCにつきまして

    大変恐れ入ります。 リモートデスクトップ経由で、UWSCでVBE(VBのEditor画面)が開いていた場合にメール送信するUWSCのソースを記述していますが、どうにも動きません(常にElseに入ってしまいます、またメール部分はClass化していて動確を取っているのでご考慮頂なくても大丈夫です)。 ローカルなら動くようですが、リモートデスクトップ経由だと何かまずいことがあるのでしょうか? お忙しいところ、申し訳ございませんが、宜しく御願い申し上げます。 errid = GETID("Basic") Ifb errid < 0 then //何もしない Else Sleep(1) // From,To,Subject,Textbody,AddAttachment // 結果 = SendMail.Send(送信元,送信先,件名,文書,添付ファイルパス) endif

  • dos コマンドを vbsで行うには。

    こんにちは。  --ip.bat の内容---- ipconfig >> C:\WINDOWS\デスクトップ\ip.txt ---------- ip.batのアイコンをクリックすると、テキストファイルが作成されますが、これと同じことをvbsでするにはどうゆう記述になりますでしょうか? もしくは、vbsでBATファイルを呼び出す方法は?

  • UWSCの入力方法について

    UWSCに関しての質問です。 下記スクリプト内容 Fukidasi("URLやパスワード日付を入力しています。", 200, 200, 1, 16, "MS 明朝") IE=exec("C:\Program Files\Internet Explorer\IEXPLORE.EXE") //ここまで正常 sendstr(IE,"https://*********.html",1,1) sckey(IE,VK_alt,d) sckey(IE,VK_enter) // url Sleep(5)//ここに飛んでしまう KBD(VK_y,CLICK,01) 上記のように入力すると「//ここまで正常」まで動作するのですが、 その後、「//ここに飛んでしまう」にいってしまいます。 自宅のPC(WINXP)では問題なく作業するのですが、 会社のPC(WIN2000)では出来ません。 これは何が原因なんでしょうか。回答宜しくお願いします。

  • VBSの戻り値

    windows 2003サーバで使うVBSファイルを以下のように作りました。このとき明示的に戻り値0を返したいのですが、どのような記述になるか教えてください。 --------------------------------------- c:\winnt\system32\ shutdown.exe -r -t 0 ---------------------------------------

  • VBSで自身の実行状態をチェックする方法

    お世話になります。 VBSについてご教授いただきた事がございます。 下記のような"URIAGE.bat"というバッチファイルを実行するTEST.VBSがあります。 当初はURIAGE.batというバッチファイルを直接クリックして動かしていましたがDOS画面を表示させたくないと思い、検索したところ下記のようにVBSに記述すれば非表示になる、とありましたので早速試してみました。 CreateObject("WScript.Shell").Run "C:\URIAGEDATA\system\URIAGE.bat",0 ここからが質問ですが、あるユーザーがこのVBSを動かした直後に、再度このVBSをクリックしてしまい、処理がエラーになってしまいました。 こういった場合にTEST.VBSが自分が"動作中"ということを認識して"動作中"というエラーメッセージを出してURIAGE.bat処理を回避させる方法はありますでしょうか? 環境:Windows XP SP SP3 どなたかご教授いただけますと幸いでございます。

  • VBSファイルを定期的に自動実行する方法

    毎日同時刻に下記のVBSファイルを自動実行したいと思います。 タスクスケジューラで実行すると download.exe は起動しますが 表示されたダイアログがアクティブ状態にならないため (タイトルバーが灰色のまま、タスクバーのボタンが点滅)、 文字入力ができないまま、処理が終了してしまいます。 1.ダイアログをアクティブにし、正常に処理を実行させるには   どのように記述すれば良いですか? 2.このVBSファイルをユーザーがログオフされている状態で   実行することは可能ですか? 恐れ入りますが、ご存じの方がおられましたら、ご教示願います。 <環境> Windows 2008 Server R2 standard (64ビット) <D:\aaa.vbs> Set objShell = WScript.CreateObject("WScript.Shell") 'ダウンロードEXEを実行 Set objExec = objShell.Exec("D:\download.exe") WScript.Sleep 1000 objShell.AppActivate(objExec.ProcessID) 'ファイルのダウンロード先を指定し、実行(ENTER) WScript.Sleep 1000 objShell.SendKeys "D:\data.txt~"

  • batからvbs起動

    バッチファイルからVBSファイルを起動したいと思いsample.batに以下の記述をしました。 「cscript //NoLogo "test1.vbs"」 するとプロンプト上に上記メッセージが繰り返し(無限ループ?)表示されてしまいます。 バッチからVBSファイルを起動するには何かコマンドが必要なのでしょうか?

専門家に質問してみよう