国产午夜成人免费看片无遮挡_日本免费xxxx色视频_免费人成网上在线观看_黄网址在线永久免费观看

當前位置:雨林木風下載站 > 技術開發教程 > 詳細頁面

遠程程序運行狀態的容易監控

遠程程序運行狀態的容易監控

更新時間:2020-02-09 文章作者:未知 信息來源:網絡 閱讀次數:

民航中南空管局氣象中心數據庫室 歐壯杰

我們知道,在unix操作系統中,遠程主機命令行程序的運行和進程的關閉可通過telnet來實現,當客戶機裝有x-windows時,可以運行遠程主機圖形界面的程序且界面顯示在客戶機上,相當于延長了遠程主機顯示屏的距離。但windows產品在windows2000以前只有一個叫“八爪魚”的不成熟第三方產品可實現該功能。隨著windows2000的發布,終端服務功能成為windows2000的一個亮點,只要在服務器端和客戶端安裝上相應的程序,就可以實現遠程桌面的功能。但是對于要實時監控通過慢速的DDN專線連接的遠程主機上的程序,則終端服務占用了太多的帶寬。因此,我們采用自己編程序的方法,用較少的傳輸量就可以實時監控遠程主機的程序。
我們的設計方法是:在服務器端運行一個實時進程監控程序,定時讀取服務器進程的運行情況;在客戶端運行一個終端程序,通過服務器端的進程監控程序把服務器的進程運行情況在終端顯示出來,并可在終端發送指令指示服務器啟動和停止特定的進程,甚至重啟遠程主機。
1、服務器端進程監控程序
在windows2000 和windows 95以上的版本中,Microsoft 提供了一套工具幫助函數(Tool Help),該套函數用于獲得當前系統中運行的進程、堆、模塊及進程使用的線程的快照集。在windows nt 4.0中是沒有提供。但我們現在的遠程主機都是安裝了windows 2000,因此可在上面運行該套函數,下面是例子(采用delphi 語言):
procedure TForm1.Button1Click(Sender: TObject);
var i : integer;
ContinueLoop:BOOL;
FSnapshotHandle:THandle;
FProcessEntry32:TProcessEntry32;
begin
FSnapshotHandle:=CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS,0);
FProcessEntry32.dwSize:=Sizeof(FProcessEntry32); file://指定結構的大小
ContinueLoop:=Process32First(FSnapshotHandle,FProcessEntry32);
while integer(ContinueLoop)<>0 do
begin
Demo1.Lines.Add(inttostr(FProcessEntry32.th32ProcessID)+
':'+FProcessEntry32.szExeFile);
ContinueLoop:=Process32Next(FSnapshotHandle,FProcessEntry32);
end;
CloseHandle (FSnapshotHandle);
end;
程序中首先調用CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS,0)函數來獲得當前進程快照集的打開句柄。
TProcessEntry32是一個進程入口結構,它用于存儲所掃描到的進程信息,如進程號、進程可執行文件名字等。第二步就是調用Process32First(FSnapshotHandle,FProcessEntry32)函數來尋找第一個進程,當返回值ContinueLoop為True時說明已找到進程;而Process32Next(FSnapshotHandle,FProcessEntry32)用于取得記錄在系統快照集里的下一個進程信息。當返回值為False為說明列舉已完成。TProcessEntry32結構的th32ProcessID屬性記錄了當前進程的進程號;szExeFile屬性記錄了當前進程的可執行文件名字;獲得每一進程的這兩個信息,就可以知當前系統的進程運行情況。
當客戶端軟件提出瀏覽遠端進程要求時,服務器端可運行該段程序并把獲得的信息發給客戶端。
再有,在windows2000下,可執行GetProcessTimes函數來獲得該進程以內核模式已經執行的時間和以用戶模式已經執行的時間,這樣我們就可大概了解該進程對CPU的占用情況。以便及時采取相應的措施。
當獲得服務器端進程后,我們在客戶端可發出指令,讓服務器端程序終止某一進程或啟動某一程序,用TerminateProcess函數可結束指定的進程及其所擁有的線程,該函數使得一個進程中的所有線程都終止,且引起該進程退出,但進程終止的消息不通知給附加的動態連接庫DLL,因此使用該函數不能太頻繁。
我們還可以在服務器端截取屏幕,并把屏幕存為jpg格式圖像后以數據流的方式發送給客戶端。
另外,為了監控服務器上的進程所占用的內存資源,我們可利用 GetProcessMemoryInfo函數來獲得當前進程所占用內存的大小,例子如下:
procedure TForm1.Button1Click(Sender: TObject);
var hd:HWND;
dw:Dword;
PMC: PPROCESS_MEMORY_COUNTERS;
begin
dw:=4294548877;//假設該數值為某一進程的進程號
hd:=OpenProcess(PROCESS_TERMINATE,FALSE,dw); file://獲得進程的句柄
PMC.cb:=sizeof(PMC);
if GetProcessMemoryInfo(hd, PMC, PMC.cb) then
begin
file://調用PMC.WorkingSetSize來獲得所占用內存的大小
end;
CloseHandle(hd);
end;
需要注意的是GetProcessMemoryInfo函數只在windows nt/2000 下可用,在windows98中沒有函數可獲得進程內存的大小,另外要在uses部分引用PsAPI單元,里面有GetProcessMemoryInfo函數引用說明。

