Chinaunix

标题: xp 下VC6开发的程序无法在win7上运行 [打印本页]

作者: taotao_112206_c    时间: 2012-12-01 01:00
标题: xp 下VC6开发的程序无法在win7上运行
      兄弟们,机器太糙,只能用xp+vc6 ,可是开发出来的应用程序却不能在win7 上运行,这个可愁坏了,有解决的办法吗?xp+vc6 能开发出兼容win7 的应用程序吗?

作者: folklore    时间: 2012-12-01 08:57
what i can said is vc6 is out of date.

but i think that xp+vc6 can generate the program that is able to works in win7.
(if you don't believe it, just create a win32 application and try it in win7)

check the depends of your exe file...
作者: bruceteen    时间: 2012-12-01 10:49
同意妇科老人的观点
你先将你的程序放到一个没有安装VC6等软件的干净的xp上,看看能不能运行
作者: blueroger07    时间: 2012-12-01 11:38
妇科老人?
可以拿静态库试一下
作者: taotao_112206_c    时间: 2012-12-01 12:07
回复 3# bruceteen

     谢谢兄弟,刚刚在未装VC6的机器上试了下,确实不行,不知为何原因,报"没有找到CCLAPI32.dll,因此这个应用程序未能启动。",请问我在开发的时候应该注意什么?


   
作者: hellioncu    时间: 2012-12-01 13:13
网上搜索CCLAPI32.dll,说是IBM的,我装了VC6的,也没这个dll。
看看你的程序用了什么第三方的东西吧
作者: taotao_112206_c    时间: 2012-12-01 13:57
回复 6# hellioncu

   谢谢兄弟了,确实这样,我引用的IBM的CICS的API,刚刚发现自己程序不能在别的机器原因是用的debug版,并且用的动态库。请问VC6如何设置发布版。我设置的编译完了之后可执行程序还是在debug下目录,不是在Release
   
作者: hellioncu    时间: 2012-12-01 16:07
taotao_112206_c 发表于 2012-12-01 13:57
回复 6# hellioncu

   谢谢兄弟了,确实这样,我引用的IBM的CICS的API,刚刚发现自己程序不能在别的机器 ...



Project - Settings,选 Win32 Release,一般工具栏上也能选
作者: zighouse    时间: 2012-12-02 11:53
即使是64位机,大部分程序是可以跑的,注意win7下运行程序可以指定兼容性和以管理员身份运行等属性。
作者: zighouse    时间: 2012-12-02 11:58
回复 7# taotao_112206_c


    关键要看 preprocessor definition 中有没有 NDEBUG,以及是否设置了优化配置等。

作者: linux_c_py_php    时间: 2012-12-02 15:19
vc6流... 没见过世面啊, 同学.
作者: taotao_112206_c    时间: 2012-12-02 17:00
回复 10# zighouse

谢了,兄弟,请问VC6开发的程序如何设置发布?只有静态库库这个设置成功了,程序还是debug 而不是 releas版
   
作者: zighouse    时间: 2012-12-02 18:29
回复 12# taotao_112206_c


    何谓“程序还是DEBUG版”?C语言中(无论VC,TC,GCC...)无所谓调试版或是发布版,只要能编译成功,在任何版上都可以调试也都可以发布,名称无所谓,看你愿意以什么样的结果发布了(甚至于有很多人愿意以源代码发布),关键在于编译选项和链接选项的具体选择了。不摸 vc6 好久了,细节工作只能靠你自已。
作者: taotao_112206_c    时间: 2012-12-02 20:19
回复 11# linux_c_py_php


    您的意思?不瞒您笑话,工作快5年,一直做UNIX C开发。VC6,上学的时候学过,谈不上熟悉,只有印象。平时工作的的时候缺少好用的工具,或者针对本公司产品的工具,所以就开发些工具,以便测试。不知道兄台有啥好的建议?
作者: zighouse    时间: 2012-12-02 22:05
回复 14# taotao_112206_c


    建议谈不上。如果不太了解 vc6 的工程配置,有两个办法可以试试:1、记得 vc6 在创建工程的时候有多种工程模板,选择合适的工程模板,看看里边怎么配置的。或者在 msdn 上查查,或者安装个 platform sdk/windows sdk 之后再试试;2、如果熟悉 cmake,可以尝试用 cmake 来生成 vc6 的工程文件,我曾用过有些开源软件,是用 cmake 来配置工程的,很好用。

另外,如果不能在 win7 下运行,也有可能是没有相应的运行环境,需要另外在目标机器上安装相关的 vc 目标文件,好像叫 vcredist x86 或者类似的东西。如果还是不行,总可以找出程序的依赖关系,把缺少的程序文件一个个从网上下下来,复制到目标机器上试试。M$的东西麻烦是麻烦点,办法总会有的,在msdn及相关论坛中请教,一般会有人帮忙的。你需要把详细的内容描述出来。

总之,vc6(准确点说是它的工具集如 nmake 等)是足够可以开发 win7 程序的,甚至可以预言它能够编译出在 winrt 上运行的程序来。
作者: fjpmbb    时间: 2013-01-30 15:29
bruceteen 发表于 2012-12-01 10:49
同意妇科老人的观点
你先将你的程序放到一个没有安装VC6等软件的干净的xp上,看看能不能运行



看到 妇科老人 这个 称呼
我忍不住要 回复下
神一样的 输入法

作者: Sevk    时间: 2013-02-01 09:08
提示: 作者被禁止或删除 内容自动屏蔽
作者: taotao_112206_c    时间: 2013-02-03 23:18
解决了,编译模式采用MFC静态库库就完了。谢谢各位了,辛苦了。




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2