锘??xml version="1.0" encoding="utf-8" standalone="yes"?>亚洲一区二区高清,欧美日本不卡视频,亚洲欧美电影在线观看http://www.shnenglu.com/vfdff/zh-cnSun, 24 Aug 2025 05:31:06 GMTSun, 24 Aug 2025 05:31:06 GMT60C++涓殑mutable鍜寁olatilehttp://www.shnenglu.com/vfdff/archive/2020/11/21/217512.htmlvfdffvfdffSat, 21 Nov 2020 03:25:00 GMThttp://www.shnenglu.com/vfdff/archive/2020/11/21/217512.htmlhttp://www.shnenglu.com/vfdff/comments/217512.htmlhttp://www.shnenglu.com/vfdff/archive/2020/11/21/217512.html#Feedback0http://www.shnenglu.com/vfdff/comments/commentRss/217512.htmlhttp://www.shnenglu.com/vfdff/services/trackbacks/217512.html

vfdff 2020-11-21 11:25 鍙戣〃璇勮
]]>
VC涓姞杞介┍鍔ㄧ▼搴?/title><link>http://www.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://www.shnenglu.com/vfdff/archive/2008/09/20/VC_driver_program.html</guid><wfw:comment>http://www.shnenglu.com/vfdff/comments/62358.html</wfw:comment><comments>http://www.shnenglu.com/vfdff/archive/2008/09/20/VC_driver_program.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.shnenglu.com/vfdff/comments/commentRss/62358.html</wfw:commentRss><trackback:ping>http://www.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://www.shnenglu.com/vfdff/aggbug/62358.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.shnenglu.com/vfdff/" target="_blank">vfdff</a> 2008-09-20 17:38 <a href="http://www.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://www.shnenglu.com/" title="精品视频久久久久">精品视频久久久久</a> <div class="friend-links"> </div> </div> </footer> <a href="http://www.suec.net.cn" target="_blank">久久久久久久综合狠狠综合</a>| <a href="http://www.wfmo.cn" target="_blank">国产精品久久永久免费</a>| <a href="http://www.xbxb1314.cn" target="_blank">国产精品久久久久久久app </a>| <a href="http://www.sunriseydy.cn" target="_blank">一本色道久久HEZYO无码</a>| <a href="http://www.kygg.net.cn" target="_blank">亚洲精品午夜国产VA久久成人</a>| <a href="http://www.gotovision.com.cn" target="_blank">亚洲va中文字幕无码久久不卡</a>| <a href="http://www.fridc.cn" target="_blank">久久免费国产精品一区二区</a>| <a href="http://www.maishuhua.cn" target="_blank">性做久久久久久免费观看</a>| <a href="http://www.ru87.cn" target="_blank">国内精品久久久久影院优</a>| <a href="http://www.k2938.cn" target="_blank">精品久久人人做人人爽综合</a>| <a href="http://www.shaosang.cn" target="_blank">99久久无色码中文字幕人妻</a>| <a href="http://www.par354.cn" target="_blank">国产高潮国产高潮久久久91 </a>| <a href="http://www.9dn.com.cn" target="_blank">青青草原精品99久久精品66</a>| <a href="http://www.3393795.cn" target="_blank">亚洲一区中文字幕久久</a>| <a href="http://www.gdkm2.cn" target="_blank">久久99精品久久久大学生</a>| <a href="http://www.galrw.cn" target="_blank">久久99精品久久久久久齐齐</a>| <a href="http://www.jijijian.cn" target="_blank">久久久精品人妻一区二区三区蜜桃 </a>| <a href="http://www.iaftvc.cn" target="_blank">九九热久久免费视频</a>| <a href="http://www.epcinet.cn" target="_blank">2020久久精品国产免费</a>| <a href="http://www.taokecai.cn" target="_blank">亚洲午夜久久久久久久久电影网 </a>| <a href="http://www.whpcjs.cn" target="_blank">久久亚洲AV成人无码</a>| <a href="http://www.forexpo.cn" target="_blank">91久久精品视频</a>| <a href="http://www.qxmsv.cn" target="_blank">99久久99这里只有免费费精品</a>| <a href="http://www.566wan.cn" target="_blank">香蕉久久久久久狠狠色</a>| <a href="http://www.mxcqsf.cn" target="_blank">日韩欧美亚洲国产精品字幕久久久</a>| <a href="http://www.liuxuehanguo.cn" target="_blank">国产成人综合久久综合</a>| <a href="http://www.01pz.cn" target="_blank">久久精品水蜜桃av综合天堂</a>| <a href="http://www.sobseo.cn" target="_blank">久久精品国产AV一区二区三区</a>| <a href="http://www.shopzoom.cn" target="_blank">久久这里有精品视频</a>| <a href="http://www.108bto.cn" target="_blank">久久精品国产99久久久香蕉</a>| <a href="http://www.usp888.cn" target="_blank">久久中文字幕一区二区</a>| <a href="http://www.mrksl.cn" target="_blank">久久婷婷国产麻豆91天堂</a>| <a href="http://www.51uhq.cn" target="_blank">久久99国产精品二区不卡</a>| <a href="http://www.kunow.cn" target="_blank">精品九九久久国内精品</a>| <a href="http://www.22980000.cn" target="_blank">97热久久免费频精品99</a>| <a href="http://www.jj123.com.cn" target="_blank">国产午夜精品久久久久免费视</a>| <a href="http://www.nyeas.cn" target="_blank">久久国产精品无码一区二区三区 </a>| <a href="http://www.ywmhwatch.cn" target="_blank">久久久精品人妻一区二区三区蜜桃</a>| <a href="http://www.woai858.cn" target="_blank">午夜精品久久久久久久无码</a>| <a href="http://www.www008tt.cn" target="_blank">天天影视色香欲综合久久</a>| <a href="http://www.qysf88.cn" target="_blank">久久久国产视频</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>