2、客戶端程序
客戶端的程序比較簡單,主要功能是要實現指令的發送和信息的接收。

3、程序間的通信
我們采用socket套接字來實現程序間的通信,在服務器端運行一Socket服務器序,監聽來自客戶端的連接和接受指令。在delphi中,復雜的Socket函數被封裝成一控件TserverSocket,該控件繼承自TCustomSocket 對象,封裝了對監聽端口綁定和監聽。只要調用TserverSocket控件的Open方法,就可使服務器端的Sockct處于監聽狀態,當客戶端有連接請求時將自動接受連接,然后在ServerSocket1ClientRead(Sender: TObject; Socket: TCustomWinSocket)事件中讀取來自客戶端的請求。為了安全起見,我們可自定義較高層的協議,在客端所發送的信息中加上內容標識,如"user:abcdef",表示收到用戶的驗證,然后和客戶端之間進行安全的認證。在讀到數據時,我們可根據內容做出相應的動作,如取得進程的信息并發送給客戶。
在客戶端,我們采用TclientSocket控件來同服務器端進行通信,在指定了服務器端的IP地址和端口后,調用Open方法來和服務端的Socket取得聯系并發送用戶名和密碼到服務端進行驗證,之后就可以發送指令和接收數據了。需要說明的是,客戶發送的指令要和服務器端進行商議好。
以上只是一個初步的應用,利用該思路還可做得更多,我們在實際應用取得了較好的效果。 

溫馨提示:喜歡本站的話,請收藏一下本站!

本類教程下載

系統下載排行

