หลังจากติดตั้งใหม่ของ Visual Studio 2017 ฉันพยายามเรียกใช้. NET Core Web project และเมื่อพยายามเรียกใช้บน Chrome ฉันได้รับข้อผิดพลาดนี้:
ไม่สามารถเริ่มโปรแกรมการดำเนินการไม่ถูกกฎหมายในสถานะปัจจุบัน
หลังจากติดตั้งใหม่ของ Visual Studio 2017 ฉันพยายามเรียกใช้. NET Core Web project และเมื่อพยายามเรียกใช้บน Chrome ฉันได้รับข้อผิดพลาดนี้:
ไม่สามารถเริ่มโปรแกรมการดำเนินการไม่ถูกกฎหมายในสถานะปัจจุบัน
คำตอบ:
สำหรับฉันการแก้ปัญหา (วิธีแก้ปัญหา) คือการปิดการดีบัก JavaScript ใน Chrome ซึ่งฉันเชื่อว่าเป็นคุณลักษณะใหม่ที่เปิดตัวใน VS 2017
ไปที่เครื่องมือ> ตัวเลือก> การแก้จุดบกพร่อง> ทั่วไปและปิดการตั้งค่าสำหรับการเปิดใช้งานจาวาสคริแก้จุดบกพร่องสำหรับ ASP.NET (Chrome และ IE)
นี่เป็นปัญหาที่รู้จักกันอยู่แล้วและดูเหมือนว่าจะมีการตรวจสอบความสัตย์ซื่อ
ข้อมูลทั้งหมดเกี่ยวกับการดีบัก JS ใน VS 2017 ที่นี่: https://blogs.msdn.microsoft.com/webdev/2016/11/21/client-side-de-bug-of-asp-net-projects-in-google-chrome/
วันนี้ฉันได้รับข้อผิดพลาดนี้และฉันเพียงแค่ทำการแก้ปัญหาเล็ก ๆ ซึ่งง่ายเกินไป
คุณจะไม่ได้รับข้อผิดพลาดอีกและหากโปรแกรมดีบั๊กไม่ทำงานให้รีเฟรชเบราว์เซอร์อีกครั้ง
อัปเดต (12-Dec-2018):
ฉันเพิ่งทดสอบข้อบกพร่องนี้ในตัวอย่าง Visual Studio 2019 ดูเหมือนว่าข้อผิดพลาดได้รับการแก้ไขแล้ว
หวังว่านี่จะช่วยได้
ฉันมีปัญหาเดียวกันหลังจากการอัพเดท VS 2017 ครั้งล่าสุด (เผยแพร่เมื่อ 14 มีนาคม 2560: สร้าง 26228.09) โปรแกรมของฉันจะดีขึ้นใน IE แต่จะระเบิดใน Chrome การฆ่าอินสแตนซ์ทั้งหมดของ Chrome ภายในบรรทัดคำสั่งของ Windows แก้ไขปัญหาให้ฉัน
taskkill /im chrome.exe /f
ฉันสามารถดีบักใน Chrome ได้
3 ตัวเลือก
ฉันพบวิธีแก้ปัญหาสำหรับสิ่งนี้ซึ่งใช้ได้กับฉัน
ด้วย Chrome เลือกเป็นเบราว์เซอร์ของคุณให้คลิกเมนูและเลือกDebug
Attach to Process...
ในกล่องโต้ตอบที่ตามมาให้เลือกChrome.exe
ในรายการและคลิกที่ปุ่มSelect
Attach to:
ทำNative
เครื่องหมายที่ช่องจากนั้นAttach
(หรือดับเบิลคลิกChrome.exe
):
นี่เป็นการเริ่มโครงการที่ทำงานโดยไม่เรียกใช้เบราว์เซอร์ หยุดและเริ่มต้นใหม่ใน Chrome และข้อผิดพลาดจะหายไป
แน่นอนทางออกที่เป็นไปได้อีกอย่างคือการใช้เบราว์เซอร์ที่แตกต่างกัน แต่ฉันชอบการดีบักใน Chrome :-)
ฉันคิดว่าสิ่งนี้เกิดขึ้นเมื่อมีการเปิดใช้งานการดีบัก javascript ใน visual studio และในขณะเดียวกันก็เปิดใช้งานดีบักเกอร์เครื่องมือสำหรับนักพัฒนาซอฟต์แวร์ Chrome ด้วย ปัญหาเกิดขึ้นเนื่องจากผู้ดีบักสองคนพยายามดีบักกระบวนการเดียวกัน
ฉันเพิ่งปิดโครเมี่ยมที่เปิดอยู่ทั้งหมดหยุดโครงการของฉันแล้วเริ่มใหม่อีกครั้ง ที่แก้ไขปัญหาให้ฉัน
สำหรับฉันปัญหาได้ลงชื่อเข้าใช้บัญชี Google ของฉันในหน้าต่าง Chrome ตรวจแก้จุดบกพร่อง สิ่งนี้ทำงานได้ดีสำหรับฉันจนกระทั่งฉันลงชื่อเข้าใช้ เมื่อฉันลงชื่อออกจากอินสแตนซ์ของ Chrome นั้นและเลือกที่จะลบการตั้งค่าทั้งหมดของฉันผ่านช่องทำเครื่องหมายตัวแก้จุดบกพร่องก็ทำงานได้ดีอีกครั้ง
Chrome ที่ไม่ได้ทำการแก้ไขข้อบกพร่องของฉันยังคงลงชื่อเข้าใช้ Google และไม่ได้รับผลกระทบ ปัญหาหลักคือปลั๊กอินที่น่ารักของฉันหายไปจากรุ่นการแก้ปัญหา แต่อย่างน้อยฉันก็สามารถผ่านรหัสลูกค้าอีกครั้ง
ฉันลองตอบโดยSibeesh Venuแต่นั่นไม่ได้ผลสำหรับฉัน ฉันเชื่อว่าถ้าฉันฆ่ากระบวนการโครเมี่ยมทั้งหมดมันจะใช้ได้ ฉันทำการทดสอบอื่น ๆ เสร็จแล้วและพบว่าการปิด "ดำเนินการต่อจากจุดที่คุณค้างไว้" ในการตั้งค่า Chrome ทำให้มั่นใจได้ว่านี่จะไม่เกิดขึ้นอีกสำหรับฉัน
ฉันเพิ่งพบข้อผิดพลาดนี้ สิ่งที่แก้ไขได้สำหรับฉันคือการปิดหน้าต่างโครเมี่ยมที่เรียกใช้ตัวตรวจสอบ ฉันให้มันโผล่ออกมาจากหน้าต่างของตัวเองเมื่อใดก็ตามที่ฉันตรวจสอบหน้าเว็บ ไม่จำเป็นต้องปิดการใช้งานหรือเปลี่ยนแปลงอะไรใน Visual Studio
คำตอบอื่น ๆ ในกรณีของฉันไม่ทำงาน ฉันต้องรีสตาร์ท windows ก่อนจึงจะสามารถดีบักแอปพลิเคชันอีกครั้ง
ฉันใช้เครื่องมือสร้างคอนโซลของนักพัฒนาซอฟต์แวร์ของ Chrome เพื่อดีบัก javascript ดังนั้นคำตอบที่ทำเครื่องหมายว่าทำงานได้ดีสำหรับฉัน
นี่คือข้อความแสดงข้อผิดพลาดแปลก ๆ ที่ฉันได้รับจาก VS Community 2017 เมื่อพยายามดีบักแอป asp.net:
"มีข้อผิดพลาดเกิดขึ้นซึ่งมักจะระบุว่ามีการติดตั้งเสียหาย (รหัส 0x80040154) หากปัญหายังคงอยู่ให้ซ่อมแซมการติดตั้ง Visual Studio ของคุณผ่าน 'เพิ่มหรือลบโปรแกรม' ในแผงควบคุม" และมันได้รับการแก้ไขแล้ว
ทั้งเปลี่ยนเบราว์เซอร์ของคุณใน VS2017 หรือเปิดพรอมต์คำสั่งในฐานะผู้ดูแลระบบและทำโครเมี่ยม tskill ประมาณ 10 ครั้งเพื่อให้แน่ใจว่าแอพพลิเคชั่นตายสนิท จากนั้นลองอีกครั้ง บางครั้งมันจะติดอยู่ในกระบวนการอื่นและแม้จะต้องเริ่มต้นใหม่
ข้อความแสดงข้อผิดพลาดนี้ปรากฏขึ้นสำหรับฉันเมื่อฉันพยายามที่จะแก้ปัญหาสองวิธีในเวลาเดียวกันขณะที่ฉันต้องการเปรียบเทียบความแตกต่าง การยกเลิกการเลือกตัวเลือกเปิดใช้งานการดีบัก JavaScript สำหรับ ASP.NET (Chrome และ IE) ทำงานได้ แต่ฉันยังคงสับสนอยู่ว่าทำไมฉันไม่สามารถดีบักมากกว่าหนึ่งวิธีในเวลาเดียวกัน เนื่องจากเป็นปัญหาที่ทราบกันอยู่แล้วนี่อาจเป็นที่อยู่ในการอัปเดตจาก Visual Studio นี่คือความหวัง ....
ฉันสามารถแก้ไขปัญหานี้ใน Chrome ได้โดยปิดส่วนขยาย Calendly Chrome ที่ฉันเพิ่งติดตั้งเมื่อไม่นานมานี้ อาจไม่เจาะจงอย่างเด็ดขาดดังนั้นฉันขอแนะนำให้ปิดส่วนขยาย Chrome ที่ติดตั้งใหม่ ด้านล่างเป็นขั้นตอนที่ฉันทำ:
จากเบราว์เซอร์ Chrome ไปที่: การตั้งค่า> ขั้นสูง> ระบบ
และปิดใช้งาน "เรียกใช้แอปพื้นหลังต่อไปเมื่อปิด Google Chrome"
สิ่งสำคัญ! ต้องตั้งค่าตัวเลือกด้านบนสำหรับโปรไฟล์ผู้ใช้ Chrome ที่ถูกต้อง!
Visual Studio มีโปรไฟล์ผู้ใช้ Chrome ของตัวเองการตั้งค่าที่คุณกำหนดเมื่อใช้เบราว์เซอร์ Chrome "ปกติ" ของคุณจะไม่มีผลกระทบใด ๆ กับเบราว์เซอร์ Chrome ที่เปิดตัวจาก VS (ด้วยการเปิดใช้งานการดีบัก JS)
เมื่อใดก็ตามที่คุณหยุดการดีบักคุณต้องปิดอินสแตนซ์ของ Chromeเริ่มต้นด้วย VS มิฉะนั้นข้อผิดพลาดจะกลับมาในครั้งต่อไปที่คุณเรียกใช้โครงการ หากมีกรณีอื่น ๆ ของ Chrome คุณสามารถเปิดทิ้งไว้
เพื่อให้แน่ใจว่า Chrome จะถูกใช้โปรไฟล์ผู้ใช้ที่ถูกต้องให้ไปที่chrome: // รุ่น /โดยการพิมพ์ในแถบ URL แล้วมองไปที่ค่าสำหรับเส้นทางโปรไฟล์ บน Windows ค่าที่ถูกต้องควรมีลักษณะดังนี้:
"C:\Users\[UserName]\AppData\Local\Microsoft\VisualStudio\15.*\WebTools\ChromeUserData_*\Default"
หาก Chrome ใช้ค่าเริ่มต้นของเบราว์เซอร์หรือหากคุณลงชื่อเข้าใช้ Chrome ด้วยบัญชีจะมีลักษณะดังนี้:
"C:\Users\[UserName]\AppData\Local\Google\Chrome\User Data\[ProfileName] OR Default"
บันทึกโบนัส หากคุณใช้ส่วนขยายของ Chrome เมื่อทำการดีบักจะต้องติดตั้งส่วนขยายเหล่านี้เมื่อใช้งาน VS Profile
ในกรณีที่คุณไม่สามารถแก้ไขปัญหาด้วยวิธีอื่นแล้วลองทำเช่นนี้ (ใช้งานได้สำหรับฉัน!):
เก็บรหัสด้านล่างนี้ไว้ในไฟล์กำหนดค่าเว็บของคุณจากนั้นเปลี่ยนชื่อ value="yourwebformname.aspx"
<system.webServer>
<defaultDocument>
<files>
<add value="insertion.aspx" />
</files>
</defaultDocument>
<directoryBrowse enabled="false" />
</system.webServer>
ลองอื่น:
<system.webServer>
<directoryBrowse enabled="true" />
</system.webServer>
วิธีแก้ไขปัญหาอื่นที่คุณสามารถลองใช้งานได้สำหรับฉันเมื่อฉันได้รับข้อผิดพลาดนี้คือทำความสะอาดโซลูชันจากนั้นทำการสร้างใหม่ เนื่องจากวิธีการอื่นไม่ได้ช่วยฉันฉันคิดว่านี่อาจช่วยคนอื่นในเรือลำเดียวกันได้
dotnet run
(ก่อนdotnet restore
และdotnet build
จากนั้นคุณสามารถเรียกใช้)