ข้อผิดพลาด Visual Studio 2017: ไม่สามารถเริ่มโปรแกรมการดำเนินการไม่ถูกกฎหมายในสถานะปัจจุบัน


396

หลังจากติดตั้งใหม่ของ Visual Studio 2017 ฉันพยายามเรียกใช้. NET Core Web project และเมื่อพยายามเรียกใช้บน Chrome ฉันได้รับข้อผิดพลาดนี้:

ไม่สามารถเริ่มโปรแกรมการดำเนินการไม่ถูกกฎหมายในสถานะปัจจุบัน


คุณสามารถเริ่มแอปพลิเคชั่นโดยใช้ commandline และดูว่ามีข้อผิดพลาดอะไรบ้าง dotnet run(ก่อนdotnet restoreและdotnet buildจากนั้นคุณสามารถเรียกใช้)
Joel Harkes

3
@JoelHarkes หลังจากที่ฉันปิดและเปิด Visual Studio 2017 อีกครั้งมันใช้งานได้ในขณะนี้ ไม่ทราบสาเหตุที่ทำให้เกิดปัญหา แต่ไม่แก้ไข
Radenko Zec

บางทีมันอาจจะคิดว่ามันยังคงเตรียมใบสมัคร หรือบางสิ่งบางอย่าง.
Joel Harkes

1
ฉันลองปิด / เปิดใหม่ไม่ทำงาน - ยังคงเกิดขึ้น
codeMonkey

ดูเหมือนจะเฉพาะเจาะจงกับ Chrome - FF, Opera, Brave, IE ทั้งหมดเปิดตัวตกลง
Robert

คำตอบ:


754

สำหรับฉันการแก้ปัญหา (วิธีแก้ปัญหา) คือการปิดการดีบัก JavaScript ใน Chrome ซึ่งฉันเชื่อว่าเป็นคุณลักษณะใหม่ที่เปิดตัวใน VS 2017

ไปที่เครื่องมือ> ตัวเลือก> การแก้จุดบกพร่อง> ทั่วไปและปิดการตั้งค่าสำหรับการเปิดใช้งานจาวาสคริแก้จุดบกพร่องสำหรับ ASP.NET (Chrome และ IE)

VS2017 ปิดใช้งานการดีบัก JS

นี่เป็นปัญหาที่รู้จักกันอยู่แล้วและดูเหมือนว่าจะมีการตรวจสอบความสัตย์ซื่อ

ข้อมูลทั้งหมดเกี่ยวกับการดีบัก JS ใน VS 2017 ที่นี่: https://blogs.msdn.microsoft.com/webdev/2016/11/21/client-side-de-bug-of-asp-net-projects-in-google-chrome/


30
หากคุณปิดใช้งานสิ่งนี้คุณจะไม่สามารถดีบักโค้ดฝั่งไคลเอ็นต์ของคุณใน Visual Studio ได้อีกต่อไป ฉันได้แก้ไขปัญหาบางอย่างเพื่อแก้ไขปัญหานี้แล้ว คุณจะเห็นว่าในคำตอบของฉัน ขอบคุณ
Sibeesh Venu

4
FYI, Microsoft ได้แก้ไขปัญหาแล้วและการแก้ไขพร้อมใช้งานในการอัปเดต VS ล่าสุดของพวกเขาแล้ว developercommunity.visualstudio.com/solutions/93579/view.html
ABVincita

2
คุณคือแชมป์เปี้ยนของแชมป์! ขอบคุณสำหรับการแก้ปัญหาอย่างรวดเร็ว
Lostaunaum

1
เพิ่งพบกับปัญหานี้และสิ่งนี้ก็แก้ไขได้ขอบคุณ นอกจากนี้ยังหยุด VS ไม่ให้เปิดการดีบักในหน้าต่างเบราว์เซอร์ใหม่ทั้งหมดและเปิดไซต์ในแท็บใหม่ซึ่งเป็นสิ่งที่ฉันต้องการกับ VS 2015!
Euphobia

