- 反汇编(Disassembly):把目标代码转为汇编代码的过程,也可以说是把机器语言转换为汇编语言代码、低级转高级的意思,常用于软件破解(例如找到它是如何注册的,从而解出它的注册码或者编写注册机)、外挂技术、病毒分析、逆向工程、软件汉化等领域。学习和理解反汇编语言对软件调试、漏洞分析、OS的内核原理及理解高级语言代码都有相当大的帮助。
- 你程序编译为64位的PE,就是使用的win64提供的api了。
目前微软提供的win64操作系统可以以兼容的方式跑32位程序,也就是同时提供了一天win32的DLL共32位程序使用。
32位程序在64位系统上跑肯定没有64位的程序在64位系统上跑的效率高,因为其要转化下。
名字还是叫win32api,只不过是用64位代码实现的。
kernel32,user32这些名字都没变。 - vcproj是工程文件,sln是解决方案文件。一个解决方案里面可以包含多个工程。每个工程有一个自己的.vcproj。而.sln包含了里面工程的总和。
sln只包含vcproj的连接,具体信息都在vcproj里面,如果删除一个vcproj,那么再打开sln就不能打开删除的那个vcproj了。和VC++6.0相比。 sln = dsw ,vcproj = dsp。 - Qt默认的编译方式是动态编译的,但是有时候你编写的程序要发布出去,带很多动态库文件是很繁琐的,此时就需要静态编译你的程序,Qt要实现静态编译必须库文件也是静态编译的.
- 如果是同一个项目的静态库和动态库,可以根据文件的大小就可以判断了。 静态库比动态库的LIB大很多。
- 随着 Windows 操作系统的发展,现已发布了几个版本的 Windows API。Windows 3.1 使用 Win16 API。Microsoft Windows NT、Windows 95 和 Windows 98 平台使用 Microsoft Win32 API。
- glut32.dll是为微软封装的,官方的glut.dll是sgi封装的。
- vs里,菜单栏->project->Properties, 在Linker -> Input -> additional Depengdncies 填入以下内容:
opengl32.lib glu32.lib glut32.lib - 32位的Windows操作系统可以同时运行32位和16位代码,而64位Windows操作系统可以直接运行64位代码,同时通过使用WoW64(Windows on Windows 64)也能运行32位代码。
- 64位版本的Windows中,32位代码与64位代码单独运行,有着两个Program Files,有着system32和syswow64两个DLL文件夹,甚至两个注册表。
- 在32位操作系统的Windows文件夹中,SYSTEM和SYSTEM32两个文件夹,分别用来存放16位和32位的DLL文件。
- 实际上存放64位DLL的文件夹依然叫:System32,同时又多了一个SysWow64文件夹。
- 现在的软件大多是32位软件,所以默认会将DLL文件放到System32文件夹中,而微软为了保障兼容性,所以无论是32位还是64位的DLL文件都是放到了System32文件夹中。
- 那SysWoW64文件夹又是干什么用的呢?这是因为32位软件并不能在64位系统中直接运行,所以微软设计了WoW64(Windows-on-Windows 64-bit),通过Wow64.dll、Wow64win.dll、Wow64cpu.dl三个DLL文件进行32位和64位系统的切换来运行32位软件。
所以在64位系统中,下载到的DLL复制到System32文件夹中即可。 - 在32位系统下指向\Windows\System32的系统变量为:WINSYSDIR。在64位系统下指向\Windows\System32的系统变量为:WINSYSDIR64。
- 当安装32位的程序在64位系统上时,会把指定拷贝到system32的文件自动改为拷贝到SysWOW64下。
随手记录
最新推荐文章于 2023-12-24 18:19:58 发布