紧急求助!!请各位高手帮我看一下这段程序,不知如何是好!!(高分求教!!!)

wwx79 2002-06-18 10:47:40
我想使我的应用程序在运行时不在任务栏上显示出来,于是我在程序中加入了以下一段语句:
DWORD Style = ::GetWindowLong(AfxGetMainWnd()->m_hWnd,GWL_EXSTYLE);
Style = WS_EX_TOOLWINDOW ;
AfxGetMainWnd()->ShowWindow(FALSE);
::SetWindowLong(AfxGetMainWnd()->m_hWnd,GWL_EXSTYLE,Style);
AfxGetMainWnd()->ShowWindow(TRUE);
我是用MFC向导自动生成的基于对话框的程序,这段被加入到DLG.modal();函数之前,编译时没有出错,但是运行时却总是提示出现以下错误:
debug Assertion Failed!
Program:E:\WIN98WORK\DEVELOP\APPLICATION\TEST2\DEBUG\TEST2.EXE
FILE:winocc.cpp
line:301
For information on how your program can cause an assertion
failure,see the Visual C++documentation on asserts.
(Press Retry to debug the application)
其中:E:\WIN98WORK\DEVELOP\APPLICATION\TEST2\DEBUG\TEST2.EXE为我的编译的程序的文件名。
然后又有网友给了我另外一个方法,就是在程序中加入以下一段程序:

int CMydg::OnCreate(LPCREATESTRUCT lpCreateStruct)
{
if (CDialog::OnCreate(lpCreateStruct) == -1)
return -1;
ModifyStyleEx(0xfffffff,WS_EX_LEFT|WS_EX_LTRREADING|WS_EX_RIGHTSCROLLBAR|
WS_EX_PALETTEWINDOW|WS_EX_CONTROLPARENT,SWP_FRAMECHANGED);//使程序不在任务栏上出现
return 0;
}
我也在DLG.modal()之前调用这个函数,跟以上的错误一样,这下把我给搞糊涂了。请高手们赶快帮帮我!!!!
如果有更好的方法请一定告诉我一下,谢谢!!!

...全文
58 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
bflyswh 2002-06-18
  • 打赏
  • 举报
回复
对话框在DoModal之前还没有被创建出来,所以你对它的Style进行修改当然错误,网友给你的程序是正确的,是希望你能重载(重载,重载)对话框的OnCreate函数,而不是直接加入。建议多看看Windows下的窗口和消息的基本资料。
qindq 2002-06-18
  • 打赏
  • 举报
回复
DLG.DoModal()之前, 基于对话框的程序 AfxGetMainWnd()->hWnd 肯定是0;

建议你在CMydg::InitDialog()中写你的代码。
(相当于CWnd::OnCreate)

****注意不要主动调用OnCreate, InitDialog之类的函数,MFC会自己调用的!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
wwx79 2002-06-18
  • 打赏
  • 举报
回复
此问题已经解决了,谢谢各位热心朋友的帮助!非常感谢!!
wwx79 2002-06-18
  • 打赏
  • 举报
回复
哪里有例子啊??如果有例子就好了,请大家帮我一下吧
邮箱:wwx79@163.com

16,466

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Web++
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

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