锘??xml version="1.0" encoding="utf-8" standalone="yes"?>日本亚洲色大成网站WWW久久 ,无码日韩人妻精品久久蜜桃 ,蜜臀久久99精品久久久久久小说http://www.shnenglu.com/vfdff/zh-cnWed, 07 May 2025 13:53:59 GMTWed, 07 May 2025 13:53:59 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.rljps.cn" target="_blank">亚洲国产精久久久久久久</a>| <a href="http://www.zqbd.com.cn" target="_blank">国产精品久久久久免费a∨</a>| <a href="http://www.ttfnp.cn" target="_blank">久久夜色精品国产网站</a>| <a href="http://www.ppxp.com.cn" target="_blank">国内精品久久久久影院优 </a>| <a href="http://www.shuffley.cn" target="_blank">欧美色综合久久久久久</a>| <a href="http://www.skgv0713.cn" target="_blank">热综合一本伊人久久精品</a>| <a href="http://www.jituansms.cn" target="_blank">久久国产色av免费看</a>| <a href="http://www.h8443.cn" target="_blank">久久精品无码午夜福利理论片</a>| <a href="http://www.swxzsoft.cn" target="_blank">久久精品国产免费</a>| <a href="http://www.fandele.cn" target="_blank">久久天天婷婷五月俺也去</a>| <a href="http://www.ithaiyang.com.cn" target="_blank">久久精品国产精品亚洲毛片</a>| <a href="http://www.caifu580.cn" target="_blank">办公室久久精品</a>| <a href="http://www.shidaqizhong.cn" target="_blank">亚洲国产精品久久电影欧美</a>| <a href="http://www.rainbows.net.cn" target="_blank">久久久久久综合一区中文字幕 </a>| <a href="http://www.abcvi.cn" target="_blank">久久国产精品一区二区</a>| <a href="http://www.cngit13.cn" target="_blank">亚洲午夜无码AV毛片久久</a>| <a href="http://www.cn-trip.cn" target="_blank">99久久成人国产精品免费 </a>| <a href="http://www.9978217.cn" target="_blank">久久久受www免费人成</a>| <a href="http://www.tydls.cn" target="_blank">亚洲精品乱码久久久久久蜜桃不卡</a>| <a href="http://www.sglshoes.cn" target="_blank">7国产欧美日韩综合天堂中文久久久久</a>| <a href="http://www.netbirds.cn" target="_blank">久久人人爽人人爽人人片AV东京热</a>| <a href="http://www.bodycode.net.cn" target="_blank">A级毛片无码久久精品免费</a>| <a href="http://www.umw.net.cn" target="_blank">久久精品国产只有精品66</a>| <a href="http://www.qiaoyishiqy6.com.cn" target="_blank">久久亚洲中文字幕精品有坂深雪 </a>| <a href="http://www.geidang.cn" target="_blank">91久久精品电影</a>| <a href="http://www.tonyifu.cn" target="_blank">久久久久亚洲av无码专区导航</a>| <a href="http://www.ozwo.cn" target="_blank">亚洲精品乱码久久久久久不卡</a>| <a href="http://www.seomajor.cn" target="_blank">精品久久久久久成人AV</a>| <a href="http://www.psia.cn" target="_blank">久久香综合精品久久伊人</a>| <a href="http://www.huishou399.cn" target="_blank">国产精品久久久久a影院</a>| <a href="http://www.barf1.com.cn" target="_blank">久久久久人妻一区精品果冻</a>| <a href="http://www.zhougong.net.cn" target="_blank">久久不射电影网</a>| <a href="http://www.w4749.cn" target="_blank">99久久精品国内</a>| <a href="http://www.pocoho.cn" target="_blank">久久福利青草精品资源站</a>| <a href="http://www.bethesdagroup.cn" target="_blank">伊人久久大香线蕉综合Av </a>| <a href="http://www.lcvy.cn" target="_blank">精品久久久久久无码人妻蜜桃</a>| <a href="http://www.zhunsan.cn" target="_blank">99久久无码一区人妻a黑</a>| <a href="http://www.shishanfz.cn" target="_blank">欧美丰满熟妇BBB久久久</a>| <a href="http://www.inconfont.cn" target="_blank">人妻少妇久久中文字幕一区二区</a>| <a href="http://www.zzcjw.cn" target="_blank">久久精品青青草原伊人</a>| <a href="http://www.ebuxy.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>