Tôi cần chuyển đổi mã IL thành C#. Tôi có một hội đồng và tôi đang đọc hội đồng này. Tôi lấy MethodBody từ MethodInfo và methodbody có phương thức GetILAsByteArraY() trả về một mảng byte bây giờ tôi muốn chuyển đổi mã IL thành C# này. Hãy giúp tôi giải quyết vấn đề này.Chuyển đổi IL thành mã C#
Trả lời
Không phát minh lại bánh xe; sử dụng Lutz Roeder's .NET Reflector.
Nó không phải là Lutz 'nữa. – Will
Tôi nghĩ rõ ràng là anh ấy đang cố gắng tạo ra một bánh xe khác giống như của .NET Reflector và anh ấy muốn biết nó được tạo ra như thế nào. Lutz không nhất thiết phải là người duy nhất trên thế giới biết cách làm. –
@HasanKhan đưa ra lựa chọn câu trả lời của OP, anh rất hài lòng với Lutz là người đàn ông duy nhất :) – nawfal
Hãy xem nếu tôi quản lý để có được nó trong đầu tiên: .NET Reflector! Điều này thực sự phải là Câu hỏi thường gặp ...
Bạn không thể làm điều này với Reflector?
Bạn có thể nạp một assembly và xem nó như là VB.net/C#/IL ...
Bạn chỉ nên sử dụng .NET Reflector nếu bạn có lắp ráp. Ngoài ra, hãy thử file gen addon.
Không có công cụ nào trong BCL sẽ thực hiện việc này; tuy nhiên, có một công cụ tuyệt vời được gọi là Reflector, mà bạn có thể viết các trình bổ sung của riêng mình. Vì vậy, bạn có thể sử dụng bằng cách này để lấy dữ liệu bạn muốn.
Reflector thực hiện việc này. Có lẽ bạn có thể sử dụng Reflector đối với Reflector và tìm hiểu cách nó xử lý vấn đề.
Bạn cũng có thể nói lý do bạn muốn thực hiện việc này - có thể có giải pháp tốt hơn cho vấn đề tổng thể của bạn.
Phản xạ nội bộ bị làm mờ bằng cách sử dụng không in được (ít nhất là lutz đã làm điều đó). Trong khi có bạn có thể phản ánh về chính nó một câu hỏi tốt hơn sẽ là nó thực sự có giá trị mà ... – JoshBerke
Vâng, đó là những gì tôi nghi ngờ. Đó là lý do tại sao tôi hỏi anh ấy tại sao anh ấy muốn làm điều đó. –
Có lẽ bạn nên thử Dis # nếu bạn không muốn phát minh lại ... Nó gần như là công cụ tốt nhất để chuyển đổi mã NetDASM có công cụ cho phép bạn chuyển đổi C# thành IL. có lẽ bạn nên xem xét điều đó.
Tái phát minh ra bánh xe chắc chắn là một cách tốt hơn để tìm hiểu! bạn sẽ phải tạo lớp của riêng mình để chuyển đổi iL thành C#. Điều này đòi hỏi kiến thức về ngôn ngữ trung gian.
Tôi giả sử bạn đã chuyển đổi các mảng byte để hướng dẫn IL giống như chúng ta thấy trong Ildasm.exe, Sử dụng Reflection.Emit.OpCodes, OpCode.OperandType, BitConvertor.ReadByte(), BitConvertor.ReadInt32, vv
Nếu bạn muốn tự mình làm, bạn có thể bắt đầu từ Cecil.Decompiler cũ và tăng cường nó, xem the source code và an old post of Jb. Evain announcing the project (Liên kết xuống).
Cả hai liên kết đều bị hỏng. –
Cố định cái đầu tiên, không thể làm bất cứ điều gì về cái thứ hai vì tôi không biết tại sao anh ta đặt blog của anh ấy lên mạng ngay cả khi anh ta vẫn tham khảo nó trên twitter. –
Đối với những người có công cụ tìm kiếm, Reflector không còn miễn phí nữa. Nhưng công cụ MIỄN PHÍ mới hơn và tốt hơn đang được cung cấp từ telerik có tên là JustDecompile. Tôi chỉ cần tải về điều này và nó rất tuyệt vời và chỉ là bản beta của nó. Rõ ràng telerik hứa hẹn miễn phí mãi mãi.
Phản xạ Lutz Roeder đã được mua và không còn có sẵn để tải xuống miễn phí.
Hiện tại, công cụ miễn phí (một lần nữa) được gọi là ILSpy. Tôi đã tìm thấy nó là rất tốt, và nó sẽ không chỉ tạo ra mã C# từ IL, nhưng cũng sẽ tạo ra một dự án .csproj
nếu biên dịch toàn bộ một hội đồng DLL.
- 1. Chuyển đổi mã R thành mã C
- 2. Chuyển đổi mã Fortran 77 thành C++
- 3. Kích cỡ IL cho mã Xamarin C#?
- 4. Cách chuyển Mã C++ thành C
- 5. Chuyển đổi mã vòng tròn HSV từ Delphi thành C#
- 6. Gstreamer - Chuyển đổi dòng lệnh gst-launch thành mã C
- 7. Cách dễ dàng để chuyển đổi mã c thành x86?
- 8. C#: Chuyển đổi byte [] thành chuỗi được mã hóa UTF8
- 9. Chuyển đổi Matlab thành C++
- 10. Chuyển đổi Ruby thành C#
- 11. Chuyển đổi mã C99 thành C89
- 12. Mã hóa nào c32rtomb chuyển đổi thành?
- 13. Mã C# không được biên dịch có biên dịch thành IL và chạy trên CLR không?
- 14. Chuyển đổi Java thành mục tiêu C
- 15. Chuyển đổi đôi thành chuỗi trong C++
- 16. Chuyển đổi gấp đôi thành chuỗi C++?
- 17. C Chuyển đổi char thành char *
- 18. Tự động chuyển đổi mã Scala thành mã Java
- 19. Chuyển đổi mã khóa ảo thành mã unicode
- 20. Mỗi chương trình C Mục tiêu có được chuyển đổi thành mã C không?
- 21. Có công cụ nào để chuyển đổi mã nguồn c/C++ thành html không?
- 22. C# Phương pháp động - IL vs cây biểu hiện
- 23. Chuyển đổi thư viện C# thành MSTest
- 24. Chuyển đổi Delphi Real48 thành C# double
- 25. Chuyển đổi size_t thành số nguyên (C++)
- 26. C++ chuyển đổi char thành const char *
- 27. Chuyển đổi JavaScript Regex thành C#
- 28. Chuyển đổi chuỗi thành nổi trong C#
- 29. chuyển đổi byte thành chuỗi C#
- 30. Chuyển đổi json thành mảng C#?
Quyết định nhất trí! –
Bạn cần điều này để làm gì? Nếu bạn mô tả tình huống của mình một cách chi tiết hơn, có lẽ chúng tôi có thể đề xuất nhiều hơn .NET Reflector. –
@Anton Có lẽ chúng ta sẽ không thể hiểu được tin tặc này. –