锘??xml version="1.0" encoding="utf-8" standalone="yes"?>91精品国产9l久久久久,久久久久噜噜噜亚洲熟女综合,久久无码人妻精品一区二区三区http://m.shnenglu.com/vfdff/zh-cnSat, 28 Jun 2025 15:51:08 GMTSat, 28 Jun 2025 15:51:08 GMT60C++涓殑mutable鍜寁olatilehttp://m.shnenglu.com/vfdff/archive/2020/11/21/217512.htmlvfdffvfdffSat, 21 Nov 2020 03:25:00 GMThttp://m.shnenglu.com/vfdff/archive/2020/11/21/217512.htmlhttp://m.shnenglu.com/vfdff/comments/217512.htmlhttp://m.shnenglu.com/vfdff/archive/2020/11/21/217512.html#Feedback0http://m.shnenglu.com/vfdff/comments/commentRss/217512.htmlhttp://m.shnenglu.com/vfdff/services/trackbacks/217512.html

vfdff 2020-11-21 11:25 鍙戣〃璇勮
]]>
VC涓姞杞介┍鍔ㄧ▼搴?/title><link>http://m.shnenglu.com/vfdff/archive/2008/09/20/VC_driver_program.html</link><dc:creator>vfdff</dc:creator><author>vfdff</author><pubDate>Sat, 20 Sep 2008 09:38:00 GMT</pubDate><guid>http://m.shnenglu.com/vfdff/archive/2008/09/20/VC_driver_program.html</guid><wfw:comment>http://m.shnenglu.com/vfdff/comments/62358.html</wfw:comment><comments>http://m.shnenglu.com/vfdff/archive/2008/09/20/VC_driver_program.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://m.shnenglu.com/vfdff/comments/commentRss/62358.html</wfw:commentRss><trackback:ping>http://m.shnenglu.com/vfdff/services/trackbacks/62358.html</trackback:ping><description><![CDATA[浠嶬ProcCheck鐨勪唬鐮侀噷鎻愬彇鍑烘潵鐨勶紝涓嶇敤瀹夎椹卞姩紼嬪簭錛岃嚜宸辯殑紼嬪簭閲岃鐢ㄧ殑鏃跺欑敤HANDLE openDriver(void)鍔犺澆椹卞姩錛岀敤瀹屼簡void uninstallDriver(void)鍗歌澆銆備嬌鐢ㄦ椂榪橀渶鑷繁淇敼錛屼唬鐮佷笉闅撅紝鐪嬩笅灝辨槑鐧戒簡銆?br><br><br>浠g爜濡備笅錛?br><br>//HANDLE openDriver(void)鎵撳紑椹卞姩寤虹珛鐨勭鍙烽摼鎺ョ殑鍙ユ焺<br>//void uninstallDriver(void)鍗歌澆椹卞姩錛岃鎶妎penDriver鎵撳紑鐨勫彞鏌勫叧闂墠鍙互鎴愬姛鍗歌澆<br><br>#include <windows.h><br><br>#define DRV_NAME      "DLPORTIO"http://椹卞姩鍚?br>#define DRV_FILENAME     "DLPORTIO.sys"http://椹卞姩鏂囦歡<br><br>#define STATUS_SUCCESS     ((NTSTATUS)0x00000000L)<br><br><br>typedef LONG NTSTATUS;<br><br>typedef struct _STRING {<br>  USHORT  Length;<br>  USHORT  MaximumLength;<br>  PCHAR  Buffer;<br>} ANSI_STRING, *PANSI_STRING;<br><br>typedef struct _UNICODE_STRING {<br>  USHORT  Length;<br>  USHORT  MaximumLength;<br>  PWSTR  Buffer;<br>} UNICODE_STRING, *PUNICODE_STRING;<br><br>//*********************************************************************************************<br>// Assign loaddriver priviledge to our process, so we can load our support driver.<br>//<br>//*********************************************************************************************<br><br>BOOL getLoadDriverPriv()<br>{<br> HANDLE hToken;<br><br> if(OpenProcessToken(GetCurrentProcess(), TOKEN_QUERY | TOKEN_ADJUST_PRIVILEGES, &hToken))<br> {<br>  LUID huid;<br>  if(LookupPrivilegeValue(NULL, "SeLoadDriverPrivilege", &huid))<br>  {<br>   LUID_AND_ATTRIBUTES priv;<br>   priv.Attributes = SE_PRIVILEGE_ENABLED;<br>   priv.Luid = huid;<br><br>   TOKEN_PRIVILEGES tp;<br>   tp.PrivilegeCount = 1;<br>   tp.Privileges[0] = priv;<br><br>   if(AdjustTokenPrivileges(hToken, FALSE, &tp, 0, NULL, NULL))<br>   {<br>    return TRUE;<br>   }<br>  }<br> }<br> return FALSE;<br>}<br><br><br>//*********************************************************************************************<br>// Sets up the necessary registry settings to load the support driver<br>//<br>//*********************************************************************************************<br><br>BOOL setupRegistry()<br>{<br> HKEY hkey;<br> if(RegCreateKey(HKEY_LOCAL_MACHINE, "System\CurrentControlSet\Services\"DRV_NAME, &hkey) != ERROR_SUCCESS)<br>  return FALSE;<br><br> DWORD val;<br> val = 1;<br> if(RegSetValueEx(hkey, "Type", 0, REG_DWORD, (PBYTE)&val, sizeof(val)) != ERROR_SUCCESS)<br>  return FALSE;<br><br> if(RegSetValueEx(hkey, "ErrorControl", 0, REG_DWORD, (PBYTE)&val, sizeof(val)) != ERROR_SUCCESS)<br>  return FALSE;<br> <br> val = 3;<br> if(RegSetValueEx(hkey, "Start", 0, REG_DWORD, (PBYTE)&val, sizeof(val)) != ERROR_SUCCESS)<br>  return FALSE;<br><br> char *imgName = "System32\DRIVERS\"DRV_FILENAME;<br> <br> if(RegSetValueEx(hkey, "ImagePath", 0, REG_EXPAND_SZ, (PBYTE)imgName, strlen(imgName)) != ERROR_SUCCESS)<br>  return FALSE;<br><br> return TRUE;<br>}<br><br><br>//*********************************************************************************************<br>// Actual code to load our driver into memory<br>//<br>//*********************************************************************************************<br><br>BOOL loadDriver()<br>{<br> // call ntdll APIs<br> HMODULE hntdll;<br><br> NTSTATUS (WINAPI *_RtlAnsiStringToUnicodeString)(PUNICODE_STRING  DestinationString,IN PANSI_STRING  SourceString,IN <br><br>BOOLEAN);<br><br> VOID (WINAPI *_RtlInitAnsiString)<br>  (IN OUT PANSI_STRING  DestinationString,<br>   IN PCHAR  SourceString);<br><br> NTSTATUS (WINAPI * _ZwLoadDriver)<br>  (IN PUNICODE_STRING DriverServiceName);<br><br> NTSTATUS (WINAPI * _ZwUnloadDriver)<br>  (IN PUNICODE_STRING DriverServiceName);<br><br> VOID (WINAPI * _RtlFreeUnicodeString)<br>  (IN PUNICODE_STRING  UnicodeString);<br><br><br> hntdll = GetModuleHandle("ntdll.dll");<br>   <br> *(FARPROC *)&_ZwLoadDriver = GetProcAddress(hntdll, "NtLoadDriver");<br><br> *(FARPROC *)&_ZwUnloadDriver = GetProcAddress(hntdll, "NtUnloadDriver");<br>    <br> *(FARPROC *)&_RtlAnsiStringToUnicodeString = <br>   GetProcAddress(hntdll, "RtlAnsiStringToUnicodeString");<br><br> *(FARPROC *)&_RtlInitAnsiString = <br>   GetProcAddress(hntdll, "RtlInitAnsiString");<br><br> *(FARPROC *)&_RtlFreeUnicodeString = <br>   GetProcAddress(hntdll, "RtlFreeUnicodeString");<br><br> if(_ZwLoadDriver && _ZwUnloadDriver && _RtlAnsiStringToUnicodeString &&<br>    _RtlInitAnsiString && _RtlFreeUnicodeString)<br> {<br>  ANSI_STRING aStr;<br>  <br>  _RtlInitAnsiString(&aStr, <br>  "\Registry\Machine\System\CurrentControlSet\Services\"DRV_NAME);<br>      <br>  UNICODE_STRING uStr;<br><br>  if(_RtlAnsiStringToUnicodeString(&uStr, &aStr, TRUE) != STATUS_SUCCESS)<br>   return FALSE;<br>  else<br>  {<br>   if(_ZwLoadDriver(&uStr) == STATUS_SUCCESS)<br>   {<br>    _RtlFreeUnicodeString(&uStr);<br>    return TRUE;<br>   }<br>   _RtlFreeUnicodeString(&uStr);<br>  }<br> }<br><br> return FALSE;<br>}<br><br><br>//*********************************************************************************************<br>// Actual code to remove our driver from memory<br>//<br>//*********************************************************************************************<br><br>BOOL unloadDriver()<br>{<br> // call ntdll APIs<br> HMODULE hntdll;<br> NTSTATUS (WINAPI * _RtlAnsiStringToUnicodeString)<br>  (PUNICODE_STRING  DestinationString,<br>   IN PANSI_STRING  SourceString,<br>   IN BOOLEAN);<br><br> VOID (WINAPI *_RtlInitAnsiString)<br>  (IN OUT PANSI_STRING  DestinationString,<br>   IN PCHAR  SourceString);<br><br> NTSTATUS (WINAPI * _ZwLoadDriver)<br>  (IN PUNICODE_STRING DriverServiceName);<br><br> NTSTATUS (WINAPI * _ZwUnloadDriver)<br>  (IN PUNICODE_STRING DriverServiceName);<br><br> VOID (WINAPI * _RtlFreeUnicodeString)<br>  (IN PUNICODE_STRING  UnicodeString);<br><br><br> hntdll = GetModuleHandle("ntdll.dll");<br>   <br> *(FARPROC *)&_ZwLoadDriver = GetProcAddress(hntdll, "NtLoadDriver");<br><br> *(FARPROC *)&_ZwUnloadDriver = GetProcAddress(hntdll, "NtUnloadDriver");<br>    <br> *(FARPROC *)&_RtlAnsiStringToUnicodeString = <br>   GetProcAddress(hntdll, "RtlAnsiStringToUnicodeString");<br><br> *(FARPROC *)&_RtlInitAnsiString = <br>   GetProcAddress(hntdll, "RtlInitAnsiString");<br><br> *(FARPROC *)&_RtlFreeUnicodeString = <br>   GetProcAddress(hntdll, "RtlFreeUnicodeString");<br><br> if(_ZwLoadDriver && _ZwUnloadDriver && _RtlAnsiStringToUnicodeString &&<br>    _RtlInitAnsiString && _RtlFreeUnicodeString)<br> {<br>  ANSI_STRING aStr;<br>  <br>  _RtlInitAnsiString(&aStr, <br>  "\Registry\Machine\System\CurrentControlSet\Services\"DRV_NAME);<br>      <br>  UNICODE_STRING uStr;<br><br>  if(_RtlAnsiStringToUnicodeString(&uStr, &aStr, TRUE) != STATUS_SUCCESS)<br>   return FALSE;<br>  else<br>  {<br>   if(_ZwUnloadDriver(&uStr) == STATUS_SUCCESS)<br>   {<br>    _RtlFreeUnicodeString(&uStr);<br>    return TRUE;<br>   }<br>   _RtlFreeUnicodeString(&uStr);<br>  }<br> }<br><br> return FALSE;<br>}<br><br><br>//*********************************************************************************************<br>// Removes our driver file and registry settings<br>//<br>//*********************************************************************************************<br><br>void cleanupDriver(void)<br>{<br> char sysDir[MAX_PATH + 1];<br> GetSystemDirectory(sysDir, MAX_PATH);<br> strncat(sysDir, "\drivers\"DRV_FILENAME, MAX_PATH);<br> DeleteFile(sysDir);<br><br> RegDeleteKey(HKEY_LOCAL_MACHINE, "System\CurrentControlSet\Services\"DRV_NAME"\Enum");<br> RegDeleteKey(HKEY_LOCAL_MACHINE, "System\CurrentControlSet\Services\"DRV_NAME);<br>}<br><br><br>//*********************************************************************************************<br>// Attempts to get a handle to our kernel driver.  If fails, try to install the driver.<br>//<br>//*********************************************************************************************<br><br>HANDLE openDriver(void)<br>{<br> HANDLE hDevice;<br> //CreateFile鎵撳紑椹卞姩寤虹珛鐨勭鍙烽摼鎺ワ紝寰楁牴鎹┍鍔ㄤ腑寤虹珛鐨勫悕瀛楁洿鏀?br> hDevice = CreateFile("\\.\"DRV_NAME, GENERIC_WRITE | GENERIC_READ, FILE_SHARE_READ | FILE_SHARE_WRITE,<br>          NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, NULL);<br><br> if(hDevice == INVALID_HANDLE_VALUE)<br> {  <br>  char drvFullPath[MAX_PATH+1];<br>  char *filePart;<br><br>  ZeroMemory(drvFullPath, MAX_PATH);  <br>  GetFullPathName(DRV_FILENAME, MAX_PATH, drvFullPath, &filePart);<br>  <br>  //printf("%s ", drvFullPath);<br>  HANDLE hFile = CreateFile(drvFullPath, GENERIC_READ, FILE_SHARE_READ, NULL, OPEN_EXISTING,<br>         FILE_ATTRIBUTE_NORMAL, 0);<br>  if(hFile == INVALID_HANDLE_VALUE)<br>  {<br>   //printf("Cannot find required driver file %s ", drvFullPath);<br>   AfxMessageBox("Cannot find required driver file");<br>   return INVALID_HANDLE_VALUE;<br>  }<br>  else<br>  {<br>   CloseHandle(hFile);<br><br>   char sysDir[MAX_PATH + 1];<br>   GetSystemDirectory(sysDir, MAX_PATH);<br>   strncat(sysDir, "\drivers\"DRV_FILENAME, MAX_PATH);<br>   CopyFile(drvFullPath, sysDir, TRUE);<br><br>   if(!getLoadDriverPriv())<br>   {<br>    //printf("Error getting load driver privilege! ");<br>    AfxMessageBox("Error getting load driver privilege! ");<br>   }<br>   else<br>   {<br>    if(!setupRegistry())<br>    {<br>     //printf("Error setting driver registry keys! Make sure you are running this as <br><br>Administrator. ");<br>     AfxMessageBox("Error setting driver registry keys! Make sure you are running this as <br><br>Administrator. ");<br>    }<br>    else<br>    {<br>     loadDriver();<br>     hDevice = CreateFile("\\.\"DRV_NAME, GENERIC_WRITE | GENERIC_READ, FILE_SHARE_READ <br><br>| FILE_SHARE_WRITE,<br>          NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, NULL);<br>     if(hDevice == INVALID_HANDLE_VALUE)<br>     {<br>      //printf("Error loading kernel support driver! Make sure you are running <br><br>this as Administrator. ");<br>      AfxMessageBox("Error loading kernel support driver! Make sure you are <br><br>running this as Administrator. ");<br>     }<br>     else<br>     {<br>      AfxMessageBox("loading kernel support driver success");<br>     }<br>    }<br>   }<br>   cleanupDriver();<br>  }<br> }<br> <br> return hDevice;<br>}<br><br><br>//*********************************************************************************************<br>// Remove our kernel driver from memory<br>//<br>//*********************************************************************************************<br><br>void uninstallDriver(void)<br>{<br> char drvFullPath[MAX_PATH+1];<br> char *filePart;<br><br> ZeroMemory(drvFullPath, MAX_PATH);  <br> GetFullPathName(DRV_FILENAME, MAX_PATH, drvFullPath, &filePart);<br><br> HANDLE hFile = CreateFile(drvFullPath, GENERIC_READ, FILE_SHARE_READ, NULL, OPEN_EXISTING,<br>        FILE_ATTRIBUTE_NORMAL, 0);<br> if(hFile == INVALID_HANDLE_VALUE)<br> {<br>  //printf("Cannot find required driver file %s ", drvFullPath);<br>  AfxMessageBox("Cannot find required driver file ");<br>  return;<br> }<br> else<br> {<br>  CloseHandle(hFile);<br><br>  char sysDir[MAX_PATH + 1];<br>  GetSystemDirectory(sysDir, MAX_PATH);<br>  strncat(sysDir, "\drivers\"DRV_FILENAME, MAX_PATH);<br>  CopyFile(drvFullPath, sysDir, TRUE);<br><br>  if(!getLoadDriverPriv())<br>  {<br>   //printf("Error getting load driver privilege! ");<br>   AfxMessageBox("Error getting load driver privilege! ");<br>  }<br>  else<br>  {<br>   if(!setupRegistry())<br>   {<br>    //printf("Error setting driver registry keys! Make sure you are running this as <br><br>Administrator. ");<br>    AfxMessageBox("Error setting driver registry keys! Make sure you are running this as <br><br>Administrator. ");<br>   }<br>   else<br>   {<br>    if(unloadDriver())<br>     //printf("Support driver successfully unloaded. ");<br>     AfxMessageBox("Support driver successfully unloaded. ");<br>    else<br>     //printf("Unload support driver failed.  It is probably not loaded. ");<br>     AfxMessageBox("Unload support driver failed.  It is probably not loaded. ");<br>   }<br>  }<br>  cleanupDriver();<br> }<br>}<br><br><br><br><img src ="http://m.shnenglu.com/vfdff/aggbug/62358.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://m.shnenglu.com/vfdff/" target="_blank">vfdff</a> 2008-09-20 17:38 <a href="http://m.shnenglu.com/vfdff/archive/2008/09/20/VC_driver_program.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item></channel></rss> <footer> <div class="friendship-link"> <p>感谢您访问我们的网站,您可能还对以下资源感兴趣:</p> <a href="http://m.shnenglu.com/" title="精品视频久久久久">精品视频久久久久</a> <div class="friend-links"> </div> </div> </footer> <a href="http://www.aqbfrmi.cn" target="_blank">国产成人综合久久久久久</a>| <a href="http://www.kfak.cn" target="_blank">亚洲国产精品一区二区久久</a>| <a href="http://www.djl0320.cn" target="_blank">久久成人小视频</a>| <a href="http://www.foundxy.cn" target="_blank">精品多毛少妇人妻AV免费久久</a>| <a href="http://www.xcvcd.cn" target="_blank">久久人人爽人人人人爽AV</a>| <a href="http://www.qenw.cn" target="_blank">色欲综合久久躁天天躁蜜桃</a>| <a href="http://www.iido.org.cn" target="_blank">久久久久99精品成人片直播</a>| <a href="http://www.daidai360.cn" target="_blank">久久亚洲国产精品一区二区</a>| <a href="http://www.wzorg.cn" target="_blank">精品国产一区二区三区久久蜜臀</a>| <a href="http://www.agilespring.cn" target="_blank">欧美午夜A∨大片久久</a>| <a href="http://www.czqxj.cn" target="_blank">伊人久久大香线蕉综合影院首页</a>| <a href="http://www.wiak.cn" target="_blank">国产精品久久成人影院</a>| <a href="http://www.idhm.cn" target="_blank">久久久这里只有精品加勒比 </a>| <a href="http://www.xxxls.cn" target="_blank">亚洲中文字幕久久精品无码APP </a>| <a href="http://www.17714.com.cn" target="_blank">久久久久国产精品嫩草影院</a>| <a href="http://www.vocard.cn" target="_blank">国产一区二区久久久</a>| <a href="http://www.kinbay.cn" target="_blank">天天久久狠狠色综合</a>| <a href="http://www.hebhxjx.cn" target="_blank">亚洲愉拍99热成人精品热久久</a>| <a href="http://www.wannengsou.cn" target="_blank">99久久人妻无码精品系列</a>| <a href="http://www.vljp.cn" target="_blank">武侠古典久久婷婷狼人伊人</a>| <a href="http://www.yywhqy.cn" target="_blank">久久中文娱乐网</a>| <a href="http://www.swwpb.cn" target="_blank">亚洲精品白浆高清久久久久久 </a>| <a href="http://www.kxtravel.com.cn" target="_blank">久久精品国产秦先生</a>| <a href="http://www.lishuiqiao.cn" target="_blank">亚洲∧v久久久无码精品</a>| <a href="http://www.xvjw.cn" target="_blank">久久综合伊人77777麻豆</a>| <a href="http://www.geigi.cn" target="_blank">99久久国产综合精品成人影院</a>| <a href="http://www.yundali.cn" target="_blank">久久人做人爽一区二区三区 </a>| <a href="http://www.kqtao.cn" target="_blank">无码国内精品久久人妻蜜桃</a>| <a href="http://www.pewn.cn" target="_blank">久久天天躁狠狠躁夜夜2020老熟妇 </a>| <a href="http://www.hywsgc.cn" target="_blank">亚洲级αV无码毛片久久精品</a>| <a href="http://www.travain.cn" target="_blank">久久久久免费视频</a>| <a href="http://www.gzmxjc.cn" target="_blank">办公室久久精品</a>| <a href="http://www.yoyopj.cn" target="_blank">久久香蕉国产线看观看99</a>| <a href="http://www.0736auto.cn" target="_blank">精品久久8x国产免费观看</a>| <a href="http://www.9795315.cn" target="_blank">亚洲精品午夜国产VA久久成人</a>| <a href="http://www.gaohuirong.cn" target="_blank">无码任你躁久久久久久老妇</a>| <a href="http://www.rjlmd.cn" target="_blank">久久精品无码av</a>| <a href="http://www.ccka.cn" target="_blank">一本综合久久国产二区</a>| <a href="http://www.hezh.cn" target="_blank">中文成人无码精品久久久不卡 </a>| <a href="http://www.520jj.cn" target="_blank">国产精品久久久久久久人人看</a>| <a href="http://www.91jay.cn" target="_blank">一97日本道伊人久久综合影院</a>| <script> (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })(); </script> </body>