9
ยังคงไม่ได้รับการแก้ไข btw แค่ต้องทำเพื่อ 15.4
StingyJack

210

วันนี้ฉันได้รับข้อผิดพลาดนี้และฉันเพียงแค่ทำการแก้ปัญหาเล็ก ๆ ซึ่งง่ายเกินไป

  1. ปิดอินสแตนซ์ของ chrome ทั้งหมดที่คุณอาจเปิดไว้ก่อนที่คุณจะเปิด Visual Studio
  2. ตอนนี้หยุดการดีบักและรันแอปพลิเคชันของคุณอีกครั้ง

คุณจะไม่ได้รับข้อผิดพลาดอีกและหากโปรแกรมดีบั๊กไม่ทำงานให้รีเฟรชเบราว์เซอร์อีกครั้ง

อัปเดต (12-Dec-2018):

ฉันเพิ่งทดสอบข้อบกพร่องนี้ในตัวอย่าง Visual Studio 2019 ดูเหมือนว่าข้อผิดพลาดได้รับการแก้ไขแล้ว

หวังว่านี่จะช่วยได้


3
ต้องลองสองสามครั้ง แต่ก็ใช้งานได้ หวังว่าพวกเขาจะสามารถหาทางออกได้อย่างถาวรแทนที่จะต้องปิดทุกอย่างทุกครั้ง
Carlos Casalicchio

ฉันเปิด Chrome หลายอินสแตนซ์ ฉันเพิ่งปิดอันที่ฉันใช้เพื่อตรวจแก้จุดบกพร่อง ฉันไม่ได้รีสตาร์ท VS2017 มันได้ผล ขอบคุณ! นี่ควรเป็นคำตอบที่ยอมรับได้เนื่องจากฉันยังสามารถดีบักใน Chrome ได้ใช่ไหม
Soenhay

@Senhay ใช่คุณไม่จำเป็นต้องรีสตาร์ท VS2017 ดูเหมือนว่าจะเป็นข้อบกพร่องหวังว่าทีม VS จะดูมันในไม่ช้า
Sibeesh Venu

+1 - ข้อผิดพลาดน่าจะเกิดขึ้นหากเบราว์เซอร์ที่ debugged ตัวเก่าใน Chrome ยังคงทำงานอยู่ การปิดที่แก้ไขปัญหา
StuartLC

สิ่งนี้เคยทำงานให้ฉัน นั่นหยุด จากนั้นให้ปิด VS และเริ่มต้นใหม่ได้ นั่นหยุด จากนั้นการรีบูตเครื่องจะทำงาน นั่นหยุด @ABVincitas คำตอบตอนนี้ใช้งานได้ หวังว่าจะไม่ล้มเหลวด้วย!
HankCa

33

ฉันมีปัญหาเดียวกันหลังจากการอัพเดท VS 2017 ครั้งล่าสุด (เผยแพร่เมื่อ 14 มีนาคม 2560: สร้าง 26228.09) โปรแกรมของฉันจะดีขึ้นใน IE แต่จะระเบิดใน Chrome การฆ่าอินสแตนซ์ทั้งหมดของ Chrome ภายในบรรทัดคำสั่งของ Windows แก้ไขปัญหาให้ฉัน

taskkill /im chrome.exe /f

ฉันสามารถดีบักใน Chrome ได้


สิ่งนี้ใช้ได้สำหรับฉันเช่นกัน ไม่แน่ใจว่าทำไมมันหยุดทำงานตั้งแต่แรก
Yelnic

นี่เป็นทางออกเดียวสำหรับฉัน ฉันใช้ VS Studio Community Edition เวอร์ชัน 15.4.2 - ขอบคุณ
SanS

