为什么一个程序在调试的情况下可以运行,但是生成了可执行文件后就不能正常运行了呢?

BlayerS 2003-11-26 03:26:48
有一个自己写的程序
程序的最后要显示一个另外进程的窗口
用到了这样的代码
hwnd=FindWindow(classname,NULL)
ShowWindow(hwnd,WB_SHOW)
我调试的时候发现,hwnd句丙的值是正常的
但是 ShowWindow返回的是0,也就是说这个函数调用失败了
但是 当执行完ShowWindow之后,需要显示的那个窗口却可以正常的显示出来
不过 如果不是用调试一步一步的运行,而是直接运行可执行文件的话,则窗口没有办法正常显示.为什么呢?
我测试的环境是 NT5.1
而换到5.0的时候,程序就可以正常的运行,无论是调试版,还是直接运行可执行文件.
...全文
59 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
mfc168 2003-11-26
  • 打赏
  • 举报
回复
有一些SDK函数在不同的版本执行的时候,会出问题,你可以查看你的SDK函数,在MSDN里面,那里告诉你,那些系统可以用
BlayerS 2003-11-26
  • 打赏
  • 举报
回复
怎么没人啊?
斑竹帮忙啊
有一个参数打错了
是sw_show
mfc168 2003-11-26
  • 打赏
  • 举报
回复
找到 WINVER,定义:好象是在stdafx.h中

#define WINVER 0x0500

15,471

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 进程/线程/DLL
社区管理员
  • 进程/线程/DLL社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