C#程序win-startup到系统托盘

0 c# system-tray startup

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

我希望程序在系统托盘中启动,但只有在Windows自动启动时才能启动.如果用户从桌面双击该程序,则我不希望该程序在系统托盘中启动.现在,我可以让它始终在正常窗口模式下打开,或者始终在系统托盘中打开.

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

谢谢!

Nic*_*ick 5

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

您将在静态main函数的参数中看到参数,并可以相应地执行操作.


BFr*_*ree 5

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

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

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