ที่สมบูรณ์แบบ! คำสั่งที่ใช้งานง่ายและช่วยในที่ที่ความคิดเห็นอื่น ๆ ไม่ได้รับการจัดอันดับ
Daniel Vartdal

1
สำหรับฉันนี่คือคำตอบที่ถูกต้อง แต่จะไม่มีวันได้รับคะแนนโหวตมากนักเพราะคนปิดโครเมียมและไม่กลับมาประชดประชัน
Jorge Rodrigues dos Santos

9

3 ตัวเลือก

  1. ปิดคุณสมบัติการดีบัก JavaScript ในเครื่องมือ> ตัวเลือก> การดีบัก> ทั่วไป
  2. ฆ่างาน Chrome ทั้งหมด
  3. สลับไปยังเบราว์เซอร์อื่นเพื่อแก้ไขข้อบกพร่อง

7

ฉันพบวิธีแก้ปัญหาสำหรับสิ่งนี้ซึ่งใช้ได้กับฉัน

ด้วย Chrome เลือกเป็นเบราว์เซอร์ของคุณให้คลิกเมนูและเลือกDebugAttach to Process...

ในกล่องโต้ตอบที่ตามมาให้เลือกChrome.exeในรายการและคลิกที่ปุ่มSelect Attach to:ทำNativeเครื่องหมายที่ช่องจากนั้นAttach(หรือดับเบิลคลิกChrome.exe): ป้อนคำอธิบายรูปภาพที่นี่

นี่เป็นการเริ่มโครงการที่ทำงานโดยไม่เรียกใช้เบราว์เซอร์ หยุดและเริ่มต้นใหม่ใน Chrome และข้อผิดพลาดจะหายไป

แน่นอนทางออกที่เป็นไปได้อีกอย่างคือการใช้เบราว์เซอร์ที่แตกต่างกัน แต่ฉันชอบการดีบักใน Chrome :-)


5

ฉันคิดว่าสิ่งนี้เกิดขึ้นเมื่อมีการเปิดใช้งานการดีบัก javascript ใน visual studio และในขณะเดียวกันก็เปิดใช้งานดีบักเกอร์เครื่องมือสำหรับนักพัฒนาซอฟต์แวร์ Chrome ด้วย ปัญหาเกิดขึ้นเนื่องจากผู้ดีบักสองคนพยายามดีบักกระบวนการเดียวกัน


3

ฉันเพิ่งปิดโครเมี่ยมที่เปิดอยู่ทั้งหมดหยุดโครงการของฉันแล้วเริ่มใหม่อีกครั้ง ที่แก้ไขปัญหาให้ฉัน


3

สำหรับฉันปัญหาได้ลงชื่อเข้าใช้บัญชี Google ของฉันในหน้าต่าง Chrome ตรวจแก้จุดบกพร่อง สิ่งนี้ทำงานได้ดีสำหรับฉันจนกระทั่งฉันลงชื่อเข้าใช้ เมื่อฉันลงชื่อออกจากอินสแตนซ์ของ Chrome นั้นและเลือกที่จะลบการตั้งค่าทั้งหมดของฉันผ่านช่องทำเครื่องหมายตัวแก้จุดบกพร่องก็ทำงานได้ดีอีกครั้ง

Chrome ที่ไม่ได้ทำการแก้ไขข้อบกพร่องของฉันยังคงลงชื่อเข้าใช้ Google และไม่ได้รับผลกระทบ ปัญหาหลักคือปลั๊กอินที่น่ารักของฉันหายไปจากรุ่นการแก้ปัญหา แต่อย่างน้อยฉันก็สามารถผ่านรหัสลูกค้าอีกครั้ง


2

