程序在Win7下无法正常运行,XP却可以,怎么办?

吴必成 发布于 2013/08/13 17:07
阅读 4K+
收藏 0

我用Win32 API写的一个程序,在Win7 Aero模式下运行极不稳定,经常出错,但是切换到Windows经典模式或XP操作系统就一点问题都没有了,我希望我的程序在Win7下不需要别人更改风格也可以正常运行,该怎么做才行?我尝试过把VS的编译环境从Win32平台换成X64平台,但是编译后在Win7 Aero模式下依然不能运行。

错误现象见我另外发的一个帖子,里面有详细描述,因为文字太多,我就不在这里重复了。
http://bbs.csdn.net/topics/390544248?page=1#post-395282409

在CSDN上问的时候有位大神告诉我在64位Windows下:64位dll在目录c:\windows\system32目录下;
32位dll在目录c:\windows\syswow64目录下;他要我用depends.exe测一下,我没有这个软件,但是他说的这两个目录我都很熟悉,在VS调试时的输出窗口中有出现过。

这是Win32平台下编译的:

这是X64平台下编译的:


但是两个编译出来的程序都是在VS下运行没有问题,一独立运行就出毛病,即使是X64平台下编译的也不行。是不是除了要换编译环境还要修改代码啊?如果是这样的话那要怎么改啊?好像Win7下API用的还是Win32 API啊,应该没有发生变化的才对,在MSDN上查,它也只是说指针发生了变化而基本数据类型没有变化,函数的话压根就没有分什么32位的函数和64位的函数。
求大神解答!

加载中
0
真幻的现实
真幻的现实
C++程序,不太懂,platform is any cpu?
0
k
kdrhrg
把源码拿到windows 7下编译
0
吴必成
吴必成
好吧,我就是在Win7下编译的,但是却在Win7下跑不起来,还有,这不是C++程序,这是C程序
0
Le_Guto
Le_Guto
1个32为系统 一个64位系统
0
哆啦A梦_
哆啦A梦_
系统盘权限限制?
0
棋有此理
棋有此理
右键单击exe,“以管理员身份运行”试一试。
0
newzai
newzai

全部设置为X86,,基本上不会有任何问题,不管是C++的,还是C#的。。


0
吴必成
吴必成

引用来自“newzai”的答案

全部设置为X86,,基本上不会有任何问题,不管是C++的,还是C#的。。


怎么全部设置为X86?我的程序一开始就是Win32环境编译的啊,这个在VS下是可以设置的,你可以设置是Win32还是X64,但是两个版本我都试过,都不行,所以我还不是很清楚你的意思,可以再说清楚一些吗?
0
吴必成
吴必成

引用来自“棋有此理”的答案

右键单击exe,“以管理员身份运行”试一试。
不是“以管理员身份运行”的问题,即使这样也同样出错。
0
吴必成
吴必成
目前的情况是:在Win7兼容模式下可以运行,在Win7风格改为经典模式后可以运行,但是在Win7Basic和Win7Aero模式下就不能稳定运行,最开始是在CSDN问的,所以具体现象可以看着两个帖子,里面我说的非常清楚:
http://bbs.csdn.net/topics/390546190
http://bbs.csdn.net/topics/390544248

除此之外,最奇怪的是,我在XP系统下运行,程序也不能完美执行,虽然程序稳定性解决了,但是里面的视频文件无法正常播放,这个问题在Win7系统下是没有的,具体还是看我上面那两个帖子,因为内容太多,实在不方便在这里又贴一次,所以请大家谅解一下。


注:在Win7的XP兼容模式或经典模式下运行,两个问题都不存在。

返回顶部
顶部