Tôi có một trang web ASP.NET và khi tôi nhấn F5 nó sẽ tự động gắn vào máy chủ phát triển ASP.NET, làm thế nào để đính kèm vào quá trình công nhân IIS thay vì khi tôi nhấn F5?Làm cách nào để đính kèm trình gỡ lỗi vào IIS thay vì ASP.NET Development Server?
Trả lời
thuộc tính dự án mở, chuyển đến tab web và chọn tùy chọn cho IIS.
Điều đó thực sự bắt đầu một phiên bản ứng dụng trong IIS và đính kèm trình gỡ rối. Nếu bạn chỉ muốn đính kèm vào một cá thể IIS hiện có, hãy chọn đính kèm vào quá trình từ trình đơn gỡ lỗi.
chuyển đến các thuộc tính của ứng dụng web. Chọn phần "Tùy chọn Bắt đầu" và thay đổi từ "Sử dụng máy chủ web mặc định" thành "sử dụng máy chủ tùy chỉnh". Nhập "http://localhost" vào url cơ sở.
(giả định VS 2008)
Debug-> Attach To Process ...
Chọn aspnet_wp.exe quá trình từ danh sách.
Nếu bạn đang chạy IIS> phiên bản 5 quá trình này sẽ được w3wp.exe, và sẽ có một cho mỗi ứng dụng hồ bơi (vì vậy nếu bạn không biết mà ứng dụng hồ bơi bạn đang đánh, bạn sẽ cần phải đính kèm với tất cả chúng).
cách ưa thích của tôi vì điều này tránh mở một cửa sổ mới - và cũng giữ trạng thái phiên bất kỳ mà tôi đã có trong một trình duyệt đang mở. –
w3wp.exe trong IIS 7. –
w3wp.exe cũng cho IIS 6 (trong Server 2003) –
Gỡ lỗi -> Đính kèm quy trình từ menu VS.
Để biết mà W3Wp.Exe quá trình để đính kèm bạn có thể sử dụng lệnh sau trên máy chủ
c:\%systemroot%\system32\inetsrv\appcmd list wp
2008 Trong khi trên cửa sổ 2003 nó là
c:\%systemroot%\system32\cscript iisapp.vbs
Để biết thêm thông thấy IIS Application pool PID.
Tuy nhiên nếu bạn có quyền truy cập trình quản lý tác vụ (taskmgr.exe), bạn có thể xem trực tiếp tên của quy trình cùng với ID tiến trình và trong hầu hết các trường hợp, cột "tên người dùng" của quy trình sẽ giống như tên nhóm ứng dụng, (tất nhiên bạn phải đặt các cột này hiển thị trong trình quản lý tác vụ để xem thông tin). Tuy nhiên, lưu ý rằng tất cả các phương pháp sẽ chỉ hiển thị các quy trình hiện đang chạy, có nghĩa là nếu quá trình cụ thể của bạn đã tắt do thời gian không sử dụng, trước tiên bạn phải sử dụng trang web để đưa quá trình này lên. trong danh sách.
Ngoài ra nếu ứng dụng là "Web Garden" (có nhiều hơn một w3wp.exe) thì ngay cả sau khi đính kèm đúng quy trình vẫn không đảm bảo rằng điểm ngắt sẽ bị truy cập, vì lưu lượng truy cập đến trang web có thể được chuyển hướng đến một quy trình khác. Cũng lưu ý rằng nếu bạn đính kèm vào một ứng dụng chạy trong chế độ phát hành, bây giờ nó sẽ chạy trong chế độ gỡ lỗi, có nghĩa là sẽ không có giới hạn thời gian chờ (có thể là một vấn đề nếu bạn đang thực sự cố khắc phục lỗi hết thời gian chờ).
Nếu bạn muốn đính kèm vào một quá trình từ xa ở đây là thực hành tốt nhất:
- Hãy chắc chắn rằng các bức tường lửa không chặn bằng cách mở các cổng tương ứng hoặc hoàn toàn vô hiệu hóa nó (chỉ cần nhớ để biến nó trên một lần nữa khi thực hiện).
- Bạn phải có tài khoản miền cửa sổ có quyền quản trị trên máy từ xa hoặc có tài khoản - với tên người dùng và mật khẩu giống như máy cục bộ đang chạy VS - trên máy từ xa.
- Trên máy có cài đặt VS điều hướng đến (Đường dẫn cài đặt Visual Studio) \ Microsoft Visual Studio (số phiên bản hiện tại) \ Common7 \ IDE \ Remote Debugger (Phiên bản máy từ xa) và sao chép và dán thư mục này vào điều khiển từ xa máy hoặc chia sẻ thư mục này để có thể truy cập từ máy từ xa.
- Trên máy từ xa đăng nhập với tư cách người dùng giống với máy cục bộ (xem bước 2) từ đó điều hướng đến thư mục được sao chép hoặc chia sẻ của bước 3 và nhấp chuột phải vào "msvsmon.exe" và từ trình đơn ngữ cảnh chọn "Run As Administrator".
- Màn hình từ xa sẽ khởi động và tuyên bố rằng nó bắt đầu một máy chủ thường bằng tên (người dùng) @ (máy từ xa) hoặc bất kỳ tên nào khác.
- Trong VS chọn Gỡ lỗi -> Đính kèm vào Quy trình từ trình đơn, để giao thông trên "Mặc định" và "Tên công cụ" nhập tên từ bước 5.
Nếu mọi thứ diễn ra chính xác, điều này sẽ hiển thị danh sách các quy trình trên máy từ xa.
Tất nhiên có nhiều hơn trong chủ đề này và để gỡ lỗi mã gốc có thể đơn giản hơn, nhưng các bước tôi đã liệt kê ở đây sẽ hoạt động trong mọi trường hợp.
Để biết thêm thông tin, bạn có thể xem http://www.codeproject.com/KB/aspnet/IISRemoteDebugging.aspx hoặc trên MSDN cũng như nhiều bài đăng trên trang web này.
Hy vọng điều này sẽ hữu ích.
Hoặc bạn có thể sử dụng one of the Attach to IIS plugins cho Visual Studio.
Tiện ích mở rộng ưa thích của tôi là VSCommands (cho VS 2010 - 2012 hoặc 2013, nhưng chưa phải 2015).
- 1. Làm cách nào để đính kèm quy trình vào trình gỡ lỗi trong Visual Studio?
- 2. Làm thế nào để đính kèm trình gỡ lỗi IDE Rubymine vào một quá trình shell?
- 3. Cách đính kèm trình gỡ lỗi khi tạo quy trình?
- 4. Cách đính kèm trình gỡ lỗi động vào một quy trình cụ thể
- 5. visual studio: đính kèm trình gỡ rối mà không bắt đầu gỡ lỗi web
- 6. Làm thế nào để đính kèm trình gỡ rối vào một subproccess python?
- 7. Trình gỡ lỗi Lua có thể đính kèm vào Quy trình
- 8. Gỡ lỗi Silverlight; không đính kèm quy trình
- 9. Tắt Visual Studio Đính kèm cảnh báo bảo mật khi gỡ lỗi IIS
- 10. Không thể đính kèm vào quy trình
- 11. Cách đính kèm nguồn Android vào Eclipse?
- 12. Có thể đính kèm phiên gỡ lỗi vào chương trình đang chạy trong eclipse CDT
- 13. Tự động đính kèm quy trình con vào Visual Studio trong khi gỡ lỗi
- 14. Visual studio Đính kèm trình gỡ rối vào dịch vụ cửa sổ - đính kèm màu xám ra
- 15. ASP.NET Development Server - vị trí logfile
- 16. Cách đợi cho đến khi trình gỡ lỗi .NET từ xa đính kèm
- 17. Có thể đính kèm trình gỡ rối vào tiến trình PHP đang chạy không?
- 18. Đính kèm trình gỡ lỗi vào ứng dụng iOS sau khi khởi chạy
- 19. Mã C# rất chậm với trình gỡ lỗi đính kèm; Lỗi của MemoryMappedFile?
- 20. C# - Cách tiếp tục sau khi không đính kèm trình gỡ lỗi - System.Diagnostics.Debugger.Launch()
- 21. Làm cách nào để tôi có thể tạo Visual Studio Macro để đính kèm trình gỡ lỗi vào tất cả các phiên bản của w3wp.exe?
- 22. Asp.Net: Trang web gỡ lỗi trong iis
- 23. "Không thể bắt đầu gỡ lỗi" - VS2010 ASP.NET MVC 2
- 24. Làm cách nào để đính kèm 2 trình xử lý vào cùng một sự kiện?
- 25. Làm cách nào để kéo và thả tệp đính kèm vào trình duyệt?
- 26. Cách đính kèm menu ngữ cảnh vào trình duyệt TChromium
- 27. Gỡ lỗi: Đính kèm Quy trình cho Ứng dụng Console chạy bên trong cmd.exe
- 28. Phát hiện nếu Trình gỡ lỗi được đính kèm trong VB6
- 29. Để sử dụng? Visual Studio Development Server hoặc máy chủ Web IIS cục bộ?
- 30. Gọi tốc độ độc đáo chậm khi có trình gỡ lỗi được đính kèm (msvc)
Điều này chỉ hoạt động đối với máy chủ IIS cục bộ, phải không? Không thể triển khai/chạy/đính kèm với quy trình công nhân trên máy chủ IIS từ xa theo cách đó? (Tôi hỏi điều này, bởi vì tôi muốn có thể làm điều đó, nhưng đã không tìm thấy một phương pháp hợp lý để làm như vậy). –
Có, chỉ ở địa phương. Tôi nghĩ rằng để làm những gì bạn đang tìm kiếm sẽ yêu cầu bạn xuất bản trang web, sau đó đính kèm vào quá trình trên máy từ xa. yêu cầu cài đặt trình gỡ lỗi từ xa và có thể là một số vấn đề về bảo mật. Không vui ... – StingyJack
Đính kèm quá trình nằm trong menu "Công cụ" – Shiham