ฉันลองตอบโดยSibeesh Venuแต่นั่นไม่ได้ผลสำหรับฉัน ฉันเชื่อว่าถ้าฉันฆ่ากระบวนการโครเมี่ยมทั้งหมดมันจะใช้ได้ ฉันทำการทดสอบอื่น ๆ เสร็จแล้วและพบว่าการปิด "ดำเนินการต่อจากจุดที่คุณค้างไว้" ในการตั้งค่า Chrome ทำให้มั่นใจได้ว่านี่จะไม่เกิดขึ้นอีกสำหรับฉัน


2

ฉันเพิ่งพบข้อผิดพลาดนี้ สิ่งที่แก้ไขได้สำหรับฉันคือการปิดหน้าต่างโครเมี่ยมที่เรียกใช้ตัวตรวจสอบ ฉันให้มันโผล่ออกมาจากหน้าต่างของตัวเองเมื่อใดก็ตามที่ฉันตรวจสอบหน้าเว็บ ไม่จำเป็นต้องปิดการใช้งานหรือเปลี่ยนแปลงอะไรใน Visual Studio



2

สิ่งที่แก้ไขได้สำหรับฉันคือดูที่ทาสก์บาร์สำหรับแอป Chrome เปิดคลิกขวาและปิด ป้อนคำอธิบายรูปภาพที่นี่


1

คำตอบอื่น ๆ ในกรณีของฉันไม่ทำงาน ฉันต้องรีสตาร์ท windows ก่อนจึงจะสามารถดีบักแอปพลิเคชันอีกครั้ง


1

ฉันใช้เครื่องมือสร้างคอนโซลของนักพัฒนาซอฟต์แวร์ของ Chrome เพื่อดีบัก javascript ดังนั้นคำตอบที่ทำเครื่องหมายว่าทำงานได้ดีสำหรับฉัน
นี่คือข้อความแสดงข้อผิดพลาดแปลก ๆ ที่ฉันได้รับจาก VS Community 2017 เมื่อพยายามดีบักแอป asp.net:

"มีข้อผิดพลาดเกิดขึ้นซึ่งมักจะระบุว่ามีการติดตั้งเสียหาย (รหัส 0x80040154) หากปัญหายังคงอยู่ให้ซ่อมแซมการติดตั้ง Visual Studio ของคุณผ่าน 'เพิ่มหรือลบโปรแกรม' ในแผงควบคุม" และมันได้รับการแก้ไขแล้ว


1

ทั้งเปลี่ยนเบราว์เซอร์ของคุณใน VS2017 หรือเปิดพรอมต์คำสั่งในฐานะผู้ดูแลระบบและทำโครเมี่ยม tskill ประมาณ 10 ครั้งเพื่อให้แน่ใจว่าแอพพลิเคชั่นตายสนิท จากนั้นลองอีกครั้ง บางครั้งมันจะติดอยู่ในกระบวนการอื่นและแม้จะต้องเริ่มต้นใหม่


1

ข้อความแสดงข้อผิดพลาดนี้ปรากฏขึ้นสำหรับฉันเมื่อฉันพยายามที่จะแก้ปัญหาสองวิธีในเวลาเดียวกันขณะที่ฉันต้องการเปรียบเทียบความแตกต่าง การยกเลิกการเลือกตัวเลือกเปิดใช้งานการดีบัก JavaScript สำหรับ ASP.NET (Chrome และ IE) ทำงานได้ แต่ฉันยังคงสับสนอยู่ว่าทำไมฉันไม่สามารถดีบักมากกว่าหนึ่งวิธีในเวลาเดียวกัน เนื่องจากเป็นปัญหาที่ทราบกันอยู่แล้วนี่อาจเป็นที่อยู่ในการอัปเดตจาก Visual Studio นี่คือความหวัง ....


0

