我创建了一个应用程序,可以选择在Windows启动时为“开始菜单”创建自动启动快捷方式。 所有工作,但我需要做一些事情,以便让软件以编程方式了解软件是由Windows(自动)还是由用户启动。
现在我验证是否存在快捷方式,但我想了解是否存在一些参数用于了解Windows是否运行程序。
答案 0 :(得分:2)
在设置过程中,让程序以
之类的参数开头 myApp.exe autoStart
这样一来,如果您的应用程序是通过启动或w / e启动的,那么它将具有该命令行参数,您可以检查它,如
bool AutoStartMode = false;
//--somewhere near startup
var args = Environment.GetCommandLineArgs();
if (args != null && args.Any(arg => arg == "autoStart"))
{
AutoStartMode = true;
}
答案 1 :(得分:0)
我建议您使用Run key in the registry进行自动启动。您将在运行键下为应用创建子键。键的值将是应用程序的路径以及您希望使用的任何命令行参数。其中一个参数可能表示应用程序正在自动启动。 Kyle提供了一个如何检查特定命令行参数的示例。