我用C#winform开发了一个通知应用程序。 但现在在这里我想添加功能,每10秒显示一个通知窗口。
我的整个应用理念是:
我想开发一个可以驻留在后台的应用程序。一个 系统尝试图标显示始终。当用户单击此图标上下文时 菜单将打开,有一些选项。当用户点击一个 菜单WinForm会出现在那里。第一次申请时 将运行,配置表格将显示。此外,它将显示一个 通知窗口每10秒钟。此通知窗口是 小窗口,它将出现在屏幕的右下角。就像 我们看到快速修复防病毒通知。这个应用程序或 计算机启动时服务应自动启动。
目前我正在使用这种方法:
using (ProcessIcon ProccIcon = new ProcessIcon()) // ProcessIcon class encapsulating whole functionlity of system tray icon
{
ProccIcon.Display(); // This will display process icon
// Make sure the application runs!
Application.Run(); // application start, when user click on tray icon, menu will display and application execution stuck here until application will not terminate.
}
所以,问题是,开发此类应用程序的最佳做法是什么。 它应该是winform应用程序?或支持GUI的Windows服务?或任何其他。 如果它应该在WinForm中,那么我应该为这两件事做些什么。
答案 0 :(得分:0)
我认为它应该是Window Service。
我的拇指规则是这样的:
如果需要始终运行,则应该是服务。
编辑(在系统启动时启动应用程序):
您可以在启动文件夹中复制exe。每当计算机启动时,Exe也将自动启动。
OR
添加注册表以启动应用程序
private void RegisterInStartup()
{
RegistryKey registryKey = Registry.CurrentUser.OpenSubKey
("SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run", true);
registryKey.SetValue("ApplicationName", Application.ExecutablePath);
}
对于第二点,您可以使用BackGroundWorker
重要链接: