我的意思是当用户启动我的应用程序(EXE)。我希望它直接在系统托盘中启动,而不显示窗口。与防病毒软件&一样,下载管理器可以在系统托盘中以静默方式启动和运行。如何直接在系统托盘中启动应用程序? (.NET C#)
我想同样的效果,当用户点击的NotifyIcon的的ContextMenuStrip的“显示”按钮后,唯一的应用程序应该显示GUI。
我用这一点,但它不工作
private void Form_Load(object sender, EventArgs e)
{
this.Hide();
}
可能是我需要有main()函数中,没有GUI,但有一些其他类的NotifyIcon &的ContextMenuStrip,其选项将实例化GUI窗口类。对?
另请参阅此问题 - http://stackoverflow.com/questions/807005/c-net-winforms-instantiate-a-form-without-showing-it – ChrisF 2009-10-24 12:57:14
对不起,以疏通一个旧的话题。除了一件大事之外,我得到了一切。我明白'Application.Run()'本质上放弃了控制(?)。我想要做的是让代码做一些没有用户交互的事情(比如说它正在处理数据并将其写入文件)。我将该代码放在哪里,以便在程序坐在系统托盘中时执行? – 2013-10-22 15:57:13
@BarryDysert:'应用程序。运行()'启动windows消息泵。如果你在某个地方没有这个电话,那么你的托盘图标根本无法工作。如果不知道你实际想要达到什么目的,我会说看看线程,只知道在调用除Application.Run()之外的线程上的UI东西时遇到的问题。 – 2013-12-12 22:38:52