Tôi có một ứng dụng mà thường chạy im lặng trong nền, vì vậy tôi biên dịch nó vớiIn ấn đầu ra vào một cửa sổ lệnh khi ứng dụng golang được biên soạn với -ldflags -H = windowsgui
go build -ldflags -H=windowsgui <gofile>
Để kiểm tra phiên bản tại dòng lệnh, tôi muốn truyền một lá cờ -V đến dòng lệnh để lấy chuỗi giữ phiên bản được in ra dấu nhắc lệnh sau đó thoát ứng dụng. Tôi đã thêm gói và mã cờ. Khi tôi thử nghiệm nó với
go run <gofile> -V
... nó in phiên bản tốt. Khi tôi biên dịch exe, nó chỉ thoát ra, không in được gì cả. Tôi nghi ngờ đó là cờ biên dịch khiến nó không truy cập vào bảng điều khiển và gửi văn bản của tôi vào nhóm bit.
Tôi đã thử các biến thể để in thành stderr và stdout, sử dụng println và fprintf và os.stderr.write, nhưng không có gì xuất hiện từ ứng dụng đã biên dịch. Làm thế nào tôi nên thử in một chuỗi để dấu nhắc lệnh khi biên dịch với những lá cờ?
[Xem thêm] (https://github.com/inconshreveable/mousetrap). – kostix