- 締切済み
VBS でDOSのNet useについて
VBS内で DOSコマンドの net use * /delete を実行すると 必ずNで実行結果となってしまいます DOS窓ではキーボードでyをいれればいいのですがこの「y」をVBSで渡す方法が見つかりません。 いろいろ試しているのですが・・・どうにもうまくいきません。 OSはWindows7です -----------作成例 ある程度まではできたのですが Dim objShell Dim wExec Dim sCmd0 Dim sCmd1,sCmd2,sCmd3 ' コマンド生成 sCmd0 = "net use" sCmd1 = "net use * /delete" sCom2 = "net use /persistent:yes" sCmd3 = "net use X: \\PC\skyhd108" ' objのセット Set objShell = CreateObject("WScript.Shell") ' コマンド実行 Set wExec = objshell.Exec("%ComSpec% /c " & sCmd1) Set wExec = objshell.Exec("%ComSpec% /c " & sCmd3) Set wExec = objshell.Exec("%ComSpec% /c " & sCmd2) Set wExec = objshell.Exec("%ComSpec% /c " & sCmd0) Do While wExec.Status = 0 Loop Result = wExec.StdOut.ReadAll MsgBox Result WScript.Echo "お疲れ様でした!" Set wExec = Nothing Set objShell = Nothing
- みんなの回答 (2)
- 専門家の回答
みんなの回答
- kteds
- ベストアンサー率42% (1882/4440)
No.1の補足です。 vbsを「管理者として実行」で実行してもダメでしたか?
- kteds
- ベストアンサー率42% (1882/4440)
> sCmd1 = "net use * /delete" sCmd1 = "net use * /delete /y" ではどうでしょうか。
お礼
回答ありがとうございます 回答案ですでに実施してみているのですがだめでした。 dos窓で net use /? で見る限り /yes /no はありませんでした。 net use * /delete をdosのbatファイルにしてそれを呼び出して パイプで送っても見たのですがこれもだめでした。
お礼
管理者モードでも実験してみましたがだめでした http://itpro.nikkeibp.co.jp/article/COLUMN/20060725/244263/ ここのサイトでは /yesが有効となってましたがだめでした。
補足
net use のヘルプをよく眺めると [[/delete] |[/persistent:{yes|no}] ] となっていたので "net use * /delete|net use /persistent:yes" と 記載してみて確認してみます。