アプリ版:「スタンプのみでお礼する」機能のリリースについて

objWshShell.Run="""C:\Program Files (x86)\teraterm\ttpmacro.exe""
" & macro.ttl & "telnet_ip" & "telnet_pass"

上記、"telnet_ip" & "telnet_pass"の第2引数、第3引数にてエラーがでます。
下記、内容をexcelから引っ張ってきています。
"telnet_ip" ='192.168.1.xxx'
"telnet_pass"='password'

vbscriptの文字列の""の意味がよくわかりません。

A 回答 (2件)

ttpmacro.exe に与える引数が滅茶苦茶。



Dim cmmandString As String
commandString = """C:\Program Files (x86)\teraterm\ttpmacro.exe""" & macro.ttl & "telnet_ip" & "telnet_pass"
MsgBox commandString
というようにして確認してみると、意図した文字列になっていますか?
変数と文字列の使い方が逆だし、引数と引数の間に空白文字が入っていない。

macro.ttl がファイル名そのものの事であるなら "macro.ttl" というようにダブルクォーテーションで囲む必要がある。
"telnet_ip" や "telnet_pass" が文字列を格納した変数であるのならダブルクォーテーションで囲まずそのまま telnet_ip や telnet_pass というように使う。

"""C:\Program Files (x86)\teraterm\ttpmacro.exe""" & _
"△macro.ttl" & "△" & telnet_jp & "△" & telnet_pass
(空白文字を目立つように△としました)

VBScript ではリテラルの文字列値をコードの中で表現する場合に文字列の両端をダブルクォーテーションで囲むことは知っていると思います。
ダブルクォーテーション自体を文字列の中で使用したい場合は、ダブルクォーテーションを二つ連続させて表現する。
MsgBox "私は""男""です" ← 「私は"男"です」 となる
MsgBox """酒""と""女""は2合まで" ← 「"酒"と"女"は2合まで」 となる
    • good
    • 0

具体的に、どんなエラーなのですか?


人に聞くにせよ、検索するにせよ、自分で判断するにせよ、具体的なエラーメッセージが無ければ考えようがありません。


そもそも、 Run = 〜 という書き方自体が間違っています。
https://msdn.microsoft.com/ja-jp/library/cc36442 …


macro.ttl
と直接書けば、
「 macro 」というVBscriptでの命令とかオブジェクトとかの「 ttl 」というプロパティかなんか
になります。

逆に、
"telnet_ip"
では、 telnet_ip という文字列になります。 "telnet_ip" ='192.168.1.xxx' 等と置き変わったりはしません。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!