ฉันสามารถแก้ไขปัญหานี้ใน Chrome ได้โดยปิดส่วนขยาย Calendly Chrome ที่ฉันเพิ่งติดตั้งเมื่อไม่นานมานี้ อาจไม่เจาะจงอย่างเด็ดขาดดังนั้นฉันขอแนะนำให้ปิดส่วนขยาย Chrome ที่ติดตั้งใหม่ ด้านล่างเป็นขั้นตอนที่ฉันทำ:

  1. ดีบักโปรแกรม
  2. ให้ Chrome Open และ VS เกิดข้อผิดพลาด
  3. ล้างข้อผิดพลาด VS โดยคลิกตกลง
  4. คลิกสามจุดที่มุมบนขวาของ Chrome
  5. เลื่อนเมาส์ไปที่ "เครื่องมือเพิ่มเติม" และคลิกส่วนขยาย
  6. ค้นหากระเบื้อง Calendly และทำเครื่องหมายแถบเลื่อนที่มุมขวาล่างเพื่อปิดตำแหน่ง
  7. ปิดหน้าต่าง Chrome ทั้งหมดรวมถึงหน้าต่าง Chrome ใด ๆ ในแถบที่ทำงานต่อไป
  8. หยุดการดีบัก
  9. เรียกใช้โปรแกรมอีกครั้งในโหมดแก้ไขข้อบกพร่อง

0

โซลูชันที่เปิดใช้งานการดีบัก JavaScript

จากเบราว์เซอร์ Chrome ไปที่: การตั้งค่า> ขั้นสูง> ระบบ และปิดใช้งาน "เรียกใช้แอปพื้นหลังต่อไปเมื่อปิด Google Chrome"

สิ่งสำคัญ! ต้องตั้งค่าตัวเลือกด้านบนสำหรับโปรไฟล์ผู้ใช้ Chrome ที่ถูกต้อง!
Visual Studio มีโปรไฟล์ผู้ใช้ Chrome ของตัวเองการตั้งค่าที่คุณกำหนดเมื่อใช้เบราว์เซอร์ Chrome "ปกติ" ของคุณจะไม่มีผลกระทบใด ๆ กับเบราว์เซอร์ Chrome ที่เปิดตัวจาก VS (ด้วยการเปิดใช้งานการดีบัก JS)

  1. เรียกใช้โครงการของคุณจาก VS กับ "เปิดใช้งานการแก้จุดบกพร่อง JavaScript ..." เปิดใช้งาน เบราว์เซอร์ Chrome ควรเปิดและคุณจะได้รับข้อผิดพลาดใน VS
  2. กลับไปที่อินสแตนซ์เดียวกับ Chrome ที่ VS เริ่มต้นและปิดใช้งาน "ดำเนินการแอปพื้นหลังต่อไปเมื่อปิด Google Chrome" ตามที่อธิบายไว้ข้างต้น
    หากคุณไม่ได้เปิดใช้งาน / ตรวจสอบ "เปิดใช้งานการดีบัก JavaScript ... " อินสแตนซ์ของ Chrome จะใช้โปรไฟล์ผู้ใช้เริ่มต้นของคุณและข้อผิดพลาดจะยังคงมีอยู่
  3. หยุดและรันโครงการอีกครั้ง Chrome ควรโหลดโครงการตามที่คาดไว้โดยไม่มีข้อผิดพลาดและเปิดใช้งานการดีบัก 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


0

ในกรณีที่คุณไม่สามารถแก้ไขปัญหาด้วยวิธีอื่นแล้วลองทำเช่นนี้ (ใช้งานได้สำหรับฉัน!):

เก็บรหัสด้านล่างนี้ไว้ในไฟล์กำหนดค่าเว็บของคุณจากนั้นเปลี่ยนชื่อ 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>

-1

วิธีแก้ไขปัญหาอื่นที่คุณสามารถลองใช้งานได้สำหรับฉันเมื่อฉันได้รับข้อผิดพลาดนี้คือทำความสะอาดโซลูชันจากนั้นทำการสร้างใหม่ เนื่องจากวิธีการอื่นไม่ได้ช่วยฉันฉันคิดว่านี่อาจช่วยคนอื่นในเรือลำเดียวกันได้

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.