意味がよくわからない
「WScript」がcscript.exeではなくwscript.exeのことなら元から標準入出力しても何も起きないけど多分そういう話ではないよね
そのソースコードは、mshta.exeを子プロセスとして起動してテキストファイルから読み込んだ内容をその子プロセスの標準入力に流してる
mshta.exeの側では標準入力から読み取った内容を実行してる
探検
【VBScript】WSHについて話し合うスレ【JScript】
176デフォルトの名無しさん
2025/08/07(木) 16:01:49.20ID:Pp4oXF33177デフォルトの名無しさん
2025/08/07(木) 16:53:21.35ID:dOHm8u8G 元々HTAとpowershell間のプロセス間通信を考えてました
WSH(WScript)とpowershellでの通信はできていたので、
ならばHTAからWScript.Stdin/Stdout相当をどうにかして得られないかという疑問に代わりました
さてGetStandardStream(0)でStdinを得るまでは何となく判りますが
そのハンドルでReadAll()これの意味が判らない
結果的にoExecにはWScript相当?が入るようですが
WSH(WScript)とpowershellでの通信はできていたので、
ならばHTAからWScript.Stdin/Stdout相当をどうにかして得られないかという疑問に代わりました
さてGetStandardStream(0)でStdinを得るまでは何となく判りますが
そのハンドルでReadAll()これの意味が判らない
結果的にoExecにはWScript相当?が入るようですが
178デフォルトの名無しさん
2025/08/07(木) 17:25:58.39ID:Pp4oXF33 あー了解
で、oExecに入るのはwShell.Exec()の結果で、起動したmshta.exeのプロセスをラップしたWshScriptExecオブジェクト
oExec.StdIn.Writeでmshta.exeの標準入力に内容を書き込んでる、これがWSH側でやってること
MSのサイトですらリンク切れしまくってたけどitmediaに解説が残ってた ttps://atmarkit.itmedia.co.jp/ait/articles/0407/08/news101_2.html
で、oExecに入るのはwShell.Exec()の結果で、起動したmshta.exeのプロセスをラップしたWshScriptExecオブジェクト
oExec.StdIn.Writeでmshta.exeの標準入力に内容を書き込んでる、これがWSH側でやってること
MSのサイトですらリンク切れしまくってたけどitmediaに解説が残ってた ttps://atmarkit.itmedia.co.jp/ait/articles/0407/08/news101_2.html
179デフォルトの名無しさん
2025/08/07(木) 17:28:32.02ID:Pp4oXF33 GetStandardStream(0).ReadAll() を実行しているのは起動されたHTAの側で、標準入力から読み込んだ内容を実行してる
リンク先サンプルだとその内容はH.HTAで、その後は裏で起動させたIEを通じてやり取りをする…という実験っぽい
というわけでHTAで標準入出力を使うには new ActiveXObject('Scripting.FileSystemObject').GetStandardStream() だけでいいと思う
手元で確認したわけではないので違ってたらごめん
リンク先サンプルだとその内容はH.HTAで、その後は裏で起動させたIEを通じてやり取りをする…という実験っぽい
というわけでHTAで標準入出力を使うには new ActiveXObject('Scripting.FileSystemObject').GetStandardStream() だけでいいと思う
手元で確認したわけではないので違ってたらごめん
180デフォルトの名無しさん
2025/08/07(木) 20:06:59.39ID:dOHm8u8G181デフォルトの名無しさん
2025/08/07(木) 21:37:56.02ID:FIb4oE/e Exec メソッド
https://learn.microsoft.com/ja-jp/previous-versions/windows/scripting/cc364356(v=msdn.10)
GetStandardStream Method
https://learn.microsoft.com/en-us/previous-versions/windows/internet-explorer/ie-developer/windows-scripting/y6hbz9es(v=vs.84)
https://learn.microsoft.com/ja-jp/previous-versions/windows/scripting/cc364356(v=msdn.10)
GetStandardStream Method
https://learn.microsoft.com/en-us/previous-versions/windows/internet-explorer/ie-developer/windows-scripting/y6hbz9es(v=vs.84)
レスを投稿する
ニュース
- 日中対立、打開策見えず 高市氏答弁1カ月、影響拡大 ★3 [蚤の市★]
- 小林よしのり 日中関係、来年「ますます日本は不利に… 加害者の分際で被害者ぶって、中国が横暴だと毅然と振る舞っても滑稽なだけ」★2 [冬月記者★]
- 【テレビ】家入レオ、勘当同然での上京告白「敷居はもう跨がないでください」 14年の確執語る [湛然★]
- 働いて働いて働いても生活は…円安に歯止めが掛からず生活は苦しくなるばかり…サナエノミクスの限界で「高市不況」がやってくる ★7 [ぐれ★]
- 【FC】『スペランカー』の発売40周年! [湛然★]
- 元グラドル維新議員 夫に「サンドイッチのパン」を依頼→食パン6枚切り買われ怒り…“どちらが悪い?”SNSで議論 ★3 [muffin★]
- 【高市リスク】レアアース停滞 [115996789]
- 年末に妹がロリコン彼氏連れて挨拶に来るらしいんだが別れさせたい
- 第二次日中戦争、お互い何を守るための戦いなのかわからないまま開戦へ… [469534301]
- 第二次日中戦争ってどうなるんだ? 九州まで奪われて降伏か? [205023192]
- 🏡𝑯𝒐𝒖𝒔𝒆🏡
- ガリガリ女とチー牛のカップル、お似合いすぎるwwwwwwwwwwwwwwww [977790669]
