全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:1226
推到 Plurk!
推到 Facebook!

如何調整系統裏的服務項?

答題得分者是:hagar
hcker
中階會員


發表:95
回覆:118
積分:62
註冊:2003-02-09

發送簡訊給我
#1 引用回覆 回覆 發表時間:2003-10-13 11:09:41 IP:218.19.xxx.xxx 未訂閱
例如Themes 可執行的命令:G:\WINDOWS\System32\svchost.exe -k netsvcs 但是如何通過一個按鍵來實現 比如 自動 手動 禁止 運行 停止 等…… 非常感謝 ----------要知道自己有多笨,到DelphiK.Top來看看----------
hagar
版主


發表:143
回覆:4056
積分:4445
註冊:2002-04-14

發送簡訊給我
#2 引用回覆 回覆 發表時間:2003-10-13 11:23:45 IP:202.39.xxx.xxx 未訂閱
Services - List Installed Services: http://www.delphisource.com/tipsdtl.asp?id=35 Starting and stopping Windows services: http://www.delphifaq.com/fq/q2121.shtml    check if a service is running: http://www.swissdelphicenter.ch/en/showcode.php?id=1275    --- 歡迎光臨 KTop 研究院 發表人 -
hcker
中階會員


發表:95
回覆:118
積分:62
註冊:2003-02-09

發送簡訊給我
#3 引用回覆 回覆 發表時間:2003-10-13 16:46:51 IP:218.19.xxx.xxx 未訂閱
引言: Services - List Installed Services: http://www.delphisource.com/tipsdtl.asp?id=35 --- 歡迎光臨 KTop 研究院 發表人 - >< face="Verdana, Arial, Helvetica"> function ServiceStart(sMachine, sService: String) : Boolean; var schm, schs: SC_Handle; ss: TServiceStatus; psTemp: PChar; dwChkP: DWord; begin ss.dwCurrentState := -1;//編譯的時候提示這裏有錯誤,大大能不能看看?謝謝 schm := OpenSCManager(PChar(sMachine), nil, SC_MANAGER_CONNECT); if (schm>0) then begin schs := OpenService(schm, PChar(sService), SERVICE_START or SERVICE_QUERY_STATUS); if (schs>0) then begin psTemp := nil; if (StartService(schs, 0, psTemp)) then if (QueryServiceStatus(schs, ss)) then while (SERVICE_RUNNING<>ss.dwCurrentState) do begin dwChkP := ss.dwCheckPoint; Sleep(ss.dwWaitHint); if (not QueryServiceStatus(schs, ss)) then Break; if (ss.dwCheckPoint < dwChkP) then Break; end; CloseServiceHandle(schs); end; CloseServiceHandle(schm); end; Result := SERVICE_RUNNING=ss.dwCurrentState; end;
 
 
----------要知道自己有多笨,到DelphiK.Top來看看----------
hcker
中階會員


發表:95
回覆:118
積分:62
註冊:2003-02-09

發送簡訊給我
#4 引用回覆 回覆 發表時間:2003-10-13 16:49:12 IP:218.19.xxx.xxx 未訂閱
I know... -1 change to 1 that is ok, but i don`t know why that... 還有個問題,我發現如果是禁用的服務,就不能start了,如何去掉這個禁用改成手動或者是自動?thx ----------要知道自己有多笨,到DelphiK.Top來看看---------- 發表人 - hcker 於 2003/10/13 16:52:55
hagar
版主


發表:143
回覆:4056
積分:4445
註冊:2002-04-14

發送簡訊給我
#5 引用回覆 回覆 發表時間:2003-10-13 19:32:49 IP:202.39.xxx.xxx 未訂閱
關於 -1 這個問題, 以下是 MSDN 中關於 dwCurrentState 的說明: Current state of the service. This member can be one  of the following values.  Value Meaning  SERVICE_CONTINUE_PENDING The service continue is pending.  SERVICE_PAUSE_PENDING The service pause is pending.  SERVICE_PAUSED The service is paused.  SERVICE_RUNNING The service is running.  SERVICE_START_PENDING The service is starting.  SERVICE_STOP_PENDING The service is stopping.  SERVICE_STOPPED The service is not running. 而在 Winsvc unit 中: // // Service State -- for CurrentState //   {$EXTERNALSYM SERVICE_STOPPED}   SERVICE_STOPPED                = $00000001;   {$EXTERNALSYM SERVICE_START_PENDING}   SERVICE_START_PENDING          = $00000002;   {$EXTERNALSYM SERVICE_STOP_PENDING}   SERVICE_STOP_PENDING           = $00000003;   {$EXTERNALSYM SERVICE_RUNNING}   SERVICE_RUNNING                = $00000004;   {$EXTERNALSYM SERVICE_CONTINUE_PENDING}   SERVICE_CONTINUE_PENDING       = $00000005;   {$EXTERNALSYM SERVICE_PAUSE_PENDING}   SERVICE_PAUSE_PENDING          = $00000006;   {$EXTERNALSYM SERVICE_PAUSED}   SERVICE_PAUSED                 = $00000007;  所以 dwCurrentState 值不能為 -1 吧.    --- 歡迎光臨 KTop 研究院
系統時間:2024-05-10 22:03:19
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!