- ベストアンサー
VBSが起動できない(メール送信)
- VBSが起動できず、メールの送信ができないエラーが発生しています。
- Windows XP Home EditionでVB2010で作成したファイルを実行しようとすると、文字が正しくないというエラーが出力されます。
- DIFFソフトでの検証でも同じものであることが確認できますが、エラーの解決方法が分かりません。
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
>DIFFソフトで検証してもまったく同じものらしく理解できません。 全く同じであれば、同じ結果になるので、違う結果と言うことは、どこか違うわけです。 コマンドプロンプトから、 fc /b ファイル名1 ファイル名2 で比較してみてください。違う箇所が表示されます。
その他の回答 (3)
- DOUGLAS_
- ベストアンサー率74% (397/534)
#質疑の内容が私の手の届かない方へ行っているようですので、 #もう、お呼びでないかも知れませんが。。。 >スペースを疑い調査したところ、入っていませんでした。 では、私に考えられることは、次の1点ぐらいです。 >下記の "ような" スクリプト とのことですが、実際には Set oMsg = CreateObject("CDO.Message") が1行目ではなくて、その前に コメント が入っているというようなことはないでしょうか? もともとの エラー 位置が「行:1、文字:1」ですから、 'hoge.vbs --------------------------------------------------- Set FSO = CreateObject("Scripting.FileSystemObject") With FSO.OpenTextFile("C:\MAIL\mail.vbs") WScript.Echo Asc(Left(.ReadAll, 1)) .Close End With '--------------------------------------------------------------- という スクリプト を実行して、「39」以外、例えば「-32411」が表示されるようでしたら、コメント の前の アポストロフィ が不正文字になります。 また、コメント も何もなく、いきなり Set oMsg = CreateObject("CDO.Message") から始まっているということでしたら、「83」以外が表示される場合は、「Set」の前に何か目に見えないものが入っていると考えられます。
お礼
何度も返信ありがとうございます。 なんというか自己解決してしまったようです。 原因はVBでの書き込み時にエンコードの指定をしていなかったのが原因かと・・。 いろいろとご指摘ありがとうございました。
補足
DOUGLAS_様 コメントは入っていないようです。
- notnot
- ベストアンサー率47% (4900/10359)
#2です。 >fc /b C:\MAIL.VBS C:\mail3.vbs の結果で、 >ファイル C:\MAIL.VBS と C:\mail3.vbs を比較しています と >FC: C:\MAIL.VBS は C:\mail3.vbs より長いファイルです との間に何も表示されなかったとしたら、mail.vbs は mail3.vbs の中身の後に何かが付加されただけなので、それまでは同一です。従って、一方のファイルでエラーが出ず、他方のファイルで1行目1文字目でエラーが発生すると言うことは無いです。 今までのどこかで勘違いか作業ミスがあると思われます。
補足
何度も返信ありがとうございます^^ 勘違いと言われましても・・何度実行してみても同じ結果になるので・・・。 実際のファイルのプロパティを見てみると、手作業で作成したファイルのサイズは572バイト。 VBで作成したファイルのサイズは585バイトになっています。 中身はコピペなのにです。 以前業務で0バイトファイルが必要な時に、手作業でファイルを作成すると完全な0バイトにはならず、コマンドプロンプトで作成する必要があったことがあり、VBで作成することによって何かファイル構成に違いができてしまったのかなと思っているところです。
- DOUGLAS_
- ベストアンサー率74% (397/534)
#VB2010 も DIFFソフト も存じませんが。。。 #単に「vbs」の問題かと存じますので、回答させていただきました。 #的外れな回答でしたら、お見捨てください。 Set oMsg = CreateObject("CDO.Message") の前に全角の スペース が入っていませんでしょうか?
補足
DOUGLAS_様 はじめまして、返信ありがとうございます。 問題のVBSは、自分の方も最初にスペースを疑い調査したところ、入っていませんでした。 手動で新しくVBSファイルを作成し、VBで作成したファイルの中身をコピペするとメールは送信されるので中身は間違っていないと思っています。
補足
notnot様 はじめまして、コマンドプロンプトで検証できるなんて初めて知りました。 ご指摘通りに実行すると、 FC: C:\MAIL.VBS は C:\mail3.vbs より長いファイルです という内容が表示されました。 中身はコピペなのに違うなんて・・ ただ、違う事はわかりましたが何が違うのかまではわからないのですが・・。