当前位置:网站首页>Debugging MS source code
Debugging MS source code
2022-04-21 20:12:00 【lindexi】
If debugging is required WPF Source code or framework source code , Then you need to use DotPeek
First you need to download dotPeek , You can download it on the official website dotPeek: Free .NET Decompiler & Assembly Browser by JetBrains
Start by opening dotPeek Then click start symbol server , All symbols .

Then click tool settings , You can see this page

Then open the VS Tool options , Set symbols during debugging , Just copied , Just add it now

Then you need to remove Microsoft's services and local cache
Then write a stationary mill to test
Now you can start debugging the framework source code
Just use breakpoints in some functions , Then the stack jumps , If I were MouseDown Write a breakpoint , Press... Before triggering , Click stack , You can see the external code . Right click the external code to display , So you can see The garbage wr It's done , Double click him , You can jump to a page , Click load to .
Now you can see dotPeek In decompile , This is a long time , You need to do something you like to do , Come back and you'll find dotPeek Decompile well and you see ms Source code , At this time, you can try the source code breakpoint , But not everywhere .
If you find that you can't enter the code , Then try installing Resharper , If it still doesn't work , Then I need to ask , Is it used UWP , Because now I try UWP Not yet .
If you still can't succeed , Don't ask me , I taught some friends , There are a few that can't get into the code , The usage is the same , I went to his computer and got it myself , As a result, I couldn't enter .
Then the next step is debugging ms Source code. , Because it has entered Release Decompiled code , So the stack call enters the source code , Use breakpoints where needed , Of course , Breakpoints are not available everywhere . But after entering, you can still debug your own code as before , See the value of the parameter that has not been optimized , You can modify these values , You can enter the code in other places to set breakpoints , Set conditions , You've used one-step debugging to follow the code .
stay win10 Next , The debugged code is uncommented , But you can compare dotpeek Look at the code , Generally, the code in it is annotated , Decompiled code and dotPeek See that the code is different in some places , But the actual function is the same . But the framework used by Microsoft source code may be different from its own , It seems that the code is still different .
It's best to download Microsoft source code by yourself , Then put him in a warehouse , In this way, you can see the code modified by different frameworks .
because UWP Compile using the .netNative , Many of the bottom layers use C++ Written , So there's no way to UWP decompile
This work adopts the signature of knowledge sharing - Noncommercial use - Share in the same way 4.0 International license agreement to license . Welcome to reprint 、 Use 、 Re release , But be sure to keep the article signed by Lin Dexi , Not for commercial purposes , Based on this revised work must be released with the same license . If you have any questions , Please contact me .
版权声明
本文为[lindexi]所创,转载请带上原文链接,感谢
https://yzsam.com/2022/04/202204211832447931.html
边栏推荐
- 如何判断Int型值的第nbit位是否是1还是0
- How to check the slow response of the system with high CPU?
- Jerry uses hardware timer to simulate interrupt request [chapter]
- 测试while(u--);和while(u)u--;的区别
- Collection of knowledge points
- PyCharm failed to create JVM
- Efficient C language memory copy Test result Rand, loop, operator =% in x86-64 SUSE
- C# 版本的 计时器类 精确到微秒 秒后保留一位小数 支持年月日时分秒带单位的输出
- Comment déterminer si le BIT nbit de la valeur de type int est 1 ou 0
- CUDA02 - 访存优化和Unified Memory
猜你喜欢
C# Mandelbrot和Julia分形图像生成程序更新到2010-9-14版 支持多线程计算 多核处理器

After learning this tutorial of capturing packages by Charles, I unloaded Fiddler directly

Jmeter关联参数

Surface point cloud normal

ROS knowledge: how to realize camera access

Interface non idempotent solution

How to solve the thread safety problem without locking

MySQL error 2005

Changan dark blue c385 product information exposure aims at 200000 level, and the number one target is model 3!

vmware-vmx.exe无法结束进程
随机推荐
全国各大城市的经纬度表,留着以后做查询库用
Gbase 8A round or reject the double value, and the result is not the analysis and solution of rounding problem
Your independent station conversion rate is low? Three tips to help improve conversion
华融融达期货这家公司怎么样?期货开户办理安全吗?
JS monitor mobile phone screen rotation (horizontal screen or vertical screen)
[2021] number of effective sequences programmed by Tencent autumn recruitment technology post
The difference between English and American pronunciation [turn]
VIM from dislike to dependence (6) -- insertion mode
Is it safe for Bohai futures to open an account? What is the opening method of Bohai futures company?
C# 版本的 計時器類 精確到微秒 秒後保留一比特小數 支持年月日時分秒帶單比特的輸出
Comment déterminer si le BIT nbit de la valeur de type int est 1 ou 0
TCP example of grpc implemented by golang
C package DLL into program
在IE和Edge中用JS判断只能输入数字,字母,日期型。
redis 高可用(ha)
Changan dark blue c385 product information exposure aims at 200000 level, and the number one target is model 3!
人机验证reCAPTCHA v3使用完备说明
Gbase 8A set group_ concat_ max_ Solution to error reporting after len parameter
Status code encapsulation -- reprint
Niuke bm40 Rebuild binary tree