DLL文件的问题

来源:百度知道 编辑:UC知道 时间:2024/04/30 07:52:33
动态链接库文件都可以用什么语言编写?高级语言都可以吗?汇编等底层语言是否可以写出DLL文件?
只有DLL文件,能通过某种手段查到设计者是用的什么语言编写的这个文件吗?能查到源码吗?如果能查到,那看到的代码和设计者编写时的代码一模一样吗?还是意义相同,形式有可能有区别?把源码编译到DLL文件的过程都加密不?WINDOWS系统里的DLL文件好象没办法查到源码吧?

c, c++, vb, vb.net c# , Delphi,汇编等都可以写出dll

dll和平常的exe文件是结构一样的,都是PE结构的。

如果是。net语言写的,可以通过反编译器反编译回来,看到的源代码是和最初的代码查不多的。我试过,应该说反编译的效果很好的。。Net生成的exe或者dll里面是他自己的虚拟机的代码。

如果是c,c++之类的语言写的,最后都是生成的机器码在dll文件中了,所以只能反汇编出来,看到汇编指令。不过高手通过反向工程,自己手工还原成c代码也是可以的,不过就可能看到的不是作者的原本代码了,虽然实现的是同一种功能。

查看是用什么语言写的,你试一下peid这个工具看看

我知道VB,VC都是可以写DLL的。查不到源码的。DLL都是经过编译的二进制代码,只是缺少了我们常见的MAIN函数。