Các điểm dừng hiện tại sẽ không bị tấn công. Mã nguồn khác với phiên bản gốc. Điều đó có nghĩa là gì?


514

Khi gỡ lỗi trong Visual Studio, đôi khi tôi thêm một điểm dừng nhưng nó rỗng và VS nói "Điểm dừng hiện tại sẽ không bị tấn công. Mã nguồn khác với phiên bản gốc." Rõ ràng điều này ngăn cản tôi có thể gỡ lỗi.

Thông điệp trên trái đất có ý nghĩa gì? Phiên bản gốc nào? Nếu tôi vừa mở giải pháp và không thực hiện bất kỳ thay đổi nào đối với mã, làm sao có thể có 'phiên bản gốc'?


36
biên dịch lại / xây dựng dự án trước khi thêm điểm dừng
lexu

bạn đang mở một dự án được viết trong một phiên bản khác của studio hình ảnh?
Mahesh Velaga

2
Đó là một dự án trang web. Không cần phải xây dựng nó một cách rõ ràng. Nó nên biên dịch khi sử dụng. Tôi nghi ngờ VS không thể xây dựng trang web, nhưng nó không nói với tôi điều đó! Mahesh - không, tất cả cùng một phiên bản của VS.
David

Trong trường hợp của tôi .. Tôi có các bản phát hành khác nhau của cùng một mã (ví dụ: test.cs trên phiên bản Live và phiên bản phá hủy .. khi tôi mở phiên bản phá hủy và đặt điểm dừng trên test.cs đã đưa ra lỗi tương tự nhưng tôi đã nhận ra rằng tôi đã kiểm tra điểm dừng Lớp .cs có liên quan đến phiên bản trực tiếp không bị phá hủy vì vậy hãy kiểm tra cs đã được xây dựng giải pháp)
dankyy1

5
Xóa các thư mục bin và obj hơn là xây dựng lại làm việc cho tôi.
Aycan Yaşıt

Câu trả lời:


277

Như đã nói, "mã nguồn khác với phiên bản gốc".

Nhấp chuột phải vào thư mục dự án bên trong trình khám phá giải pháp và chọn Clean. Xây dựng một phiên bản mới của dự án và điểm dừng sẽ hoạt động trở lại!


120
Sử dụng sạch không phải lúc nào cũng hoạt động. Tôi đã phải tự xóa mọi thứ trong thư mục bin của mình để nó hoạt động trở lại.
Carra

3
Tôi đã nhầm lẫn có một tham chiếu đến một DLL trong thư mục bin của tôi. Sửa đường dẫn tham chiếu cố định.
Brad Urani

39
Đối với tôi, thậm chí xóa các thư mục bin và obj không hoạt động. Tôi đã phải khởi động lại Visual Studio là tốt.
d512

1
Dành tất cả một ngày để tìm giải pháp. Cảm ơn một tấn đã cung cấp một giải pháp.
RACS

8
Tôi đã đóng VS, xóa tất cả các thư mục bin và obj, xây dựng lại mọi thứ, kiểm tra cấu hình bản dựng được kiểm tra hai lần, bản dựng đang thành công. Không có con xúc xắc. Những điều đơn giản không nên phức tạp như thế này. >: |
snarf

129

Nếu bạn đã bỏ chọn dự án DLL trong cấu hình bản dựng Debug , mã mới của bạn sẽ không bao giờ được xây dựng!

Đi đến Build --> Configuration Manager ...(trong VS2010) và kiểm tra xem dự án có mã bạn đang cố gắng gỡ lỗi có được kiểm tra cho cấu hình bản dựng hiện tại không.


Cảm ơn lời đề nghị Oliver. Điều đó chắc chắn không xảy ra ở đây, tôi sẽ nhận thấy khá nhanh nếu một trong những dự án của tôi không được xây dựng.
David

3
Tôi có cùng một vấn đề, chỉ không có bất cứ điều gì không được kiểm tra. nó chỉ được xây dựng cho x86 trong hộp thoại đó, trong khi máy cục bộ của tôi là x64! Vì vậy, tôi đã chọn Any CPUtùy chọn và nó hoạt động trở lại.
JP Hellemons

3
Loại bỏ các dự án khỏi cấu hình gỡ lỗi mà không có lý do hợp lệ sẽ là một tội lỗi chính, vì cấu hình đó có thể được sử dụng bởi máy xây dựng CI (tôi biết nó ở đây), vì vậy cuối cùng có thể vượt qua khi nó bị lỗi. Tôi biết đó có thể là một trong nhiều bước xây dựng nhưng vẫn ... @Oliver Tôi hy vọng thành viên trong nhóm đã mua cho bạn một số bánh quy! :)
Fetchez la vache

Tôi gặp vấn đề này khi tôi chuyển sang xây dựng cho x86 thay vì AnyCPU. Nó loại bỏ các dự án khỏi được xây dựng vì một số lý do không rõ.
Adam Pedley

Dự án được liệt kê cho Trình quản lý cấu hình xây dựng nên điều này không giúp tôi tôi sợ :(
Ortund

43

Đối với tôi đó là khi làm việc trong một dự án WebSite. Sau khi dọn sạch các thư mục tạm thời này, tôi đã nhận được các lỗi trình biên dịch thích hợp:

  • C:\Documents and Settings\%username%\AppData\Local\Temp\Temporary ASP.NET Files
  • C:\windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files

Cuối cùng tôi đã giải quyết vấn đề khi tôi phát hiện ra rằng một tệp lớp mà tôi đã cố tình chuyển vào thư mục con, bằng cách nào đó đã xuất hiện lại trong thư mục gốc. VS đã sử dụng cái đó trong khi tôi đang chỉnh sửa cái kia.


2
Dọn sạch các tập tin tạm thời trong thư mục windows làm việc cho tôi, chúc mừng!
ChrisFletcher

7
Tôi chỉ muốn thêm một câu trả lời tương tự - đảm bảo rằng, không có bản sao cũ nào của dll dự án của bạn nằm trong bất kỳ thư mục tạm thời nào mà ASP.NET sử dụng, như C: \ Windows \ Microsoft.NET \ Framework \ v4.0.30319 \ Tệp ASP.NET tạm thời - như đã đề cập - nhưng cũng có C: \ Windows \ Microsoft.NET \ Framework_64_ \ v4.0.30319 \ Tệp ASP.NET tạm thời . Tôi sử dụng mọi thứ để nhanh chóng tìm kiếm những bản sao đó .
Oliver

12
Chỉ là một gợi ý nhanh: gõ %localappdata%vào hộp tìm kiếm sẽ đưa bạn trực tiếp đếnC:\Documents and Settings\%username%\AppData\Local
dav_i

1
Có thể xác nhận điều này làm việc cho tôi trong Visual Studio 2013 trong một dự án dịch vụ web.
Moeri

Đã làm tất cả điều này nhưng dường như nó không giúp được gì. Tôi thực sự rất phấn khích khi thấy điều này, quá.
Ortund

40

Bạn đã bao giờ làm điều này?

Bạn có muốn tiếp tục và chạy bản dựng thành công cuối cùng không?

Nếu bạn đánh dấu vào ô và nhấn "Có", bạn sẽ có bản dựng thành công cuối cùng chạy mặc dù dự án của bạn không được biên dịch. Điều này có nghĩa là bất cứ khi nào bạn đặt điểm dừng, bạn sẽ gặp lỗi đó.

Hãy thử thay đổi giá trị này:

  • Công cụ
    • Tùy chọn
      • Dự án và Giải pháp
        • Xây dựng và chạy
          • Khi chạy, khi xảy ra lỗi xây dựng hoặc triển khai: Không khởi chạy

Tôi không nghĩ rằng tôi đã làm điều đó. Cảm ơn các liên kết mặc dù. Nó cho tôi một cái nhìn sâu sắc về ý nghĩa của dấu nhắc đó!
David

11
Visual Studio đã có tùy chọn này trong nhiều thập kỷ nay (ít nhất là VS98 có nó). Tôi không bao giờ hiểu tại sao bất cứ ai cũng muốn chạy bản dựng thành công cuối cùng. Rốt cuộc, nếu đó là những gì tôi muốn, tôi sẽ trực tiếp khởi chạy nó, vì dù sao tôi cũng không thể gỡ lỗi. Không khởi chạy sẽ là một mặc định hợp lý hơn.
OregonGhost

6
Tôi đã sử dụng nó một vài lần để chạy dự án (vì bất kỳ lý do gì, như chỉ để cho người khác xem) trong khi tôi vẫn đang viết mã không được biên dịch. Đôi khi nó tiện dụng. Cá nhân, tôi để nó bị vô hiệu hóa.
Codeleuth

3
Có lẽ nếu họ phải thể hiện sự vượt trội của mình khi anh bất ngờ ghé qua. Họ có thể đạt f5 và giống như "bạn thấy đấy, nó hoạt động!"
Gigala

33

Đi đến

  • Công cụ
    • Tùy chọn
      • Gỡ lỗi
        • Chung

Bỏ chọn Yêu cầu tệp nguồn để khớp chính xác với phiên bản gốc


17
@Rachmad Giải pháp này hoạt động. Nhưng có vẻ như đó không phải là giải pháp hoàn chỉnh, vì điều đó có nghĩa là các tệp nguồn của chúng tôi không khớp chính xác với phiên bản gốc
onmyway133

Đây chính xác là những gì tôi đang tìm kiếm bởi @entropy là đúng. Mặc dù điều này cho phép các điểm dừng được đặt, nhưng thực tế là nguồn đang được sử dụng không khớp với pdb đang được sử dụng. Giải pháp tốt nhất là khắc phục điều đó. Trong thời gian không thể được thực hiện, điều này làm việc tuyệt vời.
JamesG

Ngay cả khi không được kiểm tra này, việc thực thi không đạt đến điểm dừng và lỗi vẫn tồn tại
Ortund

12
Đây KHÔNG phải là một giải pháp cho vấn đề này mà là một cách giải quyết. Rõ ràng tôi không muốn làm việc với các tệp lỗi thời trong trình gỡ lỗi.
Obi Wan

2
@ObiWan Không rõ ràng. Tôi thích thực hiện các chỉnh sửa nhỏ và tiếp tục gỡ lỗi ngay cả khi biết nguồn và bản dựng là khác nhau.
Alan Baljeu

30

Chọn Gỡ lỗi trong Cấu hình Giải pháp , thay vì Phát hành

ảnh chụp màn hình của menu


1
Đây là vấn đề của tôi. Tôi đã biên dịch trong chế độ gỡ lỗi, thay đổi mã, sau đó chạy nó trong chế độ phát hành. Không có gì ngạc nhiên khi trình gỡ lỗi nghĩ rằng mã là khác nhau - các biểu tượng gỡ lỗi khác nhau. Khi tôi xóa thư mục bin như những người khác đề xuất, tôi đã gặp lỗi "không có biểu tượng nào được tải cho tài liệu này." Chỉ sau đó tôi mới thực hiện kết nối và tìm đường đến câu trả lời này. Nó cần nhiều phiếu hơn!
indot_brad

Dự án có thể bị vô hiệu hóa để xây dựng ngay cả trong cấu hình bản dựng Debug. Cần kiểm tra cấu hình bản dựng, lật giữa cấu hình Gỡ lỗi / Phát hành là vô nghĩa.
Asad Saeeduddin

Đây cũng là nó cho tôi. đã cố gắng làm sạch, xây dựng lại các giải pháp tham chiếu khác nhưng không có kết quả. Không để ý giải pháp đang nhìn chằm chằm vào mặt tôi
Adam Hey

Đây là những gì đã xảy ra với tôi - Tôi đã xây dựng dự án của mình và thay thế hết lần này đến lần khác nhưng vấn đề sẽ không biến mất. Tôi nhận ra mã đang được xây dựng trong chế độ Phát hành trong khi tôi đang thay thế thư mục dlls từ / bin / debug. Ngốc tôi
displayName

Tôi muốn đính kèm vào một quy trình được xây dựng trong chế độ phát hành. Chuyển sang gỡ lỗi đã giải quyết vấn đề của tôi.
thứ

27

Hãy chú ý đến cửa sổ "Đầu ra" trong VS. Nó sẽ cho bạn biết những gì lắp ráp được tải và khi nào. Bạn có thể thấy rằng một phiên bản cũ hơn của lắp ráp của bạn ở đâu đó trong thư mục đang được tải.

Ví dụ: nếu bạn có nhiều tập hợp và bạn hiện đang cố gắng đột nhập vào một trong các tập hợp hỗ trợ, CLR sẽ xử lý việc giải quyết tập hợp, có thể tải một tập tin lắp ráp khác so với tập tin bạn đã tham chiếu trong dự án.


1
Cũng đáng ghi nhớ, nhưng tôi không nghĩ đó là vấn đề ở đây vì tôi đang cố gắng đột nhập vào một dự án trang web, không phải thư viện lớp.
David

24

Đóng Visual Studio và mở lại giải pháp có thể khắc phục sự cố, tức là đó là một lỗi trong chính IDE (Tôi đang chạy VS2010).

Nếu bạn có nhiều phiên bản Visual Studio đang chạy, bạn chỉ cần đóng phiên bản đang chạy giải pháp có vấn đề.


4
Đóng Visual Studio cũng làm việc cho tôi. Ngoài ra, với các hành động Clean / Rebuild.
danielB

3
Điều này đã khắc phục giải pháp trong VS 2015
TainedLemon


Đã khắc phục sự cố trong VS 2012
seebcakes

19

Một cách mới để giải quyết vấn đề này đã xuất hiện kể từ Visual Studio 2017 15.3.1 đến 15.3.5. Nếu bạn đang sử dụng EditorConfig , charset=utf8tùy chọn gây ra các triệu chứng này. Nhóm VS đã sao chép điều này và nói rằng họ đang làm việc với nó .

Vì vậy, một cách khắc phục là nhận xét charset=utf8dòng của bạn trong tệp .editorconfig.

Chỉnh sửa: Điều này nên được sửa chữa kể từ VS 15,5.


Trạng thái hiện là "Đã sửa lỗi - phát hành đang chờ xử lý" kể từ hai ngày trước (ngày 9 tháng 10 năm 2017). Đó là tin tốt, vì UTF-8 là mặc định lành mạnh duy nhất cho mã hóa văn bản ngày nay. :-)
rmunn

Tôi cũng nhận thấy rằng nguyên nhân cuối cùng của vấn đề này rõ ràng là lỗi này , nơi charset=utf8được hiểu là "UTF-8 với BOM". Việc thay đổi cách hiểu đó thành "không có BOM" đã phá vỡ một số tệp UTF-8 có BOM trong đó. Vì vậy, nếu bạn gặp phải vấn đề này và bản sửa lỗi Visual Studio chưa được phát hành, hãy thử xóa BOM khỏi phần đầu của tệp văn bản của bạn và điều đó có thể khắc phục sự cố. (Nhận xét này đang cầu xin một tài liệu tham khảo Zero Wing ... :-))
rmunn

Đây là vấn đề đối với tôi là tốt. Hiện tại, điều này chưa được khắc phục hoặc ít nhất là được phát hành hoặc lỗi đã được giới thiệu lại (phiên bản 15.4.2)
avidenic

12

Điều này cũng xảy ra thường xuyên nếu bạn đang sử dụng một tham chiếu tệp đến nhị phân (thay vì tham chiếu dự án tới mã trong dự án của bạn) và tệp nhị phân được biên dịch mà bạn đang tham chiếu không đồng bộ với mã nguồn tương ứng trên máy của bạn. Điều này có thể xảy ra do bạn đã tải xuống phiên bản nhị phân mới từ kiểm soát nguồn mà không có mã nguồn mới đi kèm hoặc bạn có một vài phiên bản nhị phân trên máy của mình và đang tham khảo một bản sao cũ, v.v ... Nếu đây thực sự là vấn đề, đó là một lý do tốt để sử dụng tài liệu tham khảo dự án nhiều như nó thực tế.


Tôi hiểu ý của bạn và điều đó đáng để ghi nhớ cho tương lai, nhưng nguồn được đề cập ở đây là một dự án trang web, không phải là một thư viện lớp.
David

Đây là một vấn đề phổ biến khi chọn mã kế thừa khiến tôi phải gãi đầu tự hỏi thiên tài nào đã quyết định tham chiếu một dll từ một dự án trong giải pháp chỉ được sử dụng bởi một dự án khác trong giải pháp. thở dài
Kell

10

Đối với tôi, không có mục nào giải quyết được vấn đề. Tôi vừa thêm một dòng mã mới bên trong hàm đó, đại loại như:

int a=0;

bằng cách thêm vào đó, tôi đoán tôi đã kích hoạt studio hình ảnh để thêm chức năng này vào phiên bản gốc


7

Điều này có thể xảy ra khi thời gian hệ thống thay đổi trong khi gỡ lỗi hoặc giữa các phiên gỡ lỗi, có thể là lập trình, thủ công hoặc bởi một chương trình bên ngoài.


Tôi không thể +1 này đủ. Gần đây tôi đã cài đặt lại Windows và không nhận thấy đồng hồ hệ thống của tôi bị tắt. Chắc chắn, sự thay đổi này đã làm hỏng mọi thứ và xây dựng lại toàn bộ giải pháp / dự án đã sửa chữa nó một cách kỳ diệu.
Kyle Baran

7

Có một thiết lập gần như không thể chấp nhận được đã khắc phục vấn đề này cho tôi. Nếu có một tệp nguồn cụ thể trong đó điểm dừng không nhấn, nó có thể được liệt kê trong

  • Giải pháp thám hiểm
    • bấm chuột phải vào Giải pháp
      • Tính chất
        • Tài sản chung
          • Tập tin nguồn gỡ lỗi
            • "Đừng tìm những tập tin nguồn này".

Vì một số lý do mà tôi không biết, VS 2013 đã quyết định đặt một tệp nguồn ở đó và sau đó, tôi không thể nhấn điểm dừng trong tệp đó nữa. Đây có thể là thủ phạm của "mã nguồn khác với phiên bản gốc".


Tôi phải đối mặt với cùng một vấn đề. Câu trả lời của bạn đã giúp tôi! Cảm ơn bạn! +1
jweyrich 04/11/2015

5

Vấn đề là thông tin gỡ lỗi của bạn không đồng bộ với hội đồng của bạn. Giải pháp rất đơn giản:

  1. Chuyển đến thư mục bin của bạn
  2. Xóa các tệp .pdb
  3. Tái tạo

Nên làm thủ thuật!

(điều kỳ lạ là, việc xây dựng lại mà không vứt bỏ các tệp .pdb không phải lúc nào cũng hoạt động. Tôi có thể thấy ngày sửa đổi đang được cập nhật, nhưng vẫn ở đâu đó trong chuỗi (trình gỡ lỗi VS2013, IIS, bộ đệm bộ đệm) thay đổi này không được phát hiện )


Build-> Clean Solution cũng sẽ hoàn thành việc xóa các tệp cần xóa.
Dave

Sau khi mất rất nhiều thời gian vì vấn đề này, giải pháp này đã tạo ra mánh khóe. Thx FrankyHollywood
AD

4

Bạn có thể nhận được thông báo này khi bạn đang sử dụng một trình kích hoạt và hội đồng bạn đặt điểm dừng thành chưa được tải.

Điểm dừng sẽ giải quyết khi trình kích hoạt tải lắp ráp (giả sử các ký hiệu lắp ráp và gỡ lỗi được cập nhật). Một nơi tốt để xem xét là cửa sổ mô-đun trong menu gỡ lỗi. Ở đó bạn nên tìm kiếm hội đồng mà tập tin của bạn quá. Đầu tiên kiểm tra rằng lắp ráp được tải. Sau đó, nó được tải từ đâu? Sau đó, là tập tin biểu tượng được tải. Một lần nữa, tập tin biểu tượng được tải từ đâu? Cuối cùng kiểm tra các phiên bản của cả hai.


4

Tôi đã gặp điều này là tốt. Các điều kiện gây ra vấn đề của tôi:

  • Tôi đang chạy một phiên bản IIS7 đầy đủ cục bộ
  • Tôi đang phiên bản phần mềm của mình thành các dự án riêng biệt

Tôi đã gây ra điều này bằng cách mở phiên bản trước (VS nhắc hỏi tôi có muốn trỏ đến trường hợp này trong gỡ lỗi IIS không, tôi đã trả lời 'Có'), sau đó mở phiên bản hiện tại (một lần nữa trả lời lời nhắc IIS bằng 'Có' ), sau đó cố gắng gỡ lỗi trong phiên bản trước.

Để giải quyết, tôi chỉ đóng và mở lại phiên bản trước và dự định, một lần nữa khẳng định nó là nguồn gỡ lỗi.


3

Hãy thử tắt và thiết lập lại điểm dừng trong khi chạy ở chế độ gỡ lỗi thay vì thực hiện trước khi khởi chạy chế độ gỡ lỗi.


3

Điều này cũng xảy ra khi gỡ lỗi một dự án C ++, tải một mô-đun đã được triển khai với một số ngôn ngữ CRL (Managed C ++, C #, v.v.). Trong tình huống này, thông báo lỗi thực sự gây hiểu nhầm.

Giải pháp là đặt thuộc tính cấu hình hỗ trợ thời gian chạy ngôn ngữ chung (CLR) cho dự án khởi động và biên dịch lại nó.


3

Nếu bạn có nhiều dự án trong giải pháp của mình , thì hãy đảm bảo rằng dự án chính xác được đặt là StartUp Project. Để đặt một dự án cụ thể làm Dự án khởi động cho giải pháp của bạn, Nhấp chuột phải vào dự án, chọn Set As StartUp Project.

Sau khi tôi đặt Dự án StartUp chính xác, điểm dừng mong muốn đã đạt được bởi luồng.


Cũng đáng lưu ý rằng nếu điểm dừng của bạn nằm trong dự án KHÔNG phải là dự án khởi nghiệp của bạn và KHÔNG THỂ thực hiện dự án khởi động của bạn (vì ví dụ: bạn cần có một dự án khác là dự án khởi động) bạn có thể (sau khi bắt đầu dự án chính) nhấp chuột phải và chọn Gỡ lỗi >> Bắt đầu Phiên bản mới của dự án có điểm dừng mà bạn muốn đạt
Caius Jard

3

Tôi đã trải nghiệm điều này trong bản dựng 32 bit vào vs2017.

Chính xác không có giải pháp nào làm việc cho tôi. Tôi khởi động lại, tôi xóa các tệp IDE, giải pháp được xây dựng sạch, được kéo từ git repo và xây dựng lại giải pháp không có kết quả.

Tôi đã sử dụng một phụ thuộc 64 bit từ nuget và ngay khi tôi sử dụng lắp ráp, các nguồn không được tích hợp vào tệp thực thi cuối cùng nữa và thay vào đó các nguồn lưu trữ bộ nhớ cache IDE đã được xây dựng.

Tôi đã gỡ bỏ cấu hình nuget, gỡ bỏ tham chiếu lắp ráp, tải xuống nguồn, xây dựng log4net theo cách thủ công, ký tên, thêm nó vào một thư mục trong dự án của tôi, thêm tham chiếu đến nó và tôi có thể gỡ lỗi lại.

Đây là một nỗi đau, tôi hy vọng nó sẽ xuất hiện trong danh sách câu trả lời cho tất cả mọi người xem.

Chỉnh sửa: Không có lỗi trong quá trình xây dựng mặc dù có tùy chọn "nhắc về lỗi xây dựng" được bật trong cài đặt IDE.


3

Đối với tôi, giải pháp đã được ẩn trong các Advanced Build Settingsthuộc tính của dự án: nhập mô tả hình ảnh ở đây

Vì một lý do không xác định, nó được đặt thành none: đặt nó thành fullcác điểm dừng bị tấn công.

Để vào hộp thoại này, hãy mở các thuộc tính của dự án, sau đó chuyển đến Build, sau đó chọn Advanced...nút ở cuối trang.


3

Tôi đã có cùng một vấn đề trong một số dự án trong một dự án kiến ​​trúc phân lớp và vấn đề là ở cấu hình, hộp kiểm xây dựng cho dự án đã chọn chưa được kiểm tra. Vì vậy, vấn đề đã được khắc phục cho một dự án.

Đối với một lớp khác, nó cũng gây ra sự cố tương tự, ngay cả bản dựng được kích hoạt trong các cấu hình. Tôi đã làm tất cả các tùy chọn khác như khởi động lại làm sạch dự án nhưng không phải trong số chúng giúp được. Cuối cùng tôi bỏ chọn hộp kiểm xây dựng cho dự án cụ thể đó và làm sạch và xây dựng lại. một lần nữa đánh dấu hộp kiểm và làm tương tự. sau đó vấn đề đã được khắc phục.

Hi vọng điêu nay co ich..


2

Trong trường hợp của tôi, tôi đã gắn vào một quy trình đang chạy trong VS 2012. Khi đính kèm, bạn được cung cấp tùy chọn gỡ lỗi ở nhiều chế độ khác nhau (nguyên gốc, tập lệnh, silverlight, được quản lý 2.0, được quản lý 4.0, v.v.). Theo mặc định, trình gỡ lỗi tự động chọn chế độ. Tuy nhiên Automatic không phải lúc nào cũng đưa ra lựa chọn chính xác. Nếu quy trình của bạn chứa nhiều loại mã, hãy chắc chắn trình gỡ lỗi đang sử dụng đúng loại.


Trong trường hợp của tôi, tôi đã đính kèm vào w3wp.exe để gỡ lỗi mã .NET nhưng vì một số lý do, nó đã đính kèm trình gỡ lỗi Script mà không thể thấy các điểm dừng C # của tôi. Thay đổi nó thành trình gỡ lỗi .NET cho phép các điểm dừng C # của tôi hoạt động.
Oran Dennison

2

Trong trường hợp của tôi, tôi đã phát triển một ứng dụng Windows CE, đã thử nghiệm trình giả lập. Vấn đề là thực thi không được triển khai cho trình giả lập, do đó .pdb (trong môi trường phát triển) không đồng bộ với .exe (trong trình giả lập), vì .exe mới không bao giờ được sao chép vào trình giả lập. Tôi đã phải xóa .exe trong trình giả lập để buộc triển khai mới. Sau đó, nó làm việc.


2

Điều làm việc cho tôi là thay đổi nền tảng giải pháp từ x86 sang Bất kỳ CPU nào. Sau khi đổi thành Any, tôi đặt địa chỉ dừng, chạy trang web, mở trang, nhấp vào nút và nó dừng lại. Tôi đã đóng trang web, thay đổi lại thành x86 và thực hiện cùng một chuỗi thành công.


2
Có lẽ sự lựa chọn CPU hoàn toàn không ảnh hưởng đến vấn đề và thực tế là nó buộc phải xây dựng lại?
jwg

Nó sẽ sử dụng một thư mục bin khác, có thể có một dll cũ trong bất kỳ bản đồ cpu nào của bạn.
Carra

Tôi gặp vấn đề này trong khi nền tảng hoạt động x86 (mà tôi chưa bao giờ sử dụng), chuyển trở lại Win32 đã giải quyết vấn đề. PC là một chia sẻ để người khác thiết lập nền tảng đó vì bất kỳ lý do gì.
Zac

2

Trong Windows 7, Visual Studio Express 2010, nếu bạn đã kích hoạt tùy chọn Sử dụng chế độ tương thích cho Windows XP SP3 , lỗi này có thể xảy ra.

Tôi đã bỏ chọn tùy chọn và nó hoạt động hoàn hảo trở lại. Nhấp chuột phải vào phím tắt đến VS hoặc tệp thực thi, chọn thuộc tính và sau đó tương thích .


1
Điều có thể xảy ra ở đây là cấu hình phát hành của bạn thay đổi từ x32 thành x64 khi bạn tắt chế độ tương thích và bạn có thể không có tất cả các dự án của mình được chọn để xây dựng trong x32. Tại sao một số dự án nhất định bị vô hiệu hóa để xây dựng trong x32 là điều bạn sẽ phải nói với các thành viên trong nhóm của mình.
Asad Saeeduddin

Đó chính xác là vấn đề của tôi. Cảm ơn bạn!
Johan Holtby

2

Đầu tiên tôi đã thử từ dòng lệnh;

xóa các tập tin tạm thời từ dòng lệnh đã làm việc.

C: \ Windows \ Microsoft.NET \ Framework64 \ v4.0.30319 \ Tệp ASP.NET tạm thời> root / s

Khi tôi tắt tùy chọn "Bật chỉ mã của tôi" trong Công cụ -> Tùy chọn -> Gỡ lỗi -> Chung

Vấn đề được giải quyết cho tôi. Nó là một ứng dụng WCF, đã cố gắng gỡ lỗi một trang ashx. http://bloss.msdn.com/b/zainnab/archive/2010/10/25/under Hiểu-just-my-code.aspx


2

Nó xảy ra với tôi vì tôi có các dự án khác trong giải pháp không được xây dựng. Sau khi tôi dỡ các dự án có vấn đề đó (nhấp chuột phải vào dự án trong trình khám phá giải pháp -> Unload Project), xây dựng lại giải pháp và chạy lại - điểm dừng đã bị tấn công!


2

Nó hạnh phúc khi có mặt trên Visual Studio 2017 sau khi tôi thêm các tệp hiện có vào dự án. Điều này làm việc cho tôi:

  1. đóng giải pháp,
  2. đi đến SolutionFolder\.vs\SolutionName\v15\sqlite3và loại bỏstorage.ide
  3. mở lại giải pháp

Cảm ơn bạn cho giải pháp này! Không có gì trước khi làm việc, và điều này đã cứu ngày của tôi :)
StefanaB

2

Đảm bảo bạn không ở Chế độ phát hành khi bạn cố gắng gỡ lỗi.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.