飘云阁

 找回密码
 加入我们

QQ登录

只需一步,快速开始

查看: 9367|回复: 22

[.NET] .Net反编译和调试神器 DnSpyv1.5

[复制链接]
  • TA的每日心情
    郁闷
    2021-7-31 10:39
  • 签到天数: 67 天

    [LV.6]常住居民II

    发表于 2015-12-26 17:40:20 | 显示全部楼层 |阅读模式
    BAML to XAML decompiler
    Speed up treeview and text editor scrolling. Must be enabled in the settings. Doesn't support word wrapping or some characters (eg. chinese characters).
    和de4dot的作者是同一人,NET程序动态调试工具,值得大家使用。使用参考文章:(
    用dnSpy破译某旅游系统5.2版)
    http://www.myexception.cn/c-sharp/2030174.html
    下载地址:https://github.com/0xd4d/dnSpy/releases
    源代码下载地址:https://github.com/0xd4d/dnSpy/releases
    BinariesFeatures
    • Assembly editor
    • Decompiler
    • Debugger
    • Tabs and tab groups
    • Themes (blue, dark, light and high contrast)
    Themes
    dnSpy looks for *.dntheme files in the <dnSpy-bin-dir>\dntheme directory and the user's %APPDATA%\dnSpy\dntheme directory. If you wish to override a standard theme, copy the file to %APPDATA%\dnSpy\dntheme and edit the file.
    Keyboard shortcutsKeyDescription
    Ctrl+F(Text view) Search
    F3(Text view) Find next match
    Shift+F3(Text view) Find previous match
    ESC(Text view) Remove selected markers or close search box
    BackspaceNavigate back in history
    Alt+Left ArrowNavigate back in history
    Alt+Right ArrowNavigate forward in history
    F5(Debugger) Debug an assembly
    Ctrl+F5(Debugger) Start without debugging
    F5(Debugger) Continue debugging
    Shift+F5(Debugger) Stop debugging
    Ctrl+Shift+F5(Debugger) Restart debugged program
    F9(Text view) Toggle breakpoint at caret
    Ctrl+F9(Text view) Toggle enable/disable breakpoint at caret
    Ctrl+Shift+F9Delete all breakpoints
    F10(Debugger) Step over
    Ctrl+Shift+F10(Debugger) Set next statement
    F11(Debugger) Step into next method
    Shift+F11(Debugger) Step out of current method
    Ctrl+Pause(Debugger) Break
    Alt+*(Debugger) Show next statement
    Ctrl+D(Text view) Go to token
    Ctrl+Shift+D(Text view) Go to MD table row
    Shift+Alt+R(Text view) Go to highlighted reference's MD table row
    Ctrl+G(Text view) Go to line
    Ctrl+X(Text view) Show current instruction in hex editor or open hex editor
    Ctrl+TOpen a new tab
    Ctrl+WClose current tab
    Ctrl+F4Close current tab
    Ctrl+TabGo to next tab
    Ctrl+Shift+TabGo to previous tab
    Ctrl+KOpen search pane
    Ctrl+T(Search pane) Select Type
    Ctrl+M(Search pane) Select Member
    Ctrl+S(Search pane) Select Literal
    Alt+Enter(Text view, Tree view) Edit current type, method, field, etc
    F12(Text view) Follow reference at caret
    Enter(Text view) Follow reference at caret
    Ctrl+F12(Text view) Follow reference at caret in a new tab
    Ctrl+Enter(Text view) Follow reference at caret in a new tab
    Ctrl+Click(Text view) Follow the clicked reference in a new tab
    Ctrl+Alt+W(Text view) Toggle word wrap
    Shift+Dbl Click(BP/Call stack/Search/etc windows) Open BP/method/etc in a new tab
    Ctrl+C(Text view) Copy selected text
    Ctrl+B(Text view, IL language) Copy selected lines as IL hex bytes
    Ctrl+E(Text view) Edit IL instructions
    Ctrl+SSave code
    Ctrl+Shift+SSave all modified assemblies and netmodules
    Ctrl+OOpen assembly
    Ctrl+Z(Assembly Editor) Undo
    Ctrl+Y(Assembly Editor) Redo
    Ctrl+Shift+Z(Assembly Editor) Redo
    Ctrl++(Text view) Zoom In
    Ctrl+-(Text view) Zoom Out
    Ctrl+0(Text view) Zoom Reset
    Ctrl+Scroll Wheel(Text view) Zoom In/Out
    Alt+Click(Text view) Don't follow the clicked reference so it's possible to start selecting text without being taken to the definition. References are only followed if none of Ctrl, Alt and Shift are pressed or if Ctrl is pressed.
    F7Give text editor keyboard focus
    Ctrl+Alt+0Give text editor keyboard focus
    Ctrl+Alt+LGive tree view keyboard focus
    Ctrl+Alt+B(Debugger) Show Breakpoints window
    Alt+F9(Debugger) Show Breakpoints window
    Ctrl+Alt+C(Debugger) Show Call Stack window
    Alt+7(Debugger) Show Call Stack window
    Ctrl+Alt+H(Debugger) Show Threads window
    Ctrl+Alt+U(Debugger) Show Modules window
    Ctrl+Alt+E(Debugger) Show Exceptions window
    Alt+4(Debugger) Show Locals window
    Alt+6(Debugger) Show Memory 1 window
    Ctrl+Alt+1(Debugger) Show Memory 1 window
    Ctrl+Alt+2(Debugger) Show Memory 2 window
    Ctrl+Alt+3(Debugger) Show Memory 3 window
    Ctrl+Alt+4(Debugger) Show Memory 4 window
    Shift+Alt+EnterToggle full screen mode
    Tab(Text view) Move to the next reference. Does nothing if the caret is not on a reference.
    Shift+Tab(Text view) Move to the previous reference. Does nothing if the caret is not on a reference.
    N(Method Editor) Nop instruction
    I(Method Editor) Invert branch
    B(Method Editor) Convert to unconditional branch
    P(Method Editor) Remove instruction and add an equal number of pops that the original instruction popped
    S(Method Editor) Simplify instructions, eg. convert ldc.i4.8 to ldc.i4 with 8 as operand
    O(Method Editor) Optimize instructions, eg. convert ldc.i4 with 8 as operand to ldc.i4.8
    F(Method Editor) Add a new instruction before selection
    C(Method Editor) Add a new instruction after selection
    A(Method Editor) Append a new instruction
    U(Method Editor) Move selection up
    D(Method Editor) Move selection down
    Del(Method Editor) Remove selected instructions
    Ctrl+Del(Method Editor) Remove all instructions
    Ctrl+T(Method Editor) Copy selection as text
    Ctrl+X(Method Editor) Cut selected instructions
    Ctrl+C(Method Editor) Copy selected instructions
    Ctrl+V(Method Editor) Paste instructions
    Ctrl+Alt+V(Method Editor) Paste instructions after selection
    Ctrl+M(Method Editor) Copy operand's MD token
    Ctrl+R(Method Editor) Copy RVA of instruction
    Ctrl+F(Method Editor) Copy file offset of instruction
    Ctrl+R(Text view) Analyze reference at caret
    Tab(Hex editor) Switch caret from hex bytes to ASCII or back
    Ctrl+C(Hex editor) Copy binary data
    Ctrl+Shift+8(Hex editor) Copy UTF-8 encoded data
    Ctrl+Shift+U(Hex editor) Copy Unicode encoded data
    Ctrl+Shift+P(Hex editor) Copy data as a C# array
    Ctrl+Shift+B(Hex editor) Copy data as a VB array
    Ctrl+Shift+C(Hex editor) Copy hex editor screen contents
    Ctrl+Alt+O(Hex editor) Copy offset
    Ctrl+G(Hex editor) Go to offset
    Ctrl+8(Hex editor) Paste (UTF-8)
    Ctrl+U(Hex editor) Paste (Unicode)
    Ctrl+B(Hex editor) Paste (#Blob data with compressed length)
    Ctrl+L(Hex editor) Show 'Select' dialog box
    Ctrl+D(Hex editor) Show only the selected bytes
    Ctrl+Shift+D(Hex editor) Show all bytes
    Ctrl+Alt+S(Hex editor) Save selectionCredits
    For license info, authors and other credits, see README.txt.
    Build instructions
    First grab the code using git:
    git clone https://github.com/0xd4d/dnSpy.gitcd dnSpygit submodule update --init --recursive
    Use Visual Studio 2010 or later or run debugbuild.bat / releasebuild.bat to build it once you have all dependencies. You probably don't need Visual Studio installed to run the *.bat files. The C# compiler is usually installed if you have the .NET Framework installed. Otherwise, download and install Microsoft Build Tools.
    Dependencies
    The git command above should've downloaded the correct versions. If you can't use git, grab the code from these links. dnlib must have THREAD_SAFE defined when you compile it.

    评分

    参与人数 6威望 +80 飘云币 +68 收起 理由
    expasy + 4 很给力!
    netle8 + 4 很给力!
    waddt123 + 4 PYG有你更精彩!
    冷月孤心 + 40 + 40 PYG有你更精彩!
    pentium450 + 20 + 20 很给力!
    0xcb + 8 + 8 赞一个!

    查看全部评分

    PYG19周年生日快乐!
  • TA的每日心情
    开心
    1 小时前
  • 签到天数: 1275 天

    [LV.10]以坛为家III

    发表于 2015-12-26 19:30:11 | 显示全部楼层
    看样子,不错的。可惜下载不了、、
    PYG19周年生日快乐!
  • TA的每日心情
    奋斗
    2021-9-29 15:05
  • 签到天数: 114 天

    [LV.6]常住居民II

    发表于 2015-12-26 21:06:21 | 显示全部楼层
    de4dot用的多,这个应该是这半年作者才发力的,给力呀,wpf还有春天吗,

    点评

    2015年7月开始投放的1.0版本。  详情 回复 发表于 2015-12-27 19:11
    PYG19周年生日快乐!
  • TA的每日心情
    郁闷
    2021-7-31 10:39
  • 签到天数: 67 天

    [LV.6]常住居民II

     楼主| 发表于 2015-12-26 21:13:38 | 显示全部楼层
    0xcb 发表于 2015-12-26 21:06
    de4dot用的多,这个应该是这半年作者才发力的,给力呀,wpf还有春天吗,

    作者是个牛人,更新得很快,而且出的工具都很给力

    点评

    已经去Star,并且Fork了一份,:D  详情 回复 发表于 2015-12-26 22:07
    PYG19周年生日快乐!
  • TA的每日心情
    奋斗
    2021-9-29 15:05
  • 签到天数: 114 天

    [LV.6]常住居民II

    发表于 2015-12-26 22:07:24 | 显示全部楼层
    105860103 发表于 2015-12-26 21:13
    作者是个牛人,更新得很快,而且出的工具都很给力

    已经去Star,并且Fork了一份,:D
    PYG19周年生日快乐!
  • TA的每日心情
    奋斗
    2020-7-31 08:47
  • 签到天数: 18 天

    [LV.4]偶尔看看III

    发表于 2015-12-27 01:20:46 | 显示全部楼层
    感谢楼主分享。
    PYG19周年生日快乐!
  • TA的每日心情
    无聊
    2016-7-4 13:30
  • 签到天数: 12 天

    [LV.3]偶尔看看II

    发表于 2015-12-27 03:02:27 | 显示全部楼层
    英文的。。。还是用.NET Reflector好了。。。
    PYG19周年生日快乐!
  • TA的每日心情
    开心
    1 小时前
  • 签到天数: 2088 天

    [LV.Master]伴坛终老

    发表于 2015-12-27 10:38:06 | 显示全部楼层
    不错,谢谢楼主分享
    PYG19周年生日快乐!
  • TA的每日心情
    开心
    2019-9-19 22:31
  • 签到天数: 61 天

    [LV.6]常住居民II

    发表于 2015-12-27 18:50:30 | 显示全部楼层
    学习一下吧。
    PYG19周年生日快乐!
  • TA的每日心情
    奋斗
    昨天 07:56
  • 签到天数: 1477 天

    [LV.10]以坛为家III

    发表于 2015-12-27 19:11:34 | 显示全部楼层
    0xcb 发表于 2015-12-26 21:06
    de4dot用的多,这个应该是这半年作者才发力的,给力呀,wpf还有春天吗,

    2015年7月开始投放的1.0版本。
    PYG19周年生日快乐!
    您需要登录后才可以回帖 登录 | 加入我们

    本版积分规则

    快速回复 返回顶部 返回列表