ホームページ >バックエンド開発 >Golang >コマンド プロンプト ウィンドウを表示せずに Go でコマンドを実行するにはどうすればよいですか?

コマンド プロンプト ウィンドウを表示せずに Go でコマンドを実行するにはどうすればよいですか?

Susan Sarandon
Susan Sarandonオリジナル
2024-12-04 15:18:11346ブラウズ

How Can I Execute Commands in Go Without Showing the Command Prompt Window?

Go の Exec でコマンド プロンプト ウィンドウを非表示にする

exec.Command 関数を使用して Go 内でコマンドを実行する場合、コマンドプロンプトウィンドウ。通常、SysProcAttr.HideWindow を true に設定すると非表示になりますが、Windows では問題が発生する可能性があります。

解決策:

コマンド プロンプト ウィンドウが表示されないように効果的にするには、次のことを考慮してください。次のソリューション:

import (
    "os/exec"
    "syscall"
)

// HideWindow invokes a command with hidden command prompt.
func HideWindow() error {
    cmd_path := "C:\Windows\system32\cmd.exe"
    cmd_instance := exec.Command(cmd_path, "/c", "notepad")
    cmd_instance.SysProcAttr = &syscall.SysProcAttr{HideWindow: true}
    _, err := cmd_instance.Output()
    return err
}

注: このソリューションは、 [Reddit](https://www.reddit.com/r/golang/comments/2c1g3x/build_golang_app_reverse_shell_to_run_in_windows/).

以上がコマンド プロンプト ウィンドウを表示せずに Go でコマンドを実行するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。