藍(lán)屏代碼0x0000010D代表"WDF_VIOLATION",這表示在運(yùn)行Windows驅(qū)動(dòng)程序框架(WDF)時(shí)發(fā)生了一個(gè)違規(guī)操作。這可能是由于驅(qū)動(dòng)程序的錯(cuò)誤、不兼容的硬件或軟件問(wèn)題引起的。該錯(cuò)誤導(dǎo)致系統(tǒng)崩潰并顯示藍(lán)屏錯(cuò)誤。
要解決這個(gè)問(wèn)題,可以嘗試以下方法:
【資料圖】
方法一:禁用或卸載不必要的驅(qū)動(dòng)程序
檢查并禁用或卸載可能與問(wèn)題相關(guān)的不必要的驅(qū)動(dòng)程序,特別是第三方軟件安裝的驅(qū)動(dòng)程序。
方法二:運(yùn)行系統(tǒng)文件檢查工具(SFC)和磁盤(pán)掃描工具
運(yùn)行命令提示符并使用管理員權(quán)限運(yùn)行sfc /scannow命令來(lái)檢查和修復(fù)系統(tǒng)文件的一致性,同時(shí),也可以運(yùn)行磁盤(pán)掃描工具(如chkdsk命令)來(lái)檢查并修復(fù)磁盤(pán)上的錯(cuò)誤。
方法三:運(yùn)行系統(tǒng)文件檢查工具(SFC)
打開(kāi)命令提示符,并作為管理員運(yùn)行sfc /scannow命令,以檢查和修復(fù)系統(tǒng)文件的一致性。
方法四:使用一鍵修復(fù)工具助手(強(qiáng)烈推薦)
1、首先你的電腦必須下載與完成安裝完成快快藍(lán)屏修復(fù)助手。如果你還沒(méi)有安裝點(diǎn)擊下方鏈接下載。
下載地址:>>>快快藍(lán)屏修復(fù)助手<<<
提示:安裝路徑不要選擇C盤(pán),避免產(chǎn)生問(wèn)題造成損失。
2、找到你電腦中的快快藍(lán)屏修復(fù)助手,點(diǎn)擊進(jìn)入??吹绞醉?yè)后,點(diǎn)擊首頁(yè)一鍵掃描按鈕開(kāi)始掃描。等待幾分鐘,就能獲取你急切想要的結(jié)果。
3、掃描完成后會(huì)顯示電腦的所有藍(lán)屏記錄以及藍(lán)屏的詳細(xì)信息。
4、解決方案頁(yè)面顯示了導(dǎo)致該次藍(lán)屏的具體原因和解決方案,點(diǎn)擊右上角的一鍵修復(fù)進(jìn)行修復(fù)。
5、切記,當(dāng)修復(fù)完成之后我們還是需要重新啟動(dòng)計(jì)算機(jī)的。畢竟一切修復(fù)的結(jié)果,需要重新后,才能被系統(tǒng)認(rèn)可。
當(dāng)你完成重啟后,你電腦的藍(lán)屏問(wèn)題已經(jīng)基本解決了。相信小編,不要急需卸載快快藍(lán)屏修復(fù)助手。畢竟它強(qiáng)大的功能是你未來(lái)的一個(gè)保障,可以隨時(shí)隨地為你服務(wù),讓你再次遇到藍(lán)屏問(wèn)題不在抓狂。
其他相關(guān)信息:
檢查WDF_VIOLATION bug 的值為 0x0000010D。 這表示Kernel-Mode驅(qū)動(dòng)程序框架 (KMDF) 檢測(cè)到 Windows 在基于框架的驅(qū)動(dòng)程序中發(fā)現(xiàn)錯(cuò)誤。
WDF_VIOLATION參數(shù)
參數(shù) 1 指示 bug 檢查的特定錯(cuò)誤代碼。 保留參數(shù) 4。
參數(shù) 1 | 參數(shù) 2 | 參數(shù) 3 | 錯(cuò)誤消息的原因 |
---|---|---|---|
0x1 | 指向WDF_POWER_ROUTINE_TIMED_OUT_DATA結(jié)構(gòu)的指針 | 保留 | 基于框架的驅(qū)動(dòng)程序在電源操作期間超時(shí)。 這通常意味著設(shè)備堆棧未設(shè)置DO_POWER_PAGABLE位,并且驅(qū)動(dòng)程序在關(guān)閉分頁(yè)設(shè)備堆棧后嘗試了可分頁(yè)操作。 |
0x2 | 預(yù)留 | 預(yù)留 | 正在嘗試獲取當(dāng)前持有的鎖。 |
0x3 | WDFREQUEST 句柄 | 兩個(gè)緩沖區(qū)上保留的未完成引用數(shù) | Windows 驅(qū)動(dòng)程序框架驗(yàn)證程序遇到嚴(yán)重錯(cuò)誤。 具體而言,I/O 請(qǐng)求已完成,但無(wú)法刪除框架請(qǐng)求對(duì)象,因?yàn)榇嬖趯?duì)輸入緩沖區(qū)和/或輸出緩沖區(qū)的未完成引用。 |
0x4 | 保留 | 調(diào)用方地址 | NULL參數(shù)已傳遞給需要非 NULL值的函數(shù)。 |
0x5 | 傳入的句柄值 | 保留 | 錯(cuò)誤類(lèi)型的框架對(duì)象句柄已傳遞到框架對(duì)象方法。 |
0x6 | 請(qǐng)參閱下表。 | ||
0x7 | 框架對(duì)象的句柄 | 保留 | 驅(qū)動(dòng)程序嘗試通過(guò)調(diào)用 WdfObjectDereference刪除句柄而不是調(diào)用 WdfObjectDelete來(lái)錯(cuò)誤地刪除框架對(duì)象。 |
0x8 | DMA 事務(wù)對(duì)象的句柄 | 保留 | 在 DMA 事務(wù)對(duì)象未處于正確狀態(tài)時(shí)發(fā)生操作。 |
0x9 | 當(dāng)前未使用。 | ||
0xA | 指向WDF_QUEUE_FATAL_ERROR_DATA結(jié)構(gòu)的指針 | 保留 | 處理當(dāng)前位于隊(duì)列中的請(qǐng)求時(shí)發(fā)生嚴(yán)重錯(cuò)誤。 |
0xB | 請(qǐng)參閱下表。 | ||
0xC | WDFDEVICE 句柄 | 指向新 PnP IRP 的指針 | 當(dāng)驅(qū)動(dòng)程序正在處理另一個(gè)狀態(tài)更改 PnP IRP 時(shí),新的狀態(tài)更改 PnP IRP 到達(dá)。 |
0xD | WDFDEVICE 句柄 | 指向電源 IRP 的指針 | 設(shè)備的電源策略所有者收到了它未請(qǐng)求的電源 IRP。 可能有多個(gè)電源策略所有者,但只允許一個(gè)。 KMDF 驅(qū)動(dòng)程序可以通過(guò)調(diào)用 WdfDeviceInitSetPowerPolicyOwnership來(lái)更改電源策略所有權(quán)。 |
0xE | 調(diào)用事件回調(diào)函數(shù)的 IRQL。 | 事件回調(diào)函數(shù)返回的 IRQL。 | 事件回調(diào)函數(shù)未在調(diào)用它的同一 IRQL 處返回。 回調(diào)函數(shù)直接或間接 (更改 IRQL,例如,通過(guò)獲取自旋鎖(將 IRQL 提升為DISPATCH_LEVEL,但不釋放) 旋轉(zhuǎn)鎖)。 |
0xF | 事件回調(diào)函數(shù)的地址。 | 保留 | 事件回調(diào)函數(shù)已進(jìn)入關(guān)鍵區(qū)域,但在返回之前未離開(kāi)關(guān)鍵區(qū)域。 |
參數(shù) 1 等于 0x6
如果參數(shù) 1 等于 0x6,則在處理 WDF 請(qǐng)求時(shí)出錯(cuò)。 在這種情況下,參數(shù) 2 進(jìn)一步指定已發(fā)生的錯(cuò)誤類(lèi)型,如枚舉WDF_REQUEST_FATAL_ERROR所定義。
參數(shù) 2 | 參數(shù) 3 | 錯(cuò)誤消息的原因 |
---|---|---|
0x1 | IRP 的地址 | 沒(méi)有其他 I/O 堆棧位置可用于設(shè)置基礎(chǔ) IRP 的格式。 |
0x2 | WDF 請(qǐng)求句柄值 | 嘗試格式化不包含 IRP 的框架請(qǐng)求對(duì)象。 |
0x3 | WDF 請(qǐng)求句柄值 | 驅(qū)動(dòng)程序嘗試發(fā)送已發(fā)送到 I/O 目標(biāo)的框架請(qǐng)求。 |
0x4 | 指向WDR_REQUEST_FATAL_ERROR_INFORMATION_LENGTH_MISMATCH_DATA結(jié)構(gòu)的指針,該結(jié)構(gòu)包含指向 IRP 的指針、WDF 請(qǐng)求句柄值、IRP 主函數(shù)以及嘗試寫(xiě)入的字節(jié)數(shù) | 驅(qū)動(dòng)程序已完成框架請(qǐng)求,但向輸出緩沖區(qū)寫(xiě)入的字節(jié)數(shù)超過(guò)了 IRP 中指定的字節(jié)數(shù)。 |
參數(shù) 1 等于 0xB
如果參數(shù) 1 等于 0xB,則嘗試獲取或釋放鎖無(wú)效。 在這種情況下,參數(shù) 3 進(jìn)一步指定已發(fā)生的錯(cuò)誤。
參數(shù) 2 | 參數(shù) 3 | 錯(cuò)誤消息的原因 |
---|---|---|
句柄值 | 0x0 | 傳遞給 WdfObjectAcquireLock或 WdfObjectReleaseLock的句柄表示不支持同步鎖的對(duì)象。 |
WDF 旋轉(zhuǎn)鎖手柄 | 0x1 | 未獲取旋轉(zhuǎn)鎖的線程正在釋放該鎖。 |
原因
有關(guān)原因的說(shuō)明,請(qǐng)參閱參數(shù)部分中每個(gè)代碼的說(shuō)明。
解決方法
!analyze調(diào)試擴(kuò)展顯示有關(guān) bug 檢查的信息,并有助于收集信息,例如錯(cuò)誤代碼模塊。
通常,WDF 轉(zhuǎn)儲(chǔ)文件會(huì)生成有關(guān)導(dǎo)致此 bug 檢查的驅(qū)動(dòng)程序的進(jìn)一步信息。 使用此命令查看日志文件。
kd> !wdfkd.wdflogdump
如果參數(shù) 1 等于 0x2,請(qǐng)檢查調(diào)用方堆棧以確定有問(wèn)題的鎖。
如果參數(shù) 1 等于 0x3,驅(qū)動(dòng)程序Kernel-Mode驅(qū)動(dòng)程序框架錯(cuò)誤日志將包含有關(guān)未完成引用的詳細(xì)信息。
如果參數(shù) 1 等于 0x4,請(qǐng)使用參數(shù) 3值為的 ln 調(diào)試器命令作為其參數(shù),以確定哪個(gè)函數(shù)需要非 NULL參數(shù)。
如果參數(shù) 1 等于 0x7,請(qǐng)使用 !wdfkd.wdfhandle參數(shù) 2擴(kuò)展命令來(lái)確定句柄類(lèi)型。
如果參數(shù) 1 等于 0xA,則WDF_QUEUE_FATAL_ERROR_DATA結(jié)構(gòu)將指示有問(wèn)題的請(qǐng)求或隊(duì)列句柄。 它還將指示 NTSTATUS(如果不是STATUS_SUCCESS)(如果可用)。
標(biāo)簽: