电脑蓝屏网卡驱动掉了 win10网卡驱动蓝屏-淘姐妹-

{site_name}

{site_name}

🌜 搜索

电脑蓝屏网卡驱动掉了 win10网卡驱动蓝屏

▥ 𝄐 0
<br><p>你好</p><p>你说的这种情况,一般都是由 系统软件、内存、硬盘引起的。</p><p>1 电脑不心装上了恶意软件,或上网时产生了恶意程序,建议用360 卫士 、金山卫士等软件,清理垃圾,查杀恶意软件,完成后重启电脑,就可能解决。实在不行,重装,还原过系统,可以解决软件引起的问题。</p><p>2 如果不能进入系统,可以开机后 到系统选择那里 按f8 选 起作用的最后一次正确配置(可以解决因驱动装错造成的错误)和带网络连接安全模式(进去后是有网络的,再用360软件弄下),可能就可以修复。</p><p>3 点 开始菜单 运行 输入 cmd 回车,在命令提示符下输入</p><p>for %1 in (%windir%system32*.dll) do regsvr32.exe /s %1 然后 回车。然后让他运行完,应该就可能解决。</p><p>4 最近电脑中毒、安装了不稳定的软件、等,建议全盘杀毒,卸了那个引发问题的软件,重新安装其他 版本,就可能解决. 再不行,重新装过系统就ok.</p><p>5 电脑机箱里面内存条进灰尘,拆开机箱,拆下内存条,清洁下内存金手指,重新装回去,就可能可以了。(c【【微信】】总结的,旧电脑经常出现这样的问题)</p><p>6 电脑用久了内存坏、买到水货内存、多条内存一起用不兼容等,建议更换内存即可能解决。</p><p>7 很多时候由于系统和显卡驱动的兼容性不好,也会出现这样的错误,建议你换个其他版本的显卡驱动安装,或换个其他版本的系统安装。</p><p>8 电脑用久了,硬盘坏,重新分区安装系统可以修复逻辑坏道,还是不行,那就到了该换硬盘的时候了,换个硬盘就可以解决。</p><p>硬件方面的问题,如果你不专业,建议拿到电脑店去测试,测试好了讲好价再换</p> <br><br><h1 style="font-size: 38px;color: #4d4f53;"> 怎样才能让电脑蓝屏</h1><br><p>一、蓝屏概述</p> <p>当系统发生了非常严重的错误时&#xff0c;系统会以蓝屏的形式停止工作。一般驱动程序中如果出现了空指针等错误&#xff0c;都有可能引发蓝屏。我们可以编写驱动程序实现一个蓝屏炸弹。</p> <p>?</p> <p>二、环境搭建</p> <p>编译驱动程序需要大量的头文件、库文件。这些文件并没有附带在【【微信】】中。因此&#xff0c;如果需要编写驱动程序&#xff0c;需要先下载安装Windows Dri【【微信】】(即DDK)。下载地址&#xff1a;Windows Dri【【微信】】.1.0?下载后用虚拟光驱加载安装。</p> <p>?</p> <p>三、编写驱动程序</p> <p>我从《<span>Windows驱动开发技术详解》摘录了一段代码&#xff0c;贴在下面。</span></p> <p><span>Driver.h</span></p> <p><span><textarea> #【【微信】】#ifdef __cplusplus extern &#34;C&#34; { #endif #include &lt;NTDDK.h&gt; #ifdef __cplusplus } #endif #define PAGEDCODE code_seg(&#34;PAGE&#34;) #define LOCKEDCODE code_seg() #define INITCODE code_seg(&#34;INIT&#34;)#define PAGEDDATA data_seg(&#34;PAGE&#34;) #define LOCKEDDATA data_seg() #define INITDATA data_seg(&#34;INIT&#34;)#define arraysize(p) (sizeof(p)/sizeof((p)[0]))typedef struct _DEVICE_EXTENSION {PDE【【微信】】 【【微信】】;UNICODE_STRING ustrDe【【微信】】; //设备名称【【微信】】kName; //符号链接名 } DEVICE_EXTENSION, *PDEVICE_EXTENSION;// 函数声明NTSTATUS CreateDevice (IN PDRIVER_OBJECT pDriverObject); 【【微信】】 (IN PDRIVER_OBJECT pDriverObject); NTSTATUS HelloDDKDispatchRoutine(IN PDE【【微信】】,IN PIRP pIrp);</textarea> </span></p> <p>?</p> <p><span>Driver.cpp</span></p> <p><span><textarea>#include &#34;Driver.h&#34; #pragma INITCODE extern &#34;C&#34; NTSTATUS Dri【【微信】】 (IN PDRIVER_OBJECT pDriverObject,IN PUNICODE_STRING pRegistryPath) {NTSTATUS status;KdPrint((&#34;Enter Dri【【微信】】/n&#34;));KeBugCheckEx(0x00000000, 0x12345678, 0x87654321, 0x11223344, 0x55667788);//注册其他驱动调用函数入口pDriverObject-&gt;Dri【【微信】】 &#61; 【【淘密令】】;pDriverObject-&gt;MajorFunction[IRP_MJ_CREATE] &#61; HelloDDKDispatchRoutine;pDriverObject-&gt;MajorFunction[IRP_MJ_CLOSE] &#61; HelloDDKDispatchRoutine;pDriverObject-&gt;MajorFunction[IRP_MJ_WRITE] &#61; HelloDDKDispatchRoutine;pDriverObject-&gt;MajorFunction[IRP_MJ_READ] &#61; HelloDDKDispatchRoutine;//创建驱动设备对象status &#61; CreateDevice(pDriverObject);KdPrint((&#34;Dri【【微信】】 end/n&#34;));return status; } #pragma INITCODE NTSTATUS CreateDevice (IN PDRIVER_OBJECT pDriverObject) {NTSTATUS status;PDE【【微信】】;PDE【【微信】】t;//创建设备名称UNICODE_STRING devName;【【微信】】(&devName,L&#34;//Device//My【【微信】】&#34;);//创建设备status &#61; IoCreateDevice( pDriverObject, sizeof(DEVICE_EXTENSION),&(UNICODE_STRING)devName,【【微信】】,0, TRUE,&pDevObj );if (!【【微信】】(status))return status;pDevObj-&gt;Flags |&#61; 【【微信】】;pDevExt &#61; (PDEVICE_EXTENSION)pDevObj-&gt;【【微信】】;pDevExt-&gt;【【微信】】 &#61; pDevObj;pDevExt-&gt;ustrDe【【微信】】 &#61; devName;//创建符号链接【【微信】】kName;【【微信】】(&symLinkName,L&#34;////HelloDDK&#34;);pDevExt-&gt;【【微信】】 &#61; symLinkName;status &#61; IoCreateSymbolicLink( &symLinkName,&devName );if (!【【微信】】(status)) {【【微信】】( pDevObj );return status;}return STATUS_SUCCESS; } #pragma PAGEDCODE 【【微信】】 (IN PDRIVER_OBJECT pDriverObject) {PDE【【微信】】 pNextObj;KdPrint((&#34;Enter Dri【【微信】】/n&#34;));pNextObj &#61; pDriverObject-&gt;DeviceObject;while (pNextObj !&#61; NULL) {PDE【【微信】】t &#61; (PDE【【微信】】extObj-&gt;【【微信】】;//删除符号链接【【微信】】ame &#61; pDevExt-&gt;【【微信】】;IoDeleteSymbolicLink(&pLinkName);pNextObj &#61; pNextObj-&gt;NextDevice;【【微信】】( pDevExt-&gt;【【微信】】 );} } #【【微信】】TUS HelloDDKDispatchRoutine(IN PDE【【微信】】,IN PIRP pIrp) {KdPrint((&#34;Enter HelloDDKDispatchRoutine/n&#34;));NTSTATUS status &#61; STATUS_SUCCESS;// 完成IRPpIrp-&gt;IoStatus.Status &#61; status;pIrp-&gt;IoStatus.Information &#61; 0; // bytes xferedIoCompleteRequest( pIrp, 【【微信】】 );KdPrint((&#34;Lea【【微信】】utine/n&#34;));return status; }</textarea> </span></p> <p><span>蓝屏是由KeBugCheck或KeBugCheckEx这两个函数引发的。这两个函数的原型如下&#xff1a;</span></p> <p><span><textarea>【【微信】】(IN ULONG BugCheckCode); 【【微信】】Ex(IN ULONG BugCheckCode,IN ULONG_PTR BugCheckParameter1,IN ULONG_PTR BugCheckParameter2,IN ULONG_PTR BugCheckParameter3,IN ULONG_PTR BugCheckParameter4);</textarea> </span></p> <p><span>其中KeBugCheckEx函数的第一个参数和KeBugCheck中的参数是一样的。关于这些参数&#xff0c;从下面一张蓝屏的图片中就能看出其作用了</span><span>。</span></p> <p>?</p> <p><span>四、编译</span></p> <p><span>打开开始菜单&#xff0c;找到DDK的目录&#xff0c;展开Build En【【微信】】&#xff0c;选择与你电脑符合的编译环境。比如我的电脑是 Windows 【【微信】】。注意&#xff0c;有两个版本Checked和Free&#xff0c;类似与VC&#43;&#43;中的Debug和Release版本。这里我们选择Free&#xff0c;可以去掉所有的调试符号&#xff0c;减小代码的文件尺寸。</span></p> <p><span>在编译之前&#xff0c;我们需要准备两个文件&#xff0c;【【微信】】和Sources</span></p> <p><span>【【微信】】只需一行&#xff1a;</span></p> <p><span>!INCLUDE $(NTMAKEENV)/【【微信】】.def</span></p> <p><span>继承DDK默认配置</span></p> <p><span>而Sources文件需要指明文件类型以及相关包含文件的路径</span></p> <p><span><textarea>TARGETNAME&#61;HelloDDK TARGETTYPE&#61;DRI【【微信】】&#61;OBJINCLUDES&#61;$(BASEDIR)/inc;/$(BASEDIR)/inc/ddk;/SOURCES&#61;Driver.cpp/</textarea> </span></p> <p><span>有了这些文件&#xff0c;我们就可以开始编译驱动程序了。</span></p> <p><span>在编译环境的命令行窗口中&#xff0c;进入你存放源代码的目录&#xff0c;并执行build命令。如果编译成功的话你可以在当前目录下看到一个新的文件夹&#xff0c;进入最里层&#xff0c;你就能找到HelloDDK.sys这个驱动程序了。</span></p> <p>?</p> <p><span>五、测试</span></p> <p><span>由于这个驱动程序的作用是让电脑蓝屏&#xff0c;尽管并不会对你的电脑造成什么损害&#xff0c;但是在测试前请务必保存好你正在工作的文档&#xff0c;退出所有程序。电脑蓝屏了以后&#xff0c;你就只能重启了。</span></p> <p><span>驱动程序不像应用程序那样可以直接运行。因此我们还需要一个加载程序来加载驱动程序。限于篇幅&#xff0c;本文对此不展开详细讨论。一下仅给出程序代码&#xff0c;同样来自《<span>Windows驱动开发技术详解》一书。</span></span></p> <p><span><span><textarea>#include &lt;windows.h&gt; #include &lt;winsvc.h&gt; #include &lt;conio.h&gt; #include &lt;stdio.h&gt;#define DRI【【微信】】 &#34;HelloDDK&#34; #define DRI【【微信】】 &#34;HelloDDK.sys&#34;//装载NT驱动程序 BOOL LoadNTDriver(char* lpszDriverName,char* lpszDri【【微信】】) {char szDri【【微信】】[256];//得到完整的驱动路径GetFullPathName(lpszDri【【微信】】, 256, szDri【【微信】】, NULL);【【微信】】 &#61; FALSE;SC_HANDLE hServiceMgr&#61;NULL;//SCM管理器的句柄SC_HANDLE hServiceDDK&#61;NULL;//NT驱动程序的服务句柄//打开服务控制管理器hServiceMgr &#61; OpenSCManager( NULL, NULL, SC_MANAGER_ALL_ACCESS );if( hServiceMgr &#61;&#61; NULL ) {//OpenSCManager失败printf( &#34;OpenSCManager() Faild %d ! /n&#34;, GetLastError() );bRet &#61; FALSE;goto BeforeLeave;}else{//OpenSCManager成功printf( &#34;OpenSCManager() ok ! /n&#34; ); }//创建驱动所对应的服务hServiceDDK &#61; CreateService( hServiceMgr,lpszDriverName, //驱动程序的在注册表中的名字 lpszDriverName, // 注册表驱动程序的 DisplayName 值 SER【【微信】】, // 加载驱动程序的访问权限 SER【【微信】】,// 表示加载的服务是驱动程序 SER【【微信】】, // 注册表驱动程序的 Start 值 SER【【微信】】, // 注册表驱动程序的 ErrorControl 值 szDri【【微信】】, // 注册表驱动程序的 ImagePath 值 NULL, NULL, NULL, NULL, NULL); DWORD dwRtn;//判断服务是否失败if( hServiceDDK &#61;&#61; NULL ) { dwRtn &#61; GetLastError();if( dwRtn !&#61; ERROR_IO_PENDING && dwRtn !&#61; ERROR_SER【【微信】】 ) { //由于其他原因创建服务失败printf( &#34;CrateService() Faild %d ! /n&#34;, dwRtn ); bRet &#61; FALSE;goto BeforeLeave;} else {//服务创建失败&#xff0c;是由于服务已经创立过printf( &#34;CrateService() 【【微信】】PENDING or ERROR_SER【【微信】】! /n&#34; ); }// 驱动程序已经加载&#xff0c;只需要打开 hServiceDDK &#61; 【【淘密令】】( hServiceMgr, lpszDriverName, SER【【微信】】 ); if( hServiceDDK &#61;&#61; NULL ) {//如果打开服务也失败&#xff0c;则意味错误dwRtn &#61; GetLastError(); printf( &#34;【【淘密令】】() Faild %d ! /n&#34;, dwRtn ); bRet &#61; FALSE;goto BeforeLeave;} else {printf( &#34;【【淘密令】】() ok ! /n&#34; );}} else {printf( &#34;CrateService() ok ! /n&#34; );}//开启此项服务bRet&#61; StartService( hServiceDDK, NULL, NULL ); if( !bRet ) { DWORD dwRtn &#61; GetLastError(); if( dwRtn !&#61; ERROR_IO_PENDING && dwRtn !&#61; ERROR_SER【【微信】】 ) { printf( &#34;StartService() Faild %d ! /n&#34;, dwRtn ); bRet &#61; FALSE;goto BeforeLeave;} else { if( dwRtn &#61;&#61; ERROR_IO_PENDING ) { //设备被挂住printf( &#34;StartService() 【【微信】】G ! /n&#34;);bRet &#61; FALSE;goto BeforeLeave;} else { //服务已经开启printf( &#34;StartService() Faild ERROR_SER【【微信】】 ! /n&#34;);bRet &#61; TRUE;goto BeforeLeave;} } }bRet &#61; TRUE; //离开前关闭句柄 BeforeLeave:if(hServiceDDK){CloseServiceHandle(hServiceDDK);}if(hServiceMgr){CloseServiceHandle(hServiceMgr);}return bRet; } //卸载驱动程序 BOOL UnloadNTDriver( char * 【【微信】】 ) {【【微信】】 &#61; FALSE;SC_HANDLE hServiceMgr&#61;NULL;//SCM管理器的句柄SC_HANDLE hServiceDDK&#61;NULL;//NT驱动程序的服务句柄SER【【微信】】;//打开SCM管理器hServiceMgr &#61; OpenSCManager( NULL, NULL, SC_MANAGER_ALL_ACCESS ); if( hServiceMgr &#61;&#61; NULL ) {//带开SCM管理器失败printf( &#34;OpenSCManager() Faild %d ! /n&#34;, GetLastError() ); bRet &#61; FALSE;goto BeforeLeave;} else {//带开SCM管理器失败成功printf( &#34;OpenSCManager() ok ! /n&#34; ); }//打开驱动所对应的服务hServiceDDK &#61; 【【淘密令】】( hServiceMgr, 【【微信】】, SER【【微信】】 ); if( hServiceDDK &#61;&#61; NULL ) {//打开驱动所对应的服务失败printf( &#34;【【淘密令】】() Faild %d ! /n&#34;, GetLastError() ); bRet &#61; FALSE;goto BeforeLeave;} else { printf( &#34;【【淘密令】】() ok ! /n&#34; ); } //停止驱动程序&#xff0c;如果停止失败&#xff0c;只有重新启动才能&#xff0c;再动态加载。 if( !【【微信】】( hServiceDDK, SERVICE_CONTROL_STOP , &SvrSta ) ) { printf( &#34;【【微信】】() Faild %d !/n&#34;, GetLastError() ); } else {//打开驱动所对应的失败printf( &#34;【【微信】】() ok !/n&#34; ); } //动态卸载驱动程序。 if( !DeleteService( hServiceDDK ) ) {//卸载失败printf( &#34;D【【微信】】() Faild %d !/n&#34;, GetLastError() ); } else { //卸载成功printf( &#34;DelServer:【【微信】】() ok !/n&#34; ); } bRet &#61; TRUE; BeforeLeave: //离开前关闭打开的句柄if(hServiceDDK){CloseServiceHandle(hServiceDDK);}if(hServiceMgr){CloseServiceHandle(hServiceMgr);}return bRet; } 【【微信】】() {//测试驱动程序 HANDLE hDevice &#61; 【【微信】】(&#34;https://www.ngui.cc/zz//HelloDDK&#34;, GENERIC_WRITE | GENERIC_READ, 0, NULL, OPEN_EXISTING, 0, NULL); if( hDevice !&#61; 【【微信】】 ) {printf( &#34;Create Device ok ! /n&#34; ); }else {printf( &#34;Create De【【微信】】 ! /n&#34;, GetLastError() ); }CloseHandle( hDevice ); } 【【微信】】t argc, char* argv[]) {//加载驱动【【微信】】 &#61; LoadNTDriver(DRI【【微信】】,DRI【【微信】】);if (!bRet){printf(&#34;LoadNTDri【【微信】】/n&#34;);return 0;}//加载成功printf( &#34;press any to create device!/n&#34; ); getch(); TestDriver();//这时候你可以通过注册表&#xff0c;或其他查看符号连接的软件验证。 printf( &#34;press any to unload the driver!/n&#34; ); getch(); //卸载驱动UnloadNTDriver(DRI【【微信】】);if (!bRet){printf(&#34;UnloadNTDri【【微信】】/n&#34;);return 0;}return 0; } </textarea> </span></span></p> <p><span><span>将此程序编译后和驱动程序放在同一个目录。运行即可蓝屏。</span></span></p> <p><span><span>看到那湛蓝的屏幕了没&#xff1f;重新启动吧~&#xff08;事实上如果蓝屏了&#xff0c;你是看不到这句话的……&#xff09;</span></span></p>