//go:build windows

package cmd

import (
	"os/exec"
	"syscall"
)

const createNoWindow = 0x08000000

func execProcess(path string, argv []string, env []string) error {
	args := []string(nil)
	if len(argv) > 1 {
		args = append(args, argv[1:]...)
	}

	cmd := exec.Command(path, args...)
	cmd.Env = env
	cmd.SysProcAttr = &syscall.SysProcAttr{
		// CREATE_NO_WINDOW keeps managed helper processes headless on Windows.
		// Electron owns all desktop windows and tray behavior.
		CreationFlags: createNoWindow,
	}
	return cmd.Start()
}
