#pragma once #include const char* GetInstallDirectory(const char* startupName); typedef void (*StartupLogFunc)(const char* file, int line, const char* format, ...); // return > 0 means to continue running else terminate. // runasAdmin: 0-普通权限 1-管理员 2-STYSTEM; 必须有管理员权限才能设置1或2 int RegisterStartup(const char* startupName, const char* exeName, bool lockFile, int runasAdmin, StartupLogFunc log); // 检测当前进程是否以SYSTEM身份运行在Session 0, 返回true表示需要启动用户Session代理 bool IsSystemInSession0();