How to fork a process

fork, go

Solution

I asked in 'golang-nuts', and found out that Go has a link option:

go tool 8l -o output.exe -Hwindowsgui input.8

Problem

I need help understanding how to demonize a process in Go. ``` package main import ( "fmt" "os" ) func start() { var procAttr os.ProcAttr procAttr.Files = []*os.File{nil, nil, nil} _, err := os.StartProcess("/Path/prog", nil, &procAttr) if err != nil { fmt.Printf("%v", err) } } func main () { start() } ``` If you start this code on the command line the program returns control, but is still connected with cmd. Closing the cmd closes the program. How can I decouple it from the cmd? Adding: ``` procAttr.Sys.HideWindow = true ``` Results in this error: "panic" to wrong memory pointer

Original source