Visual Studio(VS) F12 查看DLL源代码

简介:



前言

我在VS中调试某个函数时,突发奇想“能不能使用VS的F12(转到定义)查看这个dll中当前函数的实现(源码),而不是像VS自带功能那样只能看到函数名和参数?”

回想起来在安装Resharp时,我注意到Resharp默认会勾选Dot Peek这个组件,并且家里的电脑在某次安装完Resharp之后,按12会发现有个选项自定义F12的行为,我选了Resharxxxx,之后惊喜地发现F12可以导航进DLL的源代码,但由于系统重装,我想不起来是做了什么特殊设置。

 

Dot Peek

今天在调试时,又有这个需求,想查看dll的源代码,我决定从dot peek这个程序入手去查找相关的资料

dot peek官网:https://www.jetbrains.com/decompiler/

从官网的简介来看它可以反编译.net 的dll,pdb为源代码,并能生成解决方案,但没有很明显介绍这货如何和vs紧密的结合起来,达到我需要的F12查看dll的源码

经过搜索,查找到这篇文章,豁然开朗:https://knowledge.zomers.eu/visualstudio/Pages/How-to-enable-the-decompiler-in-ReSharper-for-Visual-Studio.aspx

 

使用方法

resharper官网:https://www.jetbrains.com/resharper/

1、安装好Visual Studio,和Resharper(默认会勾选安装Dot peek)

2、打开VS,在菜单栏 选择 Resharper – Options ,打开Options窗口

3、在左侧列表中,选择 External Sources,勾选 Navigation to Sources – Decompile methods ,点击 Save

image

4、在第一次按下F12时,会弹出用户使用协议,选择接受就可。

如果这个dll在本地不存在,第一次按F12时,会联网从远程下载。

 

每当你按下F12时,就可以跳到dll中查看具体的代码实现啦。在每个类的头部,可以发现这么一段注释:

// Decompiled with JetBrains decompiler
// Type: TableML.TableFile
// Assembly: TableML, Version=0.7.6285.31046, Culture=neutral, PublicKeyToken=null
// MVID: E539F3DE-C53C-4567-99E9-7697E4765856
// Assembly location: D:\Git\xxx\TableML\TableML.dll

 

我的环境

说明:resharper 收费,dotpeek 免费

visual studio 2017 +  resharp 2017.1

visual studio 2015 + resharp 10.1



本文出自赵青青,原文链接:http://www.cnblogs.com/zhaoqingqing/p/6751757.html,如需转载请自行联系原作者

相关文章
|
1月前
|
编译器 C++
使用Visual Studio 2022 创建lib和dll并使用
本文介绍了如何在Visual Studio 2022中创建静态库(lib)和动态库(dll),并展示了如何使用这些库。文章详细说明了创建新项目、编写代码、生成库文件、配置项目属性以及编写测试代码的步骤,并提供了相应的截图和代码示例。作者还分享了在创建和使用库的过程中遇到的一些问题及其解决方案。
324 0
使用Visual Studio 2022 创建lib和dll并使用
|
3月前
|
JavaScript C++
【C++ visual studio】解决VS报错:error C2447: “{”: 缺少函数标题(是否是老式的形式表?)【亲测有效,无效捶我】
【C++ visual studio】解决VS报错:error C2447: “{”: 缺少函数标题(是否是老式的形式表?)【亲测有效,无效捶我】
166 0
|
6月前
|
IDE API 开发工具
visual studio 生成dll文件以及修改输出dll文件名称操作
visual studio 生成dll文件以及修改输出dll文件名称操作
274 0
|
开发框架 .NET 数据库
asp.net企业费用报销管理信息系统VS开发sqlserver数据库web结构c#编程Microsoft Visual Studio
asp.net 企业费用报销管理信息系统是一套完善的web设计管理系统,系统具有完整的源代码和数据库,系统主要采用B/S模式开发。开发环境为vs2010,数据库为sqlserver2008,使 用c#语言开发 应用技术:asp.net c#+sqlserver 开发工具:vs2010 +sqlserver
103 0
|
算法 C++
解决方案-Visual Studio生成库(DLL&LIB)以及如何调用
解决方案-Visual Studio生成库(DLL&LIB)以及如何调用
512 0
|
API 开发工具 C语言
适用于 Visual Studio 的 C++ 万能头持续更新版(VS 万能头)
此文件是 GCC 13.1.0 中 <bits/stdc++.h> 文件的修改版本,与 Visual Studio 兼容。
192 0
Visual Studio 2022扩展安装MFC(在VS已安装完成的情况下)
Visual Studio 2022扩展安装MFC(在VS已安装完成的情况下)
3338 0
Visual Studio 2022扩展安装MFC(在VS已安装完成的情况下)
|
缓存 网络协议 Java
*(已更新)关于Visual Studio 2019安装时VS installer无法下载文件,进度条为0,显示网络有问题的解决办法
*(已更新)关于Visual Studio 2019安装时VS installer无法下载文件,进度条为0,显示网络有问题的解决办法
*(已更新)关于Visual Studio 2019安装时VS installer无法下载文件,进度条为0,显示网络有问题的解决办法
|
IDE 编译器 开发工具
IDE之VS:利用 Visual Studio中的IDE配置C++语言进行编程
IDE之VS:利用 Visual Studio中的IDE配置C++语言进行编程
IDE之VS:利用 Visual Studio中的IDE配置C++语言进行编程
|
IDE 开发工具 C++
IDE之VS:Visual Studio2017版本安装图文教程之详细攻略
IDE之VS:Visual Studio2017版本安装图文教程之详细攻略
IDE之VS:Visual Studio2017版本安装图文教程之详细攻略