在64位的操作系统上用vs软件编译的dll默认就是64位。在32位XP上用VC++6.0编译64位的dll,需要安装sdk(最新版本是sdk2003),在开始菜单——sdk——open build environment window——windows server 2003 64-bit build environment——set win svr 2003 x64 build env进入命令行,从命令行调用msdev,将vc选项里的include和lib的第一个默认路径设为sdk目录下64位头文件和库的路径,编译出的dll似乎就是64位的了。这个是从网页上看到的,没实践过。在32位XP上使用vs2010就简单多了,新建一个项目(解决方案),加入代码,设置X64,编译生成即可。
追问我的意思是,代码里面有加载kernel32.dll这种dll,有些资料说微软自己是处理了这些dll的,但是有些又没有,我想知道的是,这种dll到底可以在64位编程中使用不?还有我怎么判断需不需要使用其他dll来替换。