码迷,mamicode.com
首页 > Windows程序 > 详细

『刨根问底のWPF学习』一、一个最简单的WPF应用的逆向分析记录

时间:2019-11-24 10:01:52      阅读:94      评论:0      收藏:0      [点我收藏+]

标签:int   ram   这一   方法   mamicode   ESS   sharp   span   exp   

1.创建一个最简单的TestWpf项目,什么代码都不写,如下图所示:

技术图片

 

2.鄙人是那种喜欢知其然知其所以然的人,突然看到这一坨代码实在有点蛋疼。

   没办法,只能按照鄙人的学习习惯,一边查阅资料,一边通过逆向分析的方法弄明白这一坨代码究竟是怎么回事。

1.<Window x:Class="TestWpf.MainWindow"
2.        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
3.        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
4.        xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
5.        xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
6.        xmlns:local="clr-namespace:TestWpf"
7.        mc:Ignorable="d"
8.        Title="MainWindow" Height="450" Width="800">
9.     <Grid>    
10.    </Grid>
11.</Window>

 

3.首先来看最外面这个标签,就是一对<Window></Window>,似乎看上去也很简单嘛。Window,顾名思义就是程序创建了一个窗口呗。

   那么问题来了,这个Window是从哪里来的呢,就好比我们一个Int32这个类型,是属于System这个名称空间。

   那么这个Window,是属于哪个名称空间呢,是从哪里引用的呢,引用的是哪个dll的呢?

<Window>
</Window>

 

4.这还不简单,对着Window这个标签按F12,不就直接转到定义了吗,我们来看看。

   技术图片

 

   原来这个Window的名称空间是属于PresentationFramework.dll这个程序集下面的。

   绝对路径在:

C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.0\PresentationFramework.dll

 

5.按照本屌的一贯作风,肯定是找到这个PresentationFramework.dll,反编译看一番再说。

   的确很快找到了System.Windows这个类。

技术图片

 

6.这就完了?当然不是,我们再来看看还有啥牛逼的信息没有。

   我们看到,这个程序集还写了一堆花里胡哨的东西,这些是什么东东?

   技术图片

 

7.带着第6点的疑问我们继续往下分析

 

『刨根问底のWPF学习』一、一个最简单的WPF应用的逆向分析记录

标签:int   ram   这一   方法   mamicode   ESS   sharp   span   exp   

原文地址:https://www.cnblogs.com/fuhua/p/11921173.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!