【软件源码查看】如何查看软件源代码
无论你学什么都不可能得到真正的源代码的,原因很简单,绝大多数的exe或者dll都是用高级语言诸如C/C++/delphi之类开发的,经过开发环境的编译得到计算机能够执行的二进制机器码文件exe,这个过程是通常是不可转逆的,但是这个过程称之为反汇编或者反编译,也就是说你可以用一些软件(比如W32Dasm等等)将exe之类进行反编译,得到汇编语言的代码,这种代码虽然可能执行结果与原软件相同,但已经与源代码完全不同了。
因此绝大多数的软件破解工作,都是基于反汇编的调试工具上进行的,比如ollydbg或者softice等等。
当然有些特例的,比如.net/java/vb等等开发的exe,是有可能用一些专用软件看到部分源代码的。
...
开放源代码软件是什么呢?
软件的源代码不会公布给你吧,应该是指程序的源代码吧?如果有程序的话,要看是用什么语言写的了,像C语言就用VC++6.0,Java的话用JCreator或着Eclipse都行,.NET或者C#的话就要用Microsoft Visual Studio .NET 2003/2005了,这软件一般的程序都能打开,不过这软件有点大就是了。
入门的话推荐还是从C语言学起吧,最经典的书就是“The C program language”。
不过还是要看个人的方向了,C算比较基础的了。
语言很多都是相通的,学一门就可以了,关键是要学精!
如何使用VSTS工具来分析软件的代码和性能?
(1) 静态代码分析 :主要通过一些既有的代码编写规则,来分析目前代码是否存在一些安全漏洞或待优化的问题,可以通过自己的实际情况来对检查规则做相应的调整。
(2) 任务管理器 :快捷键:Ctrl+Shift+Esc ,我们通过使用Processes 和Performance 标签来从整体上进行判断,主要是通过观察我们软件的进程在执行过程中发生的CPU、内存、硬盘读写等指标的变化,因为其不具有日志记录功能,需要实时性地观察和多次尝试,目的就是在大方向上判断是否存在性能问题。
(3) 性能监视器 :Start -> Run -> Perfmon ,或从系统管理工具中打开,通过这个工具我们可以定制观察很多的详细参数变化情况,且界面是通过一个监视器来不断刷新数据,相对任务管理器的实时性而言,该工具会记录一段时间内的变化,有助于我们总结和观察参数的变化,并最终确定性能问题的根由。
(4) 探查事件 :在VS中集成有事件探查功能,VS2008中的位置为“分析 -> 启动性能向导 ”,我们可以选择不修改程序二进制代码的“采样 ”方式,也可以选择会修改二进制文件的“插装 ”方式,前者通过对CPU计数器的采样,来获取相应的计数器数据,而后者通过添加一些必要的处理函数来更加精确地观察函数的执行情况,可斟酌选择。
我们会得到大量的分析数据,注意进行再次筛选。
(5) 代码覆盖 :主要是通过结合测试来达到对代码的检查范围,不一定代码覆盖率越高越好,关键是要根据自己的情况来制定合适的覆盖目标为宜。
(6) 命令行工具集成 :我们同样可以通过命令行工具执行一些第三方的测试工具,如VSInstr 、VsPerfMon 、VSPerfCmd 和VsPerfReport 工具等。
查看软件的源代码
想看到源代码?我觉得不可能,不是有些程序不能看到,而是所有的程序通过正当的途径都不能看到源代码,除非这个程序是你自个写的。
因为几乎所有的程序在发布之前都会进行加密、加壳的操作。
即使你知道人家采用什么技术进行的加密也不太可能会原样的还原出来源代码。
所谓的破解也并不是把原程序的源代码给还原了之后给你破解的。
破解软件也只不过是反编译了软件的汇编代码而已!
怎么看软件的源码,下载一些小软件,想看看它的源代码,怎么看?
例如,您估计这个程序是vb制作的,那么您可以在百度中搜索“vb 反编译 工具”,有很多,下载一个后打开该程序,反编译为代码,保存成工程文件即可。
不过现在的反编译软件基本上都不能完全完整的反编译出原本的源文件,会有一些错误,这是不可避免的。
而且,反编译仅供学习,请不要用在非法的用途上,请尊重原作者的劳动成果,否则别人也不会尊重你!希望对您有所帮助!
死性不改77896306