MFC菜单点击后直接闪退

自己编了一个MFC程序,菜单点击开始仿真后直接闪退,不知道原因,求助各位大佬

我想通过点击菜单中的开始仿真,创建线程,调用工作线程输入数据的CPP,但是点了后闪退

这是菜单按钮(开始仿真)的程序
void CpbnDlg::OnStart()
{
CMenu *pMenu=AfxGetApp()->m_pMainWnd->GetMenu();//注意m_pMainWnd得到的正确性。

pMenu->EnableMenuItem(ID_Start,MF_DISABLED|MF_GRAYED);//把开始设置为不可用// TODO: Add your command handler code here
m_bPauseContinue.SetTextColor(RGB(0,0,0));
pThread=::AfxBeginThread((AFX_THREADPROC)main,this);
hThreadMea=pThread->m_hThread;
m_bPauseContinue.EnableWindow(TRUE);

}

这是调试报的错误:

Detected memory leaks!
Dumping objects ->
{670} normal block at 0x027DCB30, 8 bytes long.
Data: 6C F9 38 04 00 00 00 00
{669} normal block at 0x027DCAE8, 8 bytes long.
Data: < 8 > 10 FA 38 04 00 00 00 00
f:\dd\vctools\vc7libs\ship\atlmfc\src\mfc\thrdcore.cpp(306) : {637} client block at 0x027D9E88, subtype c0, 68 bytes long.
a CWinThread object at $027D9E88, 68 bytes long
f:\dd\vctools\vc7libs\ship\atlmfc\src\mfc\wincore.cpp(4500) : {529} client block at 0x027D91B0, subtype c0, 56 bytes long.
a CObject object at $027D91B0, 56 bytes long
f:\dd\vctools\vc7libs\ship\atlmfc\src\mfc\wincore.cpp(4500) : {504} client block at 0x027D94C0, subtype c0, 56 bytes long.
a CObject object at $027D94C0, 56 bytes long
f:\dd\vctools\vc7libs\ship\atlmfc\src\mfc\wincore.cpp(4500) : {496} client block at 0x027D92B8, subtype c0, 56 bytes long.
a CObject object at $027D92B8, 56 bytes long
f:\dd\vctools\vc7libs\ship\atlmfc\src\mfc\wincore.cpp(4500) : {482} client block at 0x027D72C0, subtype c0, 56 bytes long.
a CObject object at $027D72C0, 56 bytes long
pbn.cpp(60) : {473} client block at 0x027D6DE0, subtype c0, 12 bytes long.
a CObject object at $027D6DE0, 12 bytes long
Object dump complete.
线程 'Win32 线程' (0x210c) 已退出,返回值为 1 (0x1)。
程序“[6164] pbn.exe: 本机”已退出,返回值为 1 (0x1)。

单步调试发现没进去工作线程的CPP。

1个回答

线程同步的问题,不要在线程里操作界面

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
Navicat点击菜单栏闪退
关闭有道翻译软件-屏幕取词功能
mfc 弹出菜单不消失的解决
mfc 中在编辑区或者系统托盘上单击右键需要弹出菜单,网上的弹出菜单的代码非常多,但是都是千篇一律,而且仅仅能够弹出菜单,除非选择菜单项,否则菜单不消失,这对软件交互非常不利。这个问题微软在msdn上做过解释,但是是英文的。 具体解决如下 case WM_RBUTTONUP: { POINT point; ::GetCursorPos(&point);//得到鼠标位置
MFC点击菜单,弹出对话框问题
此功能操作实现代码如下: void CJB8View::OnAdjusttime() { // TODO: Add your command handler code here CAdjustTime dlg; dlg.DoModal(); } 解释:CAdjustTime是一对话框类, 当dlg.DoModal()后,显示一个模态对话框,此时DoModal()函数并不返回,
VC MFC系统托盘右键菜单,鼠标点击非菜单区域使菜单消失的问题
程序最小化到系统托盘后,右键单击托盘图标会显示菜单。 现在的问题是如果不点击菜单上的选项菜单就会一直存在,如何使鼠标在菜单窗口外单击操作时菜单消失? 就像桌面右键菜单那样。 CMenu menu;  menu.LoadMenu(IDR_MNU_TRAY); // 2 CMenu* pMenu=menu.GetSubMenu(0); CPoint point;  GetCurs
MFC中菜单栏选项的点击使能与禁止
主要程序源代码: CMenu *pMenu; pMenu = AfxGetMainWnd()->GetMenu(); pMenu->EnableMenuItem(ID_RESET, MF_GRAYED); 其中,ID_RESET为需要操作的菜单选项对象。 CMenu::EnableMenuItem 允许或禁止指定的菜单条目 UINT EnableMenuItem(UINT nID
MFC基于对话框的程序添加菜单&点击菜单弹出一个新的对话框
基于对话框的应用程序默认是没有菜单的,如果我们想为它添加菜单, 可按以下方法
android点击按扭闪退
今天做常用ui组件练习时,发现我的button一点就闪退。。 我是在xml文件中,对Button对象设置了onclick属性。找了好多资料,网上说的是因为不同的android版本造成的布局冲突问题,好像很有道理,可是没能解决我的问题。。 最后,我发现是我的对应方法中,没有形参传入,好尴尬。。。 
Android PopupWindow中点spinner直接闪退,报错
使用PopupWindow是布局中有spinner,spinner的数据装载,其他操作等都没问题,但是一点spinner上面就会闪退,看了下网上说的,可能是context不能获取,大概的情况可能就和在popupwindow上再直接弹出popupwindow会报错一样的原因解决:在xml的spinner的属性中加入android:spinnerMode=&quot;dialog&quot;...
用MFC “菜单响应事件” 实现绘图
首先打开VC++6.0,使用MFC向导新建一个单文档,然后选择资源视图。并双击打开“Menu”。
VS2013控制台生成.exe运行闪退的解决
今天写了一个opencv的较大的控制台程序,生成release之后,配置好所有库文件,但是双击exe运行的时候,却直接闪退。 在调试中,不论是直接运行(Ctrl+F5)或者调试F5,都能正常执行。查了下网上的资料,大多都是说在程序结束return 0;前添加system("pause")或者getchar();,使得程序暂停,等待输入才结束。这个方法对于小程序有用。但是看了下我的程序,在还没有执
MFC基于对话框上插入MENU菜单栏并点击菜单弹出新窗口
一、创建基于对话框的应用程序框架        1.选择菜单项文件->新建->项目,弹出“新建项目”对话框。        2.直接选择“MFC应用程序”或左侧面板中模板的Visual C++下选择MFC,中间窗口中选择MFC应用程序,然后在下面编辑框中键入工程名称,并设置工程的保存路径。点“确定”。(如下图所示)        图1 3.如图2所示,点“下一步”。
MFC 基于对话框的程序添加菜单&托盘图标显示
基于对话框的应用程序默认是没有菜单的,如果我们想为它添加菜单,可按以下方法来做:1.在资源视图中制作菜单对象,并将ID设为IDR_MENU具体方法是资源视图中右击--&amp;gt;Insert--&amp;gt;Insert Resources--&amp;gt;MENU,这样就可以创建菜单,然后就可以在新生成的这个菜单栏中,添加很多菜单项了,比如【打开文件】的菜单,ID设为IDM_OPENFILE2.在对话框类的头文...
[Entity Framework使用随笔]实体数据模型向导闪退的原因分析
开发环境:VS2015+EF6.0+Oracle 11g在项目中一直都可以用ADO.NET实体数据模型生成EF CodeFirst代码,但是最近在实体数据模型向导界面(如下图所示),点击下一步时,窗口就闪退了。 但是用VS2015的服务器连接工具却可以正常打开数据库。因为没有任何提示信息,加上天天开会,所以一直没有时间处理。今天百度了一圈,发现也有不少人也遇到相同的问题,其中有人提到是数据库驱
MFC软件运行时按下回车或ESC闪退问题的解决
之前在写IdGenerator工程的MFC软件是就发现按下Enter键,操作界面会自动退出的问题,当时没注意,指导最近在写一个串口调试终端的界面程序时又出现了类似问题,因此写下我是怎么解决这个问题的。    之所以按下Enter\ESC会自动退出,我也是从网上查到的: http://blog.sina.com.cn/s/blog_a3e5711601011y3e.html     在一般情况下
关于mysql.exe打开后闪退
在Mysql文件夹下打开bin目录,找到mysql.exe 打开发现立刻闪退 换了个进入方式:打开cmd ,进入mysql所在盘,进入mysql文件夹,进入bin文件夹,输入mysql -uroot -proot  -uroot 不要分开输,这样-u  root 分开输会出现 Enter password:   ,然后输入密码后会出现1049的错误,-proot也一样不
MFC中在基于对话框的窗体中使用CFileDialog导致菜单栏变灰的解决方案
MFC中在基于对话框的窗体中使用CFileDialog导致菜单栏变灰的解决方案
MFC中动态添加菜单项和响应菜单事件
新建一个单文档程序 在查看菜单项中增加两个子菜单,分别为隐藏工具栏(ID_HIDE),新建菜单(ID_NEWMENU) 在Resource.h中增加一个ID_NEWMENU宏 #define ID_NEWMENU        WM_USER+101   操作工具栏和状态栏 使用GetDescendantWindow函数获取工具栏和状态栏的指针 为ID_H
MFC 菜单项显示可用 不可用状态
在画图程序中,右键单击弹出菜单,(复制,剪贴,粘贴)与文档生成的编辑菜单中的选项一致,其使用过程: 1,首先右击弹出弹出式菜单      1)重载OnRButtonDown方法,自己也是这么实现的,但是今天发现了有人用另一种方法 ,如2所介绍的      2)重载OnContextMenu方法,        OnContextMenu和 OnRButtonDown区别:
MFC菜单栏check设置:使菜单项前带有勾选标志,再点击消失的实现
一、要实现的效果图: 二、实现: 1、右击菜单项属性,将checked设置为ture。 2、右击菜单项属性,添加事件处理程序,消息类型设置为:update_command_ui.
MFC绘图,在菜单栏新加了绘图一个子菜单,点击椭圆画椭圆,点击正方形画正方形
MFC,绘图在菜单栏新加了绘图一个子菜单,点击椭圆画椭圆,点击正方形画正方形,代码简单易懂
MFC右键弹出菜单,并添加响应函数
遇到问题: 添加右键弹出菜单,并添加响应函数,点击菜单项却进不响应函数。 实现步骤: 1、新建一个菜单资源,IDR_TOOL_MENU。 2、在ClassWizard中 void CDlgTool::OnRButtonUp(UINT nFlags, CPoint point)  { CMenu menu; //定义下面要用到的cmenu对象 menu.Loa
Navicat系列软件点击菜单栏闪退
Navicat系列软件点击菜单栏闪退本来还以为是破解出现问题其实是因为启动有道词典屏幕取词,把有道词典关闭了,就可以了
Tomcat7.0配置,解决点击startup.bat后闪退的情况!
Myeclipse配置:  首先是下载tomcat: http://apache.org/  我用的是免安装版本的,下载之后解压,然后开始进行配置(JSP是基于JAVA语言来开发的,所以jdk是必须的) 一、配置 JDK 要想在自己的计算机上安装Tomcat,需要JDK的支持,因为Tomcat是用java语言编写的一个很轻量级的Web服务器。 1、首先将自己下载的jdk(这里
CMenu CreatePopupMenu AppendMenu显示菜单是灰色不可点击状态?
CMenu TopSysMenu; if (TopSysMenu.CreatePopupMenu()==FALSE) return false; TopSysMenu.AppendMenu(MF_ENABLED|MF_STRING,IDM_SYSMENU_SYSCFG,TEXT("系统设置(&C)")); 因为每增加相应函数,增加下面函数就好了: ON_COMMAND
改变菜单勾选状态的方法
方案一 CMainFrame *pFrame = (CMainFrame *) AfxGetMainWnd(); CMenu *pMenu = pFrame->GetMenu(); ASSERT(pMenu!=NULL); CMenu *subMenu = pMenu->GetSubMenu(3); ASSERT(subMenu!=NULL); if(m_bShowCo
Android Studio 按钮跳转功能的实现,以及点击后闪退问题的处理
安卓小白,课程需求要做一个APP。在做的时候,做到一个功能:点击按钮,跳转到新的界面。 教程可参考: https://blog.csdn.net/baidu_30258569/article/details/49409145 https://blog.csdn.net/mghhz816210/article/details/50373698 https://blog.csdn.net/qq...
Oracle安装时点击下一步闪退
分析思路:1 原Oracle数据库卸载不完全,包括注册表,oracle遗留文件,相关服务;2 下载压缩包不完整 或者 两个压缩包 (oracle 11g 1of 2 ,oracle 11g 2 of 2)没有压缩同目录 或者 少压缩了其中一个这里我遇到的情况是第一种, 先卸载数据库然后重装 ,选择桌面数据库点击下一步就闪退了 ,我原以为是注册表没清理干净,按照网上的oracle 11g 完全卸载步骤
安卓apk打包后安装就后运行就闪退,直接run在手机正常
Android调试时apk可运行,导出签名的apk后闪退 这个问题困扰了我好几天,网上查了好多资料,也没找到办法。 在这个apk导出时未使用混淆,在网上查了好多资料都说跟混淆有关。 我的项目引入jar如下: 还有另外两个库 结果用Android Tools 签名打包后,能顺利安装,启动后提示“XXX 已停止运行”; 逛了好多论坛和博客
VS2013 MFC右键弹出菜单
步骤:添加菜单资源->增加对WM_RBUTTONDOW消息的响应 1、添加菜单资源 添加菜单,如IDR_MENU1;打开IDR_MENU1右键点击后勾选“以弹出方式查看”;给要添加的菜单项命名,注意顶级菜单不会显示,随便命名一个,将要弹出的内容在下级菜单中依次命名。 2、在CMyview类中增加对消息WM_RBUTTONDOW的响应函数OnRButtonDown; 在OnRButtonDo
Android开发笔记(一)增加控件后运行出现闪退
Android开发过程中,可能会出现运行正常,添加一个按钮或者其他控件之后再次运行就会出现闪退的问题,这个时候,要先构建并清理项目,再次运行,这时候问题可能就解决了。
点击按钮app闪退
1、activity在清单中没有注册; 2、activity加载布局有错误; 3、xml布局有错误; 4、加载的控件有错误。
MFC学习第三节:在窗口内点击左键画圆,添加菜单使圆增大。
1.在view.h中定义CString  str; 2.在void CHhView::OnDraw(CDC* pDC)中定义int x=10,y=10; 3.创建函数void CHhView::OnLButtonDown(UINT nFlags, CPoint point)添加右键功能,在函数外定义r=10; 4.在resources中的menu中创建一个‘添加’菜单,并为此菜单添加函数。v
(MFC)在任意位置拖动窗口或弹出窗口菜单
(MFC)在任意位置拖动窗口或弹出窗口菜单
安卓点击按钮闪退
1.原因是你没有在AndroidManifest.xml配置你的Activity方法,原因有很多以后在慢慢介绍。 原应有
Mac系统升级后eclipse菜单无法使用解决方案
系统升级到10.13后eclipse菜单无法使用,百度到大佬的解决方案特意转载下(原帖地址在最后): 1.关闭eclipse,找到eclipse启动程序Eclipse.app ; 2.在Eclipse.app右击选择“显示包内容”; 3.打开Contents文件夹,对Info.plist进行修改,删除以下内容: CFBundleLocalizations        
MFC中菜单项状态的切换
MFC中的菜单项中左边可以有一个是否选中的状态,注意不是让菜单项变灰,而是在菜单项左边出现一个钩,要实现这个效果,需要进行下面这几步操作。 1.首先在菜单项的资源文件中将属性Checked置为true,这样在资源编辑器中就可以看到菜单项左边多出了一个方格,方格里面有个钩。 2.第二步的操作时添加事件处理程序。需要添加两个事件,一个是COMMAND消息的响应事件,还有一个是UPDATE_COMM
Android APP安装后直接打开,点击MENU进入系统主菜单,APP无法再次启动的问题
一般大家从应用市场下载APP后会点击安装APP,安装完成后系统会提示完成和打开两种操作, 我们此时的习惯是直接点击打开,然后APP开始运行,这时的APP看似一切正常,其实不然,我今天就发现了一个很严重的问题,我的APP安装完成打开之后我点击Menu键进入系统主菜单,然后在点击APP,突然发现此时APP无论怎么点击都无法启动了,那么这是什么原因呢,其实这个主要是后台转入到前台,启动app的Inten
MFC菜单消息
首先,在MFC中,具有PopUp属性的菜单是不能用来做命令响应的。 在MFC中:                   当点击一个菜单项的时候,最先接受到菜单项消息的是CMainFrame框架类,CMainFrame框架类将会把菜单项消息交给它的子窗口View类,由View类首先进行处理;如果View类检测到没对该菜单项消息做响应,则View类把菜单项消息交由文档类Doc类进行处理;如果
关于MFC菜单事件响应
我在一个子窗口中右键添加了菜单的功能,并且在该子窗口关联类中添加了菜单时将响应,类中也自动添加了函数,但是运行的时候点击菜单没有反映。请问有什么可能性啊。
MFC对话框添加菜单栏并添加鼠标单击响应
1,添加一个资源,选择menu; 2,在菜单中写入自己的菜单选项,如关于  版本 等信息 添加菜单项:关于   版权  想你了  ID:xiangni  等信息 ? 3  将菜单加入对话框,即可显示。 方法:打开对话框,右键属性,选择刚才的菜单即可。 ?   ———————————————分割线,下面就加入单击时的鼠标响应
MFC中动态添加菜单项是灰色的解决办法
呈现灰色的原因是没有对应的消息响应函数与菜单相关联,只需要自己写一个消息响应函数即可,例如孙鑫的VC++教程第六章有相关动态添加菜单的教程,但是此教程在使用动态添加菜单项之后并没有对菜单项是灰色的进行说明,话不多说代码如下,初学者可以看看: GetMenu()->GetSubMenu(0)->AppendMenu(MF_STRING,114,"wo cao ni da ye"); 这是原孙鑫老
托盘图标菜单弹出后,点击其它地方,菜单不消失的问题
<br />在TrackPopupMenu函数前面添加SetForegroundWindow();即可解决. <br />示例代码:<br />POINT point; HMENU hMenu, hSubMenu; GetCursorPos(&point); hMenu = LoadMenu(::AfxGetInstanceHandle(), MAKEINTRESOURCE(IDR_MENU1)); hSubMenu = GetSubMenu(hMenu, 0); SetMenuDefaultIt
Navicat for mysql鼠标放在菜单栏闪退解决方案
Navicat for mysql鼠标放在菜单栏闪退解决方案电脑开启了“有道词典”,屏幕划词导致,退出“有道词典后”Navicat for mysql正常使用。
MFC 关于在对话框上的同一区域显示不同的内容(子对话框)
首先应该有一个主对话框MainDialog,两个子对话框ChildDialog1、ChildDialog2,其中两个子对话框的属性Style=Child,Border=None; 分别对应类CMainDialog、CChildDialog1、CChildDialog2; 两个子对话框的ID分别为IDD_CHILD1_DIALOG、IDD_CHILD2_DIALOG 1)、在主对话框上添加一个
MFC 主对话框最小化到托盘,托盘点击还原主对话框。
1.将主对话框资源属性Minimize Box设置为true,这个属性显示对话框的最小化按钮。 2.最小化到托盘。 (1)首先要了解,你任务栏右下角的托盘都是图标,所以最小化到托盘建议添加一个Icon资源。 (2)到托盘的函数需要自己重构。 先宏定义#define WM_SHOWTASK WM_USER+1 在protected中添加函数 LRESULT OnShowTask(WPAR
解决打开mysql.exe后闪退
打开cmd进入mysql所在盘,进入mysql文件夹,即输入cd mysql,再进入bin文件夹,即输入cd bin,最后输入mysql -uroot -proot ,如图所示: cd mysql->cd bin"> 我这样就解决闪退问题并成功进入mysql了。 另外,您也可以去http://www.wampserver.com/上下载wampserver,里面包含了Apache+Mys
解决点击Oracle的setup.exe安装程序自动退出问题
这个问题是在一定情况下发生的,因为我从接触Oracle到现在安装oracle应该有几十遍了,不管是Windows或者是Linux都没出现这个问题,而这次由于服务器配置的问题而出现了,接下来我说说我发现的缘由:由于系统服务器的磁盘被烧毁了,导致要重新更服务器,而跟换的是一台全新的hp服务器,4X1TB的磁盘阵列。首先对磁盘做RACD5,弄完之后没有对磁盘进行分区。导致系统只有一块C盘,2.7TB,这...
VC2010 对话框显示菜单栏并响应
1. 新建项目,在resourceview视图添加新的菜单(右键)     2. 在下图Type Here处添加菜单内容。 注意,当定义了二级及以后菜单后,一级菜单就不能再更改ID了,也不再有响应函数; 注意菜单资源的名称 IDR_MENU1,之后会用到。   3. 添加完菜单后,单击子菜单项,在properties中修改各子菜单项的ID:   4. 在主对话框.
Android按菜单键闪退问题
没设置菜单选项、但是点击菜单键闪退! 由于Activity继承了ActionBarActivity的问题、隐藏状态栏要使用 ActionBar actionBar = getSupportActionBar(); actionBar.hide(); 不能使用request.....
VC6.0 MFC点击编辑框弹出对话框
在写界面的用于触屏时,往往需要编辑框弹出盘来进行输入,下面就将我思路写一下吧, 1.刚开始在网让找一些这方面的资料,结果在论坛中有发现这样一个帖子,见面的链接: http://topic.csdn.net/u/20100630/15/728f2d71-6958-44ab-802e-e0dbc23f2e58.html 看过之后有一些思路,就是派生一个编辑框类,在派生的类中处理PreTran
相关热词 c# 引用mysql c#动态加载非托管dll c# 两个表数据同步 c# 返回浮点json c# imap 链接状态 c# 漂亮字 c# 上取整 除法 c#substring c#中延时关闭 c#线段拖拉
立即提问