私の問題はexec.commandとのやりとりです。私はWindows上でRunAsを自動化したいと思います。Golang:インタラクティブコマンドの実行方法を教えてください。
私のクライアントのコンピュータで、このアプリケーションを介して他のアプリケーション(Ccleaner、ウイルス対策esetオンラインなど)を起動します。そこで私はadminsysアカウントを作成し、このアカウントでこれらのさまざまなアプリケーションを自動的に起動したいと考えています。
cmd := exec.Command("runas", user, nameProgram)
cmd.Stdout = os.Stdout
cmd.Stderr = os.Stderr
stdin, err := cmd.StdinPipe()
if err != nil {
fmt.Println(err)
}
defer stdin.Close()
err = cmd.Start()
if err != nil {
fmt.Println(err)
return
}
time.Sleep(3 * time.Second)
io.WriteString(stdin, password)
err = cmd.Wait()
if err != nil {
fmt.Println(err)
return
}
これは機能しません。
runasのエラー。
Erreur de RUNAS : Impossible d’exécuter - C:\program.exe
1326 : Le nom d’utilisateur ou le mot de passe est incorrect.
パスワードを認識していないようです。私はWindowsを実行していないよ
'exec.Command(" cmd "、" runas ")'(プログラムに 'runas'を使うための管理特権があることを確認してください) – Tico
コマンドは' 'cmd ''なしで動作しますが、パスワードを入力してください。コマンドプロンプトではなく、goを使用してパスワードを入力することができます。@Tico –
この回答を確認してください:http://stackoverflow.com/questions/31558066/how-to-ask-for-administer-privileges – Tico