Một cái gì đó tốt hơn so với .NET Reflector? [đóng cửa]


365

Tôi đã từng yêu thích .NET Reflector ngày trước, nhưng kể từ khi Red Gate Software tiếp quản nó đã xuống dốc nghiêm trọng. Bây giờ nó buộc tôi phải cập nhật (điều này hoàn toàn vô lý), một nửa thời gian cập nhật không suôn sẻ và nó ngày càng cản trở năng suất của tôi với mỗi bản cập nhật. Tôi phát ốm vì nó, và tôi đã sẵn sàng cho điều gì đó tốt hơn. Có một trình phân tách tốt hơn?


Cập nhật:

Danh sách các lựa chọn thay thế được đề cập trong câu trả lời -


5
Vấn đề chính: mỗi khi tôi cần sử dụng nó để thoát khỏi tình trạng kẹt, nó phải cập nhật!
Josh Stodola

152
+1, Reflector đã làm mọi thứ tôi cần 3 năm trước. Cho đến nay, đây là chương trình duy nhất tôi từng sử dụng tự tắt nếu tôi không để nó cập nhật khi muốn. Redgate đã lấy một phần mềm tuyệt vời và phá hỏng nó. Nó có thể miễn phí, nhưng nhờ thái độ đáng ghét này, Redgate đã đảm bảo tôi sẽ không mua hoặc giới thiệu bất kỳ phần mềm nào của họ nữa.
Tro

15
Có vẻ như chủ đề này đã đạt được một số cuộc sống mới, bây giờ RedGate đang yêu cầu tối thiểu 35 đô la cho những gì từng là phiên bản miễn phí của Reflector. Ngày buồn ... ngày buồn thật. Hy vọng rằng cộng đồng .NET có thể đưa ra một đối thủ cạnh tranh FOSS chất lượng và cho phép chúng tôi thoát khỏi sự phản bội (không thực sự đáng ngạc nhiên) của RedGate.
jrista

6
+1 - Red Gate hứa sẽ không hủy hoại nó nhưng có vẻ như họ có. Tôi không chạy nó nhiều và vì vậy phải cập nhật mỗi khi tôi làm. Nhưng nó không cho tôi biết điều đó - nó chỉ hỏi liệu nó có nên cập nhật tự động không. Khi tôi nói 'Không', nó dường như không làm gì cả. Khi tôi nói 'Có', nó tải xuống và giải nén một cái gì đó và sau đó đưa ra một lỗi mà Reflector.exe không thể truy cập được vì nó đang được sử dụng!
Jonathan Wood

71
Công bằng mà nói, chúng ta không thể nói Red Gate đã hoàn thành công việc trên phần mềm. Tôi đang sử dụng phiên bản trả phí và tôi nhận thấy họ đã thực hiện rất nhiều công việc để làm cho nó chậm hơn nhiều so với trước đây.
Ryan Lundy

Câu trả lời:


169

Ngoài ra hãy xem ILSpy của SharpDevelop . Đó là trong giai đoạn đầu phát triển và họ vừa phát hành vào ngày 24 tháng 2. Điều đó tự nó hoạt động khá tốt cho tôi. Từ trang web của họ:

ILSpy là trình duyệt và dịch ngược biên dịch mã nguồn mở .NET.

Sự phát triển bắt đầu sau khi Red Gate thông báo rằng phiên bản .NET Reflector miễn phí sẽ ngừng tồn tại vào cuối tháng 2 năm 2011.

Cập nhật : JetBrains đã phát hành dotPeek, trình dịch ngược .NET miễn phí .

Cập nhật 2 : Telerik cũng có trình dịch ngược miễn phí: JustDecompile .


2
Chỉ cần thử nó ra. Làm việc như người ở. Nhận các tệp nhị phân tại build.sharpdevelop.net/BuildArtefacts/#ILSpy
StriplingWar Warrior

3
ILSpy FTW. Có phải tất cả mọi thứ tôi cần Reflector để làm và thực hiện nó mà không cần chỉnh thời gian hoặc tự động cập nhật lên phiên bản mới hoạt động kém hơn phiên bản trước.
Ian Kemp

2
ILSpy chắc chắn ngang hàng với Reflector. dotPeek mất nhiều thời gian hơn để tải và kích thước tải xuống hơi cao. Và nó sử dụng khoảng trắng để thụt lề thay vì các tab (và không có tùy chọn cấu hình để thay đổi)! : D +1
James Skemp

1
Vàng thuộc về ILSpy, bạc dành cho dotPeek và đồng dành cho JustDecompile.
năm11 lúc 21 giờ 34 phút

2
RedGate làm tôi thất vọng với việc tăng giá khá lớn và không có tùy chọn paypal. Khi tôi lần đầu tiên nhìn nó có giá £ 20 cho phiên bản cơ bản. Bây giờ là £ 65 và nhiều hơn gấp đôi cho tích hợp VS.
Richard Griffiths

62

JetBrains sẽ thêm một trình dịch ngược vào ReSharper của nó và cũng phát hành một trình dịch ngược độc lập.

Tin vui là chúng tôi đang chuẩn bị một ứng dụng nguồn nhị phân độc lập, tức là trình duyệt dịch ngược + trình duyệt để khám phá bất kỳ mã biên dịch .NET nào là hợp pháp để khám phá. Chúng tôi không có bất kỳ ngày cụ thể nào để phát hành, nhưng nó sẽ được phát hành trong năm nay và nó sẽ miễn phí. Và bằng cách nói, miễn phí, chúng tôi thực sự có nghĩa là miễn phí.

Đây là nhiều thông tin hơn.

CẬP NHẬT: JetBrains hiện đã phát hành sản phẩm có tên dotPeek và nó có thể được tìm thấy ở đây .


2
Tôi vừa cho ReSharper 6 EAP (phát hành ngày 1 tháng 3 năm 2011). Việc dịch ngược là ở đó, hoạt động rất tốt và rất tiện lợi vì nó được tích hợp ngay vào VS2010. Âm thanh giống như một phiên bản MIỄN PHÍ độc lập sắp ra mắt, nhưng đối với những bạn đã sử dụng ReSharper, v6 chắc chắn sẽ thêm tính năng dịch ngược hoạt động tuyệt vời!
jrista

2
Cập nhật: trình dịch ngược độc lập miễn phí của JetBrains có tên dotPeek đã được phát hành để truy cập sớm.
Jura Gorohovsky

31

Theo tôi, có ba lựa chọn thay thế nghiêm trọng để theo dõi, tất cả đều miễn phí :

  • ILSpy : Đây là từ cùng những người tạo ra SharpDevelop IDE (cũng miễn phí). Cũng như miễn phí, nó cũng là nguồn mở. Một phần mở rộng bổ sung mà họ đang làm việc là khả năng gỡ lỗi mã dịch ngược (điều mà phiên bản pro của Reflector có thể làm), hoạt động rất tốt.
  • JustDecompile : Trình dịch ngược độc lập từ Telerik (được công bố hôm nay, hiện đang ở bản Beta).
  • dotPeek : Trình dịch ngược độc lập từ JetBrains (có sẵn độc lập như một phần của EAP tại thời điểm này).

Tất cả những cách tiếp cận vấn đề này theo những cách hơi khác nhau với các UI khác nhau. Tôi sẽ đề nghị cho họ thử tất cả và xem bạn thích cái nào hơn.


4
+1 Đối với JustDecompile, có vẻ rất hứa hẹn!
Josh Stodola

1
JustDecompile là tuyệt vời. Tôi đã thử nhiều thứ khác, nó thật tuyệt!
Shimmy Weitzhandler

13

Một số người khác không được đề cập ở đây -

  • Mono Cecil : Với Cecil, bạn có thể tải các hội đồng được quản lý hiện có, duyệt tất cả các loại có trong đó, sửa đổi chúng một cách nhanh chóng và lưu lại vào đĩa lắp ráp đã sửa đổi.

  • Kaliro : Đây là một công cụ để khám phá nội dung của các ứng dụng được xây dựng bằng khung Microsoft.Net.

  • Dotnet IL Editor (DILE) : Dotnet IL Editor (DILE) cho phép tháo gỡ và gỡ lỗi các ứng dụng .NET 1.0 / 1.1 / 2.0 / 3.0 / 3.5 mà không cần mã nguồn hoặc tệp .pdb. Nó có thể gỡ lỗi ngay cả chính nó hoặc các cụm của .NET Framework ở cấp độ IL.

  • Cơ sở hạ tầng trình biên dịch chung : Nghiên cứu của Microsoft Cơ sở hạ tầng trình biên dịch chung (CCI) là một bộ thư viện và giao diện lập trình ứng dụng (API) hỗ trợ một số chức năng phổ biến cho trình biên dịch và các công cụ lập trình liên quan. CCI được sử dụng chủ yếu bởi các ứng dụng tạo, sửa đổi hoặc phân tích các tệp thực thi di động (PE) và gỡ lỗi (PDB) .NET.


8

Mã nguồn .NET hiện có sẵn.

Xem liên kết này hoặc này

Hoặc nếu bạn tìm kiếm một trình dịch ngược, tôi đã sử dụng DisSharper . Nó là đủ tốt cho tôi.


Mát mẻ. Có ai tìm thấy liên kết thực sự để tải về?
Jonathan Wood

6
Đó là cho các khu vực hạn chế của Khung. Chắc chắn không phải là sự thay thế cho trình dịch ngược
CamronBute

6

Phiên bản mới nhất từ ​​Red Gate là 6.1. Tuy nhiên, phiên bản 5.1 không thể tự động cập nhật lên phiên bản 6 vì đã có thay đổi Điều khoản dịch vụ, vì vậy thay vào đó bạn được chuyển hướng đến trang web để tải xuống phiên bản 6.1. Điều này chủ yếu là vì lý do pháp lý vì bạn có thể kiểm tra trong bài sau:

Ôi! Điều gì đang xảy ra với cơ chế cập nhật .NET Reflector?

Sau khi bạn cập nhật thủ công lên 6.1, bạn sẽ không còn gặp phải bất kỳ sự cố nào nữa.


6
Nếu giải pháp duy nhất là nâng cấp, thì tôi đang tìm một sản phẩm khác. Chân đã xuống :)
Josh Stodola

5
Một số người hài lòng với Phiên bản X, tại sao tất cả các bản cập nhật phải có hiệu lực? Đây dường như là một vấn đề phổ biến với phần mềm gần đây.
Eric Schneider

4
@drachenstern: vì hóa ra sản phẩm sẽ không còn miễn phí nữa, người ta có thể mong đợi rằng khi Red Gate tiếp quản Reflector. Vấn đề là các sản phẩm của Red Gate đắt tiền và chúng không có sơ đồ giá cho các nhà phát triển riêng lẻ. Bây giờ, RG cho biết Reflector sẽ có giá 35 đô la nhưng tôi nghĩ đây mới chỉ là khởi đầu và nó sẽ có giá cao hơn nhiều. Điều đáng buồn là điều này sẽ làm giảm sự thâm nhập "thị trường" cho Reflector mà qua nhiều năm là một công cụ tiêu chuẩn cho các nhà phát triển .NET. Hy vọng ai đó sẽ làm việc trên một thay thế OSS.
Piotr Owsiak

4
@drachenstern, đó không phải là vấn đề giá cả. Đó là thực tế rằng họ đã nói lại để giữ cho sản phẩm miễn phí. Họ sẽ nói dối về cái gì nữa? 35 đô la là "giấy phép vĩnh viễn", họ nói ... nhưng trong bao lâu? Cho đến khi họ bỏ lỡ kết quả hàng quý của họ một lần nữa và quyết định thay đổi nó?
Ryan Lundy

2
@drachenstern: Tôi đã biết nhận xét của bạn là vài tháng trước, tôi muốn chỉ ra rằng những gì đang diễn ra sau đó phù hợp với toàn bộ tình huống hiện nay. Tôi không nói RedGate là xấu xa, mặc dù trong trường hợp cụ thể này cần phải chỉ ra rằng họ nói rằng họ sẽ giữ Reflector miễn phí. Điều tôi đã cố gắng nói là 35 đô la và thậm chí 70 đô la không phù hợp với chương trình định giá với các công cụ còn lại của họ và tôi thực sự lo lắng Reflector sẽ trở nên khá đắt theo thời gian. Mặc dù tôi có thể mua nó, nhưng tôi sẽ không còn có thể nói với các đồng nghiệp của mình: "Này, cứ lấy Reflector!"
Piotr Owsiak

4

Thay vì sử dụng autoupdater, chúng tôi chỉ đặt các thuộc tính của tệp EXE thành chỉ đọc. Bằng cách đó, nó không xóa tập tin.


2

Tôi không chắc chắn những gì bạn thực sự muốn ở đây. Nếu bạn muốn xem mã nguồn .NET framework, bạn có thể dùng thử Netmassdoader . Nó miễn phí.

Nếu bạn muốn xem bất kỳ mã nào của hội đồng (không chỉ .NET), bạn có thể sử dụng ReSharper . Mặc dù nó không miễn phí.


2
Mã? Thay vì chỉ định nghĩa kiểu, phải không?
Piotr Owsiak

bạn cần một cụm lớn để chạy chia sẻ lại, một số người trong chúng tôi muốn mã hóa trên máy tính xách tay)
Ivan G.

1

9 Trả lời đã từng có trình dịch ngược, nhưng tôi đã không kiểm tra trong một thời gian. Nó không miễn phí, tôi nhớ ...

Ngoài ra còn có một cái mới (ít nhất là đối với tôi) có tên Dis #.

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.