VS調(diào)試報(bào)錯(cuò)0xC0000005怎么辦? 0xc000041d/0xc0000005等錯(cuò)誤代碼解決辦法
早前微軟宣布在 Windows 11 24H2 版使用基于 IE 9 Chakra 引擎開發(fā)的 JScript9Legacy 腳本引擎替代系統(tǒng)原有的 JScript 腳本引擎,新版本提供更好的安全性,但可能也會(huì)降低兼容性導(dǎo)致部分軟件出現(xiàn)錯(cuò)誤。
例如在 Microsoft Visual Studio 2022 中嘗試在資源視圖中添加資源就可能導(dǎo)致 IDE 卡死或者崩潰重啟,檢查事件查看器記錄可以看到出錯(cuò)模塊為 jscript9Legacy.dll,錯(cuò)誤代碼為 0xc000041d 或 0xc0000005。
具體崩潰原因則是 Visual Studio 的資源管理器相關(guān)模塊依然依賴于 JScript 引擎,所以在微軟換成 JScript9Legacy 引擎后出現(xiàn)兼容性問題,導(dǎo)致 Visual Studio 卡死或者直接崩潰。

要解決這個(gè)問題也比較簡(jiǎn)單,只需要通過注冊(cè)表換回舊版引擎即可:
- 打開注冊(cè)表編輯器并導(dǎo)航至:HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\
- 在這里檢查是否有 Internet Explorer 項(xiàng),如果沒有則右鍵點(diǎn)擊 \Microsoft\ 選擇新建項(xiàng)并命名為 Internet Explorer
- 接著打開 \Internet Explorer\ 繼續(xù)新建項(xiàng)并重命名為 Main
- 右鍵點(diǎn)擊 \Main\ 選擇新建 DWORD32 位值并命名為 JScriptReplacement
- 最后雙擊 JScriptReplacement 將其鍵值修改為 0 保存 (如果已經(jīng)是 0 則不需要再修改)
通過以上操作后 Windows 11 24H2 的默認(rèn)腳本引擎被重新修改為 JScript.dll,此時(shí)諸如 Microsoft Visual Studio 等軟件應(yīng)該不會(huì)再因?yàn)槟_本引擎的問題發(fā)生崩潰。
在這里也提醒各位:
如果運(yùn)行其他軟件時(shí)彈出 Script Error 錯(cuò)誤彈窗,并且錯(cuò)誤來源顯示為 JavaScript runtime error,那么也是引擎導(dǎo)致的兼容性問題,此時(shí)也可以通過上面的步驟將引擎重新設(shè)置為 JScript 來解決問題。
錯(cuò)誤代碼0xc0000005的其他解決辦法
VS調(diào)試時(shí)遇到"0xC0000005:讀取位置時(shí)發(fā)生訪問沖突"問題時(shí),先別急去排除內(nèi)存,看看容易忽略的配置屬性。
一、配置屬性
1.windows程序:
- 1)C+±>預(yù)處理定義中,刪除_CONSOLE, 添加_WINDOWS.
- 2)鏈接器->系統(tǒng),將SubSystem設(shè)為Windows(/SUBSYSTEM:WINDOWS)
2.控制臺(tái)程序:
- 1)C+±>預(yù)處理定義中,刪除_WINDOWS, 添加_CONSOLE
- 2)鏈接器->系統(tǒng),將SubSystem設(shè)為CONSOLE(/SUBSYSTEM:CONSOLE)

產(chǎn)生"0xC0000005"的原因應(yīng)是程序運(yùn)行時(shí)找不到適當(dāng)?shù)娜肟诤瘮?shù)。
二、內(nèi)存問題
1.空指針和野指針的區(qū)別
- 空指針:賦為 NULL 值的指針被稱為空指針。
- 野指針:尚未初始化為任何值(包括NULL)的指針稱為野生指針。
2.已釋放內(nèi)存的訪問;釋放后的指針為什么還可以用?為什么指針釋放后要賦NULL?
int *ss=new int(10); delete ss; *ss=11; cout<<*ss; //結(jié)果為:11
delete只是命令系統(tǒng)把指針指向的堆空間回收,告訴計(jì)算機(jī)“這塊空間沒人在用,你可以使用了“,但指針依然指向原來的堆空間,所以delete一個(gè)指針后,要立刻把它賦值為nullptr或NULL。
3.內(nèi)存越界/內(nèi)存泄漏
- 1)定義指針的時(shí)候未初始化,指針指向的是一個(gè)隨機(jī)內(nèi)存空間。
- 2)分配到的內(nèi)存比實(shí)際上使用的內(nèi)存要小。
- 3)使用下標(biāo)訪問數(shù)組時(shí),下標(biāo)錯(cuò)誤。
三、WINDOWS系統(tǒng)的問題
詳細(xì)解決辦法請(qǐng)參考:Windows系統(tǒng)提示錯(cuò)誤代碼0xc0000005怎么解決?0xc0000005錯(cuò)誤修復(fù)方法
推薦閱讀:助力開發(fā)者迅速上手! Visual Studio Code推出Office加載項(xiàng)開發(fā)工具預(yù)覽版
相關(guān)文章

Visual Studio 2022 v17.14 第2個(gè)預(yù)覽版發(fā)布:附調(diào)用GPT-4o Copilot模型
微軟發(fā)布 Visual Studio 2022 v17.14 的第 2 個(gè)預(yù)覽版,開發(fā)者可以調(diào)用 GPT-4o Copilot 模型,補(bǔ)全或者注釋代碼,下面我們就來看看使用方法2025-03-14
助力開發(fā)者迅速上手! Visual Studio Code推出Office加載項(xiàng)開發(fā)工具預(yù)覽
這一工具包旨在為開發(fā)者提供便捷的加載項(xiàng)開發(fā)平臺(tái),尤其是那些希望僅通過manifest文件來開發(fā)XML格式加載項(xiàng)的開發(fā)者,詳細(xì)請(qǐng)看下文介紹2024-09-10
visual studio2017許可證過期只有退出visual studio選項(xiàng)怎么解決?
visual studio2017打開提示許可證過期,但是點(diǎn)擊檢查更新許可證也不行,該怎么辦呢?下面我們就來分享詳細(xì)的解決辦法2024-06-11
Visual Studio將支持Windows Update更新: 附自動(dòng)更新技巧
windows系統(tǒng)中,可以自動(dòng)更新Visual Studio,該怎么開啟和關(guān)閉自動(dòng)更新呢?詳細(xì)請(qǐng)看下文介紹2024-06-09
Visual Studio 2022 17.10 首個(gè)預(yù)覽版發(fā)布:改進(jìn) Copilot 等
微軟發(fā)布了最新的Visual Studio 17.10第一個(gè)預(yù)覽版,該預(yù)覽版更新重點(diǎn)是集成最新GitHub Copilot,提供開發(fā)者更多人工智能功能提升開發(fā)生產(chǎn)力,下面我們就來看看新增功能介2024-02-21
Visual Studio 202217.9 Preview 3更新發(fā)布 增強(qiáng)代碼搜索體驗(yàn)
微軟目前推出了 Visual Studio 2022 17.9 Preview 3 版本,原有的默認(rèn)代碼搜索功能也將獲得升級(jí),用戶可以得到“精確的文本匹配”,詳細(xì)請(qǐng)看下文介紹2024-01-23
VS2019中scanf函數(shù)莫名報(bào)錯(cuò)怎么辦 Visual Studio2019實(shí)用小操作介紹
相信很多小伙伴在第一次使用scanf函數(shù)時(shí)大概率會(huì)遇到系統(tǒng)報(bào)錯(cuò)的問題,提示:scanf這個(gè)函數(shù)或者變量可能不安全 ,考慮使用scanf_s替換,下面我們就來看看詳細(xì)的解決辦法2024-01-22
VS如何更改項(xiàng)目位置? Visual Studio設(shè)置項(xiàng)目位置的技巧
VS如何更改項(xiàng)目位置?不知道自己的項(xiàng)目位置,想要更改項(xiàng)目位置,該怎么操作呢?下面我們就來看看Visual Studio設(shè)置項(xiàng)目位置的技巧2023-12-22
Visual Studio 幾個(gè)超級(jí)實(shí)用但很少人知道的小技巧
Visual Studio中有一些常用的小技巧,有些朋友可能不太知道,我們總結(jié)了一下都放到文章中了,感興趣的朋友可以進(jìn)來看看哦2023-11-10
Visual Studio 17.7 Preview 4發(fā)布 帶改善擴(kuò)展插件管理器混亂問題
Visual Studio現(xiàn)有的擴(kuò)展插件管理器在信息顯示層面較為混亂,難以查看擴(kuò)展插件的評(píng)分及詳細(xì)信息,現(xiàn)在Visual Studio 17.7 Preview 4來全新擴(kuò)展插件管理器,詳細(xì)請(qǐng)看下文介2023-07-21