国产午夜成人免费看片无遮挡_日本免费xxxx色视频_免费人成网上在线观看_黄网址在线永久免费观看

  • <label id="pxtpz"><meter id="pxtpz"></meter></label>
      1. <span id="pxtpz"><optgroup id="pxtpz"></optgroup></span>

        美女视频黄 久久| 国产精品福利一区二区三区| 91精品国产全国免费观看| 国产精品美女久久福利网站| 成人视屏免费看| 中文字幕巨乱亚洲| 99国产精品久久久| 亚洲一区二区av电影| 欧美精品丝袜中出| 激情欧美一区二区| 国产女同性恋一区二区| 99热这里都是精品| 亚洲免费在线观看| 宅男在线国产精品| 国产91丝袜在线播放| 亚洲另类一区二区| 欧美一级专区免费大片| 国产精品一区三区| 一区二区三区中文在线| 日韩一级免费观看| 成人在线综合网| 午夜日韩在线观看| 久久精品视频免费| 色综合久久99| 久久99国产精品成人| 亚洲品质自拍视频| 久久综合久久综合久久综合| 99九九99九九九视频精品| 全国精品久久少妇| 亚洲欧洲成人精品av97| 日韩女优电影在线观看| 91理论电影在线观看| 久久精品国产久精国产| 亚洲欧美日韩久久| 国产欧美一区二区在线| 制服丝袜成人动漫| 色综合中文字幕国产| 五月激情综合婷婷| 中文字幕一区二区在线播放| 欧美一区二区三区在线观看视频| 成人综合婷婷国产精品久久| 青青草精品视频| 亚洲综合网站在线观看| 国产精品丝袜在线| 精品播放一区二区| 91精品国产麻豆| 欧美影视一区在线| 97精品久久久久中文字幕| 国产伦精品一区二区三区免费| 性做久久久久久免费观看| 亚洲免费视频成人| ...av二区三区久久精品| 国产精品天天摸av网| 欧美激情一区二区| 国产日产欧美一区二区三区| 日韩精品一区二区三区中文精品| 欧美视频在线一区二区三区| 91天堂素人约啪| av在线不卡免费看| 成人激情免费视频| 成人av综合一区| 丁香婷婷综合色啪| 国产黄色精品网站| 懂色av一区二区三区免费观看| 国产不卡高清在线观看视频| 国产精品一区2区| 国产乱码精品一区二区三区av| 精品一区二区三区免费观看| 日本一区二区免费在线| 国产日韩欧美一区二区三区综合 | 成人v精品蜜桃久久一区| 国产成人欧美日韩在线电影| 国内精品第一页| 国产乱码一区二区三区| 国产麻豆视频精品| 成人综合日日夜夜| 色综合中文字幕| 欧美精品视频www在线观看 | 日本欧美大码aⅴ在线播放| 视频在线观看国产精品| 美女被吸乳得到大胸91| 国产一区美女在线| 99国产精品国产精品久久| 在线免费不卡视频| 欧美一级视频精品观看| 精品国产乱码久久久久久浪潮 | 一区二区三区在线视频观看58| 亚洲一区二区三区爽爽爽爽爽| 日韩在线a电影| 国产成人丝袜美腿| 在线免费一区三区| 精品国产乱码久久久久久久久 | 日韩美女一区二区三区四区| 91蝌蚪porny| 欧美一区二区三区的| 久久久久99精品一区| 一区二区三区在线影院| 精品在线观看视频| 欧美在线观看视频在线| 久久精品欧美一区二区三区不卡 | 国产福利91精品一区二区三区| 91网站在线观看视频| 精品久久五月天| 亚洲亚洲人成综合网络| 国产成人aaaa| 日韩欧美国产麻豆| 一区二区国产视频| 成人免费视频免费观看| 日韩精品一区二区三区四区| 亚洲一区二区三区四区在线观看 | 一区二区三区四区中文字幕| 日本特黄久久久高潮| 麻豆精品视频在线| 一区二区三区日韩精品视频| 日韩国产欧美一区二区三区| 欧美精品一区二区三区蜜桃视频| 欧美在线视频你懂得| 欧美日韩精品一区二区三区| 欧美日韩精品一区二区三区| 精品99一区二区三区| 不卡高清视频专区| 精品国产污污免费网站入口| 久久综合色之久久综合| 中文字幕精品三区| 亚洲第一主播视频| 国内外精品视频| 韩国女主播一区二区三区| 3d动漫精品啪啪一区二区竹菊| 精品国产一区二区三区av性色| 中文字幕亚洲欧美在线不卡| 视频一区国产视频| 99热在这里有精品免费| 欧美一级理论片| 亚洲精品免费在线| 欧美专区亚洲专区| 国产欧美日韩不卡免费| 三级影片在线观看欧美日韩一区二区| 国产尤物一区二区在线| 欧美性感一类影片在线播放| 亚洲国产精品av| av一二三不卡影片| 久久综合九色综合欧美98| 亚洲欧美乱综合| 国产一区二区免费视频| 欧美一区中文字幕| 亚洲国产精品v| 成人动漫精品一区二区| 久久久777精品电影网影网 | 夜夜揉揉日日人人青青一国产精品| 国产精品久久久久久一区二区三区 | 亚洲aⅴ怡春院| 97久久人人超碰| 日韩一级片网站| 狠狠色狠狠色合久久伊人| 欧美三级韩国三级日本三斤| 综合久久综合久久| av男人天堂一区| 中文字幕一区二区三区不卡在线| 91欧美激情一区二区三区成人| 国产三级精品三级| 国产精品一区三区| 久久午夜色播影院免费高清| 精品一二三四在线| 久久欧美一区二区| 欧美成人精精品一区二区频| 午夜精彩视频在线观看不卡| 51精品秘密在线观看| 日日欢夜夜爽一区| 91丨九色丨蝌蚪丨老版| 蜜臀久久99精品久久久久久9| 欧美一区二区在线观看| 麻豆国产精品777777在线| 26uuu国产日韩综合| 国产网站一区二区| 欧美伊人久久大香线蕉综合69| 一区二区三区欧美视频| 777xxx欧美| 经典三级一区二区| 国产肉丝袜一区二区| 91网页版在线| 一区二区三区日韩在线观看| 91精品在线免费观看| 色呦呦网站一区| 亚洲一区二区三区中文字幕| 欧美美女喷水视频| 国产一区91精品张津瑜| 国产精品乱人伦中文| 欧美v日韩v国产v| 成人91在线观看| 亚洲成人在线网站| 欧美精品一区二区三区在线| 亚洲人成网站色在线观看| 欧美高清性hdvideosex| 国产在线精品视频| 亚洲另类春色校园小说| 日韩免费福利电影在线观看| 欧美色网站导航| 韩国av一区二区三区| 亚洲一区中文日韩| 国产三级精品视频|