

下記のようにvbsからpowershellを呼び出す仕掛けにしたいのですがpowershellが一瞬だけ開いてInputboxが表示されません。powershell単体で実行をすると問題なく起動してきます。

vbsのRunメソッドの引数で「0」⇒「1」に変更や「true」を「false」への変更は試しましたが事象は変わらず。原因がわからないためご教示ください。

#### test.vbs

[code]

    Set objWShell = CreateObject("Wscript.Shell")
    result = objWShell.Run ("%SystemRoot%\System32\WindowsPowerShell\v1.0\powershell.exe -File .\hoge\hoge.ps1",0,true)
    WScript.Quit(result)
    
[/code]

#### hoge.ps1

[code]

    [void][System.Reflection.Assembly]::Load("Microsoft.VisualBasic, Version=8.0.0.0, Culture=Neutral, PublicKeyToken=b03f5f7f11d50a3a")
    $INPUT = [Microsoft.VisualBasic.Interaction]::InputBox("入力して下さい。", "確認")
    [System.Windows.Forms.MessageBox]::Show("受け付けました", "確認")
    
[/code]


CC BY-SA 4.0
2022-08-03T02:56:23.887
90351
2023-05-09T09:01:35.180
2022-08-03T04:04:48.843
3060
53795
question
powershell vbs
vbsを使ってpowershellを呼び出した際にpowershellのスクリプトが落ちてしまう。


On Error Resume Next

Set objWShell = CreateObject("Wscript.Shell")  
result = objWShell.Run
("%SystemRoot%\System32\WindowsPowerShell\v1.0\powershell.exe -WindowStyle
Hidden -File .\hoge.ps1",1,true)

WScript.Quit(result)


CC BY-SA 4.0
2022-08-03T07:53:57.100
90366
2022-08-03T07:53:57.100
53795
90351
answer