在Vista中程式設計控制防火牆設定

2021-04-13 12:54:26 字數 1243 閱讀 8255

在程式設計控制防火牆前先要有個前提,就是你必須是管理員許可權, 這樣本例的程式才能用"run as administrator"的方式執行,並成功修改。 如果你本身就是用administrator這個使用者登入的話,直接執行就行了。 建議最好在這個使用者下來除錯程式。

本程式只是個初始的例子,裡面的功能只開發了一部分,各位有興趣的話可以繼續深入運用。 像vista的防火牆就比較bt,除了基本設定外,在"control panel/administrative tools/windows firewall with advanced security" 還有高階設定,好像用程式都可控制。

firewallmanager 程式主要功能有

1. public void firewalltrigger( bool enable ) //開關防火牆。 貌似在vista裡面有問題,xp sp2好像可以。 但是用inetfwpolicy2.set_firewallenabled的方法的話,vista也能搞定。

2. public void firewallservice( string name, bool enable ) //開關防火牆服務程式,一般裡面的 file and printer sharing 服務比較有用。

3. public bool addport( string portname, int portnumber, string protocol ) // 開啟乙個埠。

4. public bool removeport( int portnumber, string protocol ) //刪除開啟的埠

5. public bool addaplication( string discriptionname, string filename ) //開啟放行應用程式

裡面還有個 protected object getinstance( string typename ) 本來是用clsid來例項化那些介面的,後來發現progid其實更簡單,不需要查,裡面有個規律,只需把介面的inet刪掉就是progid了。 如 inetfwopenport port = ( inetfwopenport )activator.createinstance( type.gettypefromprogid( "hnetcfg.fwopenport" ) ); 中 inetfwopenport 與 fwopenport.

首先,建立乙個console程式,在程式中新增引用,在com物件中找到"netfwtypelib" ,新增即可。 防火牆主要是靠這個物件操作的。 貌似不止vista, xp也是一樣的。核心程式如下:

程序控制程式設計

q 為何需要多程序 或者多執行緒 為何需要併發?a 併發技術,就是可以在同一時間同時執行多條任務的技術,使用者進行的任務往往不止乙個,單 cpu計算機實際上只能在乙個時間片段內執行一條指令。linux 使用 程序排程 實現併發,為每個程序指派一定的執行時間,這個時間通常很短,然後依照某種規則,依次單...

程序控制程式設計

1.多程序與併發的關係 當有多個執行緒在操作時,如果系統只有乙個cpu,則它根本不可能同時真正進行乙個以上的執行緒,它只能把 cpu執行時間劃分成若干個時間段,再把時間段分配給各個執行緒執行,在乙個時間段的執行緒 執行時,其他執行緒處於掛起狀態。這種方式我們成為併發。2.kill,pkill,xki...

程序控制程式設計

一.程序的分類 互動程序,批處理程序,守護程序。二.程序的屬性 1.程序id pid 是唯一的數值,用來區分程序 2.父程序和父程序的id ppid 3.啟動程序的使用者id uid 和所歸屬的組 gid 4.程序狀態 狀態分為執行r,休眠s,殭屍z 5.程序執行的優先順序 6.程序所連線的終端名 ...