To build a (no console window), use:
logger := log.New(logFile, "", log.LstdFlags) golang portable windows
for _, err := net.DialTimeout("tcp", target+":80", 2*time.Second) if err != nil msg := fmt.Sprintf("❌ %s is DOWN: %v", target, err) fmt.Println(msg) logger.Println(msg) else msg := fmt.Sprintf("✅ %s is UP", target) fmt.Println(msg) logger.Println(msg) time.Sleep(10 * time.Second) To build a (no console window), use: logger := log
go build -ldflags="-H=windowsgui" Perfect for tray icons or background tools. Stripped Go binaries are 2–10 MB. For tiny tools, use: When you run go build on Windows, you get one file
Enter Go. When you run go build on Windows, you get one file . No *.dll files. No runtime/ folder. No installer.
Write a simple file renamer or log parser. Build it. Email the .exe to a friend on Windows. Watch them run it instantly. Have a favorite portable Go tool you’ve built? Share it below—I’d love to see what the community is making.
func main() os.O_WRONLY, 0644) if err != nil log.Fatal(err)