• ベストアンサー

バッチでメッセージを送るには?

net sendを利用して複数端末にメモ帳(.txt)に書いた内容を読込んでメッセージを送りたいです。 たぶん読込んだ内容を改行するのが難しいと思います。 どうか教えてください。

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

  • ベストアンサー
  • togino
  • ベストアンサー率75% (97/129)
回答No.4

複数に送りたいとのことですが、単純に strSendTo = "Machine1" を strSendTos = Array("Machine1", "Machine2") に変えて WshShell.Run "net send " & strSendTo & " " & strLine を For Each strSendTo In strSendTos WshShell.Run "net send " & strSendTo & " " & strLine Next のように、配列の中をひとつずつ送ればいいと 思いますが、どうでしょう?

その他の回答 (3)

  • togino
  • ベストアンサー率75% (97/129)
回答No.3

  Word や Excel で実行って意味がわからないんですが、 下記の内容でテキストファイルを作成し、その ファイル名を netsend.vbs という名前にして ・ コマンドプロンプトで   netsend.vbs message.txt と入力して実行  (message.txt は送信したい内容を書いたテキストファイルの名前) ・ あるいは、送信したい内容を書いたテキストファイルを   ドラッグアンドドロップで netsend.vbs というファイルの上に落とす すればいいわけです。 ただし、先頭の strSendTo = "" はそちらの環境に合わせて変えてください うまくいかなければ、その旨書いてくださいね

takako20
質問者

お礼

複数PCに送信したい場合は strSendTo = ""に台数分記述するのですか? 調べても記述がわかりません。 いい方法はあれば教えてください。 よろしくおねがいします。

takako20
質問者

補足

勘違いしていました。できましたありがとうございます。 複数PCに送る場合はどのように書き直せばよろしいですか?

  • togino
  • ベストアンサー率75% (97/129)
回答No.2

VBS のソースを書いて投稿したのですが、 投稿後、質問画面に戻っても回答が消えてしまっています。 ただ、さらに回答を追加しようとすると、入力画面の 下に前回投稿した内容が現れるのですが・・・??? この回答欄に使ってはいけない文字の組み合わせとか ありましたっけ?

takako20
質問者

補足

訂正:word2003ではなくexcel2003でした。 すいません。

  • togino
  • ベストアンサー率75% (97/129)
回答No.1

こんなのはどうでしょう strSendTo = "MachineName" Set objArgs = WScript.Arguments Set objFS = WScript.CreateObject("Scripting.FileSystemObject") Set WshShell = WScript.CreateObject("WScript.Shell") If objArgs.Count = 0 Then strFileName = InputBox("メッセージ内容を書いたテキストファイルの名前を入れてください") Else strFileName = objArgs(0) End If Set objFileInput = objFS.OpenTextFile(strFileName, 1) strLine = "" Do Until objFileInput.AtEndOfStream strLine = strLine & objFileInput.ReadLine & Chr(20) Loop objFileInput.Close WshShell.Run "net send " & strSendTo & " " & strLine このプログラムを netsend.vbs という名で保存します。 先頭の strSendTo には、net send の送り先第1引数を 代入してください。 netsend.vbs message.txt とすれば、message.txt の中身を改行を処理して net send に送り込みます。

takako20
質問者

補足

さっそくありがとうございます。 word2003で実行しますと”実行エラー424 オブジェクトが必要です。”と出ます。 >netsend.vbs message.txt これはmessage.txtの名前変更してnetsend.vbsも付け足す ことですか? すいませんが教えてください。

関連するQ&A