Прежде всего, непонятно, зачем нужен «перезагрузка». Приложение может решить, что делать, основываясь на том, установлена переменная среды или нет, и может также установить ее (SetEnvironmentVariable
). Конечно, вы всегда можете создать новый процесс (CreateProcess
) с именем вашего приложения и завершить текущий процесс, но что-то не так с этим дизайном.