导航:首页 > 源码编译 > 不同版本vs编译dll

不同版本vs编译dll

发布时间:2022-12-09 06:29:52

1. vs2005,vs2008,vs2010编译同一个c语言项目生成的dll文件为什么不一样大分别是252,380,246KB

优化方式和程度不有
不同的编译器用的是可能是不同的优化方案(同一个编译器不同的设置也会产生不同的结果,比如DeBug和Release)
优化方案取决于编译器开发者的水平.发行编译器时的主流CPU和编译器将要运行的系统平台等因素,
比如DOS时代int_max=0xffff,win32时代int_max=0xffffffff,同样是int变量,所占用的内存空间就不同
再如同样一条C语句:x=x+1;
早期的编译器可能编译成类似这样的结果(这里用结果一词而不用汇编语言,汇编指令,汇编代码之类的词是因为汇编=!机器指令)
mov eax,x
add eax,0x00000001
mov x,eax
而优化的编译器可能会把这条语句编译成和
x+=1;
同样的编译结果:
mov eax,x
inc eax //这条指令的执行速度和占用内存的空间都要小
mov x,eax
///////////////////////////////////////////////////////////////
类似的情况还有很多,因为这个回答是我一个字一个字打出来的,不是在哪个地方Copy的,指所以就不一一列举了,总之:
这些小的差别积少成多,就影响了文件的大小!

2. 用vs2010做了一个dll 但是在win7系统的不同版运行,旗舰版不能运行 专业版可以

确定在运行环境安装了你必要的扩展与支持库。
顺便你貌似弄错地方了,这是Windows,不是编程,帮你转下
望采纳:)

3. c#不同版本编译器生成的dll类库引用的时候一样吗

亲,高版本使用低版本的是一样的,但是低版本使用高版本就有问题了,因为有些东西低版本里没有。你的在vs2008下的dll,在vs2008和2010引用是一样的,但是在vs2010下的dll在vs2008下引用就可能有问题了

4. 如何编译64位dll程序,有几种情况,在32位XP上用VC++6.0或者VS2010该怎么编译64位的dll。

在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,编译生成即可。

5. vs2017编译出来的lib和dll,vs2010下使用可以吗

如果是.net,只要框架版本一致就可以,如果是C++,通常要相应的运行库

6. 不同版本的VC编译出来的DLL可以互相调用吗

要看你有没有引用到特别的接口,比如Win7里的新增的API接口,放到dll里,那么放到XP下肯定不可以运行。如果是其他普通的功能就可以互相调用。
比如很多年前开发的软件或游戏也依然可以运行在WIN7上,就是这个道理。
软件开发都是尽可能向前兼容的。

阅读全文

与不同版本vs编译dll相关的资料

热点内容
java自动格式化 浏览:617
ipad怎么查看文件夹大小 浏览:581
手工粘土解压球 浏览:550
在线视频教育源码 浏览:39
快四十学什么编程 浏览:754
gnumakelinux 浏览:537
视易峰云服务器怎么改系统 浏览:535
javamap取值 浏览:768
mac和win磁盘加密软件 浏览:474
苹果为什么会连接不到服务器 浏览:726
pdf格式文件如何保存 浏览:303
小霸王服务器tx什么意思 浏览:75
解释dns命令 浏览:584
dmx512怎么编程 浏览:744
北京云主机17t云服务器 浏览:232
php服务器url地址 浏览:440
哪里看书免费app 浏览:437
php删除数组中重复值 浏览:786
经理下命令咱都别说话是什么意思 浏览:625
上海风机可编程控制器价格 浏览:249