日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

加载驱动的相关函数

發布時間:2025/6/17 编程问答 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 加载驱动的相关函数 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1:打開SCM管理器函數
SC_HANDLE OpenSCManager(LPCTSTR lpszMachineName,//計算機名稱
LPCTSTR lpszDatabaseName,//scm數據庫名稱
DWORD fdwDesiredAccess); // 使用權限
----Open SCManager 函數打開指定計算機上的service control manager database。其中參數lpszMac
hineName指定計算機名,若為空則指定為本機。參數lpszDatabaseName指定要打開的service control m
anager database,默認為空。
----參數fdwDesiredAccess指定操作的權限,可以為下面取值之一
SC_MANAGER_ALL_ACCESS //所有權限
SC_MANAGER_CONNECT //允許連接service control manager
SC_MANAGER_CREATE_SERVICE //允許創建服務對象并把它加入service control manager database
SC_MANAGER_ENUMERATE_SERVICE //允許枚舉service control manager database中的服務
SC_MANAGER_LOCK //允許鎖住service control manager database
SC_MANAGER_QUERY_LOCK_STATUS //允許獲取servicecontrolmanagerdatabase的封鎖信息
----函數返回值:函數執行成功則返回一個指向service control manager database的句柄,失敗則返回
NULL。

2: 關閉服務句柄
BOOL CloseServiceHandle(SC_HANDLE hSCObject)//要關閉的句柄

3: 創建服務
SC_HANDLE CreateService(
SC_HANDLE hSCManager, //服務控制管理程序維護的登記數據庫的句柄,由系統函數OpenSCManager 返回
LPCTSTR lpServiceName, //以NULL 結尾的服務名,用于創建登記數據庫中的關鍵字
LPCTSTR lpDisplayName, //以NULL 結尾的服務名,用于用戶界面標識服務
DWORD dwDesiredAccess, //指定服務返回類型
DWORD dwServiceType, //指定服務類型
DWORD dwStartType, //指定何時啟動服務
DWORD dwErrorControl, //指定服務啟動失敗的嚴重程度
LPCTSTR lpBinaryPathName, //指定服務程序二進制文件的路徑
LPCTSTR lpLoadOrderGroup, //指定順序裝入的服務組名
LPDWORD lpdwTagId, //忽略,NULL
LPCTSTR lpDependencies, //指定啟動該服務前必須先啟動的服務或服務組
LPCTSTR lpServiceStartName, //以NULL 結尾的字符串,指定服務帳號。如是NULL,則表示使用LocalSystem帳號
LPCTSTR lpPassword //以NULL 結尾的字符串,指定對應的口令。為NULL表示無口令。但使用LocalSystem時填NULL
);

4: 打開服務
SC_HANDLE OpenService(SC_HANDLE schSCManager,//scm數據庫的句柄
LPCTSTR lpszServiceName,//服務名稱
DWORD fdwDesiredAccess);//訪問權限
----OpenService函數打開指定的Service。
----其中參數schSCManager是指向service control manager database的句柄,由OpenSCManager函數返回。
----參數lpszServiceName要打開的服務的名字,注意大小寫。
----參數fdwDesiredAccess指定操作的權限,可以為下面取值之一
SERVICE_ALL_ACCESS //所有權限
SERVICE_CHANGE_CONFIG //允許更改服務的配置
SERVICE_ENUMERATE_DEPENDENTS //允許獲取依賴于該服務的其他服務
SERVICE_INTERROGATE //允許立即獲取服務狀態
SERVICE_PAUSE_CONTINUE //允許暫停和喚醒服務
SERVICE_QUERY_CONFIG //允許獲取服務配置
SERVICE_QUERY_STATU //允許通過訪問service control manager獲取服務狀態
SERVICE_START //允許啟動服務
SERVICE_STOP //允許停止服務
SERVICE_USER_DEFINE_CONTROL //允許用戶指定特殊的服務控制碼
----函數返回值:函數執行成功則返回指向某項服務的句柄,失敗則返回NULL。

5: 控制服務
BOOL ControlService(SC_HANDLE hService,
DWORD dwControl,
LPSERVICE_STATUS lpServiceStatus);
----ControlService函數向Win32service發送控制碼。
----其中參數hService是指向某項服務的句柄,由OpenService函數返回。
----參數dwControl為控制碼,常用的有
SERVICE_CONTROL_STOP //停止服務
SERVICE_CONTROL_PAUSE //暫停服務
SERVICE_CONTROL_CONTINUE //喚醒暫停的服務
SERVICE_CONTROL_INTERROGATE//刷新某服務的狀態
----參數lpServiceStatus指向SERVICE_STATUS結構,用于存放該服務最新的狀態信息。
----函數返回值:函數執行成功則返回True,失敗則返回False。

轉載于:https://www.cnblogs.com/enjoy-life-everyday/p/3472687.html

《新程序員》:云原生和全面數字化實踐50位技術專家共同創作,文字、視頻、音頻交互閱讀

總結

以上是生活随笔為你收集整理的加载驱动的相关函数的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。