2012-10-20 194 views
0


我有一個迷你項目,我必須在「信息系統安全」主題中做,這個想法是當用戶瀏覽網絡並執行一些操作時,我必須在後臺運行程序。
我做了一些搜索,我想我可能需要編寫一個Windows服務程序。那是對的嗎?或者我該怎麼做才能讓我的程序在後臺運行?
請任何幫助。
謝謝。在後臺運行程序

+0

它需要執行什麼樣的活動以及它的頻率是多少? – Luftwaffe

+0

其實它必須捕捉用戶在瀏覽特定網站時寫的內容,並獲取鼠標位置並拍攝屏幕截圖。 – Ruba

+0

@Ruba聽起來更像是間諜軟件。 –

回答

0

只需創建一個WinForms應用程序,刪除表,並把你的代碼在Program.cs中Main()方法。只要你需要就保持它的活力,並且運行你需要的任何背景任務。

0

如果你不想寫一個服務程序,你可以隱藏你的程序窗口的程序開始後

ShowWindow(HWND,int); 

爲了獲取窗口處理程序到自己的窗口,你可以例如使用

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> 

使用此功能

+1

1)這不適用於C#的(直接)。 2)C#應用程序可以在沒有窗口的情況下運行。 –

1

使你的程序在後臺運行,您可以使用您的窗體的事件Shown

把這個成的Event:

private void Form1_Shown(object sender, EventArgs e) 
    { 
     this.WindowState = FormWindowState.Minimized; 
     this.Hide(); 
    }