1

我正在创建一个简单的考勤应用程序,它将具有一个简单的界面(带有两个输入框和一个提交按钮)和一个在后台运行的 Windows 服务。

想法是捕获登录/注销事件并相应地计算小时数。问题是如何创建一个可以在后台运行的 Windows 服务,同时也有一个界面供用户添加他们的标识?

谢谢

4

1 回答 1

0

您不需要 Windows 服务。拥有与 UI 交互的 Windows 服务将是一项复杂的任务。您不能直接从 Windows 服务打开 UI 并将其显示在用户桌面上,因为这会导致安全风险。

我建议您创建一个 Windows 应用程序并在 Windows 启动时执行它。您可以在 Windows 启动时轻松调用您的 exe。只需将您的应用程序名称和 exe 路径设置为以下将在操作系统启动时执行的寄存器条目。

Microsoft.Win32.RegistryKey key = Microsoft.Win32.Registry.CurrentUser.OpenSubKey("SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run", true);
key.SetValue("Your Application Name", @"Your application path.exe");

编辑

获取当前登录的用户名

string loggedInUser = Environment.UserName;
于 2013-09-16T06:23:38.407 回答