0

我将我的 c# 程序设置为在 Windows 启动时运行,方法是将其添加到 Windows 注册表中。它工作正常,但这是我的问题......

我希望程序在系统托盘中启动,但前提是它由 Windows 自动启动。如果用户从桌面双击程序,那么我不希望程序在系统托盘中启动。现在,我可以让它始终以正常窗口模式打开,也可以始终在系统托盘中打开。

无论如何可以确定我的程序是否由 Windows 启动启动?或者有没有替代这个问题的方法?

谢谢!

4

2 回答 2

5

由注册表启动时添加参数。您绝对可以使用批处理脚本执行此操作,或者直接在注册表中执行此操作。

您将在静态主函数的参数中看到参数,并可以采取相应的行动。

于 2009-02-24T02:51:18.177 回答
5

我建议使用命令行参数。如果用户双击一个图标,那么程序应该以这样的方式启动:myProgram.exe /i,如果它以 Windows 启动,那么它应该以类似 myProgram.exe /w 的方式启动。

您可以在程序的主体中解析命令行参数。看这里:

http://www.c-sharpcorner.com/UploadFile/mahesh/CmdLineArgs03212006232449PM/CmdLineArgs.aspx

于 2009-02-24T02:53:11.853 回答