0


我有一个我必须在“信息系统安全”主题中做的迷你项目,这个想法是当用户浏览网络并执行一些操作时我必须在后台运行一个程序。
我做了一些搜索,我想我可能需要编写一个 Windows 服务程序。那是对的吗?或者我应该怎么做才能让我的程序在后台运行?
请任何帮助。
谢谢。

4

3 回答 3

1

要使您的程序在后台运行,您可以使用Shown表单的事件。

将其放入 Shown 事件中:

    private void Form1_Shown(object sender, EventArgs e)
    {
        this.WindowState = FormWindowState.Minimized;
        this.Hide();
    }
于 2012-10-21T02:03:15.530 回答
0

如果您不想编写服务程序,您可以在程序启动后隐藏您的程序窗口

ShowWindow(HWND,int);

为了让 Window-Handler 到您自己的窗口,您可以使用例如

HWND explorer=::FindWindow(NULL,"explorer.exe");

或者

HWND h = ::GetTopWindow(0);
while ( h )
{    if(IsWindowVisible(h)==1 && /*check if it's your Window*/)
     {   ShowWindow(h,0);//will hide Window
         break;
     }
     h = ::GetNextWindow( h , GW_HWNDNEXT);
}

你不得不

#include <winuser.h>

使用此功能

于 2012-10-20T11:05:56.460 回答
0

只需创建一个 Winforms 应用程序,删除表单,然后将代码放入 Program.cs 的 Main() 方法中。只要您需要,就让它保持活跃,并运行您需要的任何后台任务。

于 2012-10-21T02:05:38.380 回答