VScode能不能编辑DLL库文件 您所在的位置:网站首页 vscode无法编辑 VScode能不能编辑DLL库文件

VScode能不能编辑DLL库文件

#VScode能不能编辑DLL库文件| 来源: 网络整理| 查看: 265

  介绍

小编给大家分享一下VScode能不能编辑DLL库文件,希望大家阅读完这篇文章之后都有所收获、下面让我们一起去探讨吧!

我们平时在工作中经常会遇到一些已经被编译后的DLL,而且更加麻烦的是没有源代码可以进行修改,只能针对这个DLL的文件进行修改才能得到我们想要的结果。

本文将通过一个实例来演示:如何完成一个简单的修改。

我们将会用到以下几种工具;

1,微软的工具ildasm。exe:这个是把DLL生成IL文件的一个软件,是微软自带了;可以在C: \ Program Files \ Microsoft sdk \ Windows \ v7.0A \ bin找到该软件;

2,微软的工具ilasm.exe:这个是把IL文件重新生成DLL的功能,可以在C: \ Windows \ Microsoft.NET \ Framework \ v4.0.30319找到该软件。

要使用ildasm。exe把DLL这个文件转化成IL文件

 VScode能不能编辑DLL库文件

把DLL文件转储为* .il文件存到某个指定文件夹里,得到Web.il和Web.res两个文件,有时也会有*。资源文件

 VScode能不能编辑DLL库文件

我们可以打开Web.il文件,里面有DLL生成的IL内容,我们很容易就可以定位到想要的这个方法,只要让它固定返回正确就可以修改成功,方法内的IL代码就是我们要修改的内容,修改GetLicense()方法内的IL代码,让它固定返回真的。

下面这个IL就是让它返回为真;修改完接着保存IL文件;

 VScode能不能编辑DLL库文件

当修改完IL文件后要把它转化成DLL文件,打开医生命令输入进入到*。il的文件夹,然后输入命令:

c: \ windows \ microsoft.net \ framework \ v4.0.30319 \ ilasm.exe   ,/dll/资源=Web.res  Web.il

1:要进入IL文件的文件夹

2:其中“/dll/罢飧銮懊嬉幸桓隹崭?/p>

3: r文件要在。伊尔文件前面,中间要有个空格

运行完上面的命令后会生成一个新DLL文件,然后把它复制到我们的站点下面:

 VScode能不能编辑DLL库文件

运行的结果:

 VScode能不能编辑DLL库文件

完成上面的步骤就可以成功修改DLL文件,当然本实例只是一个简单的修改,若要进行比较复杂修改il代码则要对il知识有个相当的了解。

注意.il文件,每行开头的IL_0000,是相当于一个内存地址,如果改动涉及到增删行数的时候,需要注意修改内存地址,如果不方便精确计算,可把修改处后面的地址整体增加整百整千如IL_333a改成IL_433a。

下面是一个可能会经常要用到的il返回真跟假的代码;

,,,.maxstack  1   ,,,.locals  init  (   ,,,,,,,[0],bool  CS 1 0000美元)   ,,,L_0000:, nop    ,,,L_0001:, ldc.i4.1    ,,,L_0002:, stloc.0    ,,,L_0003: br.s  L_0005   ,,,L_0005:, ldloc.0    ,,,L_0006:, ret       return 真正的,      ,,,//,代码大小,,,,,,,7,(0 x7)   ,,,.maxstack  1   ,,,.locals  init  ([0], bool  CS 1美元0000美元)   ,,,IL_0000:, nop   ,,,IL_0001:, ldc.i4.0   ,,,IL_0002:, stloc.0   ,,,IL_0003:,, br.s ,,,,, IL_0005      ,,,IL_0005:, ldloc.0   ,,,IL_0006:,, ret       return 错误的;

看完了这篇文章,相信你对“VScode能不能编辑DLL库文件”有了一定的了解,如果想了解更多相关知识,欢迎关注行业资讯频道,感谢各位的阅读!

VScode能不能编辑DLL库文件


【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有