MessageBox阻止程序进行 10C
while (nSize > 1)
{
    lRet = m_keyCtrl.CheckSZCAKey(&nSize);
//  SetTimer(2, 1000, NULL);    
    CWnd::MessageBox(_T("123")); 

// AfxMessageBox(_T("123"));
// MessageBox(_T("123"));
// MessageBox(_T("检测到多个深圳CA的USBKEY, \n 为避免意外, 建议您拔掉多余的USBKEY, 重新开始升级."), _T("询问"), MB_ICONQUESTION);

}
第二次进入循环体内执行到 Messagebox的时候程序就停滞了,怎样处理,一定要自绘messagebox吗?

3个回答

MessageBox会阻塞消息循环,不然你就使用 非模态对话框

MessageBox消息对话框就是用于弹出需要用户立即处理的消息,以便与用户进行实时交互而使用的,所以采用了模态对话框,需要中断程序运行。如果不需要用户立即处理(不需要中断程序执行),可采用日志的方式记录消息,事后用户可通过查看日志来了解程序的执行情况。

MessageBox消息对话框需要点击取消或者确认的

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
如何阻止MessageBox?
在执行一段代码的时候,rn由于这段代码要调用一个动态链接库,rn所以就会弹出一个MessageBox,rn知道这个MessageBox是在调用动态链接库时弹出的,rn弹出信息也是写在库里的,rn请问如何阻止这个弹出对话框呢?rn
messagebox 无法阻止程序运行
在程序中,当读取结束时,弹出消息框message,界面上的控件都不能使用,但是其他程序仍然在运行,导致读取的时间越长,messagebox越多,请问怎么使messagbox显示时,程序都停止,当响应messagebox后,程序再运行rnrnMessageBoxW(_T("读取完成"),_T("提示"),MB_TASKMODAL|MB_OK);rnrn只有3个参数
MessageBox MessageBox MessageBox MessageBox
MessageBox MessageBox MessageBox MessageBox
阻止关机 一个阻止关机的小程序
阻止关机 一个阻止关机的小程序 阻止有与系统管理软件引起的重启,关机行为
阻止关机+一个阻止关机的小程序
阻止关机+一个阻止关机的小程序
如何用messagebox进行程序调试
程序环境:win32Application中的HELLOWORD程序例子rnrn我的想法:程序窗口收到一个WM_PAINT后就跳出来一个MESSAGEBOX显示PAINTSTRUCT中的RECT中的4个值中的任意一个,这个PS结构在窗口处理程序中用PS定义rnrn得分要求:1请写出详细的程序;rn     2请写出这个程序插入主程序中那个部分;rn     3程序运行后要能达到我想要的功能;rn     4请写出MESSAGEBOX各个参数以及含义;rn     5如果用afxMessageBOx或其他方法同上
hook所有程序的messagebox
修改IAT的方式
弹出messageBox的程序
啊突然有合适的风格与丰田个人
MessageBox和DialogResult程序报错
VC++6.0网上找的点击“是”进入下一步的代码,然后我用main函数执行下面的代码n string message = "You did not enter a server name. Cancel this operation?";n string caption = "No Server Name Specified";n MessageBoxButtons buttons = MessageBoxButtons.YesNo;n DialogResult result;nn //显示MessageBox.n result = MessageBox.Show(this, message, caption, buttons);nn //如果点击的是"YES"按钮,将form关闭.n if(result == DialogResult.Yes)n n // Closes the parent form.n this.Close();n n然后报了错,请问是什么问题,最好能给一份完整的代码,本人新手nC:\Desktop\ceshi1\ceshi1.cpp(13) : error C2065: 'DialogResult' : undeclared identifiernC:\Desktop\ceshi1\ceshi1.cpp(13) : error C2228: left of '.Yes' must have class/struct/union typenC:\Desktop\ceshi1\ceshi1.cpp(13) : error C2228: left of '.Show' must have class/struct/union typenC:\Desktop\ceshi1\ceshi1.cpp(13) : error C2065: 'MessageBoxButtons' : undeclared identifiernC:\Desktop\ceshi1\ceshi1.cpp(13) : error C2228: left of '.YesNo' must have class/struct/union typenC:\Desktop\ceshi1\ceshi1.cpp(13) : error C2065: 'MessageBoxIcon' : undeclared identifiernC:\Desktop\ceshi1\ceshi1.cpp(13) : error C2228: left of '.Information' must have class/struct/union typenC:\Desktop\ceshi1\ceshi1.cpp(13) : error C2065: 'MessageBoxDefaultButton' : undeclared identifiernC:\Desktop\ceshi1\ceshi1.cpp(13) : error C2228: left of '.Button1' must have class/struct/union typenC:\Desktop\ceshi1\ceshi1.cpp(15) : error C2228: left of '.Show' must have class/struct/union typenC:\Desktop\ceshi1\ceshi1.cpp(17) : warning C4508: 'main' : function should return a value; 'void' return type assumed
阻止程序关闭的疑问
在网上找到了两种方法rnrn1 是重载onClosingrn2 是在FormClosing中使用FormClosingEventArgs.cancel=true属性来解决问题rnrnrn问题有两个.rnrn使用第一种方法rnrn[code=VB.NET]Protected Overrides Sub OnClosing(ByVal e As System.ComponentModel.CancelEventArgs)rn If StopClose Thenrn Returnrn Elsern MyBase.OnClosing(e)rn End IfrnEnd Sub[/code]rnrnrn没用.程序还是照样关闭rnrn使用第二种方法rn[code=VB.NET]rn'判断是否使用alt+X关闭程序rnPrivate Sub Form1_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles Me.KeyDownrn Label1.Text = e.KeyCode.ToStringrn If (e.Alt) And (e.KeyCode = Keys.X) Thenrn StopClose = Falsern Me.Close()rn End Ifrn End Subrn'不是alt+X则程序不关闭rn Private Sub Form1_FormClosing(ByVal sender As Object, ByVal e As System.Windows.Forms.FormClosingEventArgs) Handles Me.FormClosingrn e.Cancel = StopClosern End Subrn[/code]rnrn当按alt+F4关闭程序的时候有用.但按过第一次后,也就是当第一次e.cancel=true后.就没有触发form1_keydown事件了.rnrn我想请问rnrn使用1方法时,我明明已经return 了为什么程序还是照样进行,而且我根本就没有调用MyBase.OnClosing(e)为什么还是执行了关闭的操作?rnrnrn使用2方法时,为什么使用e.cancel=true后,就不会触发form1_keydown事件了?要怎样解决这个问题呢?
WIN7 阻止程序联网
如何在不装软件的情况下组织某个软件接入互联网
阻止指定程序联网??????????????
如何阻止指定程序联网?
最近长牙,喉咙疼的很
RT
阻止小程序冒泡
1.直接用方法 :catchtouchmove="preventD" <view class="selector-bj {{isTapSelector ? '' : 'is-focus-selector' }}" wx:if="{{selectorBj}}" bindtap='tapSeleBj' catchtouchmove="preventD"></view>  
小程序阻止事件冒泡
使用bind的绑定事件,是可以触发冒泡事件的,就是可以触发父view的事件,使用catch是不会触发冒泡事件
阻止屏幕保护程序
完全绿色,简洁小巧,很实用的小程序,为打游戏时屏幕保护程序不受限制的频繁出现而设计的。
阻止程序二次运行
小弟做了文件关联程序,rn关联问题已解决,现在的问题是在点击一个文件通过关联打开了我的程序,rn而点击另一个文件,同时将我的已运行程序激活,关闭原来的文件,而打开新的文件。rn我也从我的参考资料中用了一些阻止程序二次运行的例子,rn但是我的程序刚起动又关闭了,rn另我的程序的主窗口是MAINFORM,rn而在创建窗体前加了一个封窗fm,rn待所有窗口创建完成后将FM.FREE 了,rn我该怎阻止程序二次运行呢?
如何阻止程序弹出对话框?
比如说当我设FileListBox1.directory:='c:\fback';rn就弹出对话框"文件未找到",请问如何不让这个对话框弹出?rn请给出通用点的例子,就是能让程序预先先处理掉错误,哪怕不进行下一步的操作.
MessageBox
vc++ 中怎么让MessageBox的关闭按扭变灰
messagebox
class CWyWnd: public CFrameWndrnrnprotected:rn afx_msg void OnRButtonUp(UINT Flags,CPoint point);rn;rnBEGIN_MESSAGE_MAP(CMyWnd,CFrameWnd)rn ON_WM_RBUTTONUP()rn ON_WM_PAINT()rnEND_MESSAGE_MAP()rnrnvoid CMyWnd::OnRButtonUp(UINT Flags,CPoint point)rnrn char* mess="Bresenham";rn MessageBox(mess); rnrnrn问题是只有BEEP声,没有出现对话框,主窗口也失去焦点了rn怎么会这样啊rn
MessageBox("...");
是不是只有在视类里才能用MessageBox("...");函数。rn其它类,如文档不能用MessageBox("...");弹出信息?
Messagebox
delphi中的问题解决,Messagebox在内的各种运用
自定义对话框Messagebox运用dll程序
将以下字符复印粘贴到文本上 Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework\AssemblyFolders\MyAssemblies] @="C:\\Windows\\MyAssemblies" 保存为123.reg后打开注册。 '将dll复制到windows\MyAssemblies目前下,没有MyAssemblies新创建 ImportsMMsgbox Public Class Form dim NewMessagebox as new MMessagebox() end Class 运用。 if NewMessagebox.showdialog()=windows.forms.dialogresult.yes then '执行程序 else '退出不执行 end if
Hook全局所有程序的MessageBox
Hook全局所有程序的MessageBox 熟悉API的都知道,系统中没有MessageBox,有的只是MessageBoxA和MessageBoxW, 因此HOOK MessageBox,其实是HOOK MessageBoxA和MessageBoxW
关于messagebox引起程序中断
UINT ThreadFunc(LPVOID lpParam)rnrn sprintf(url,"%s//ElereadingManager?cmdACT=ereadingLogin&action=login&loginid=%s",pStrUrl,user);rnrn GetResponse(url,xml);rn // 验证完毕,关闭对话框rn delete m_pShowDlg;rn // 无返回信息,表示http请求失败rn if (xml == "")rn rn MessageBox(m_hWndCopy,_T("号码验证失败,无法连接到主机!"),_T("错误"),MB_ICONERROR);rn rn return 0;rnrnrnvoid CLockScreenDlg::OnBnClickedButtonLogin()rnrn // 显示正在登录的提示rn m_pShowDlg=new CShowLogining();rn m_pShowDlg->Create(IDD_DIALOG_ShowLogining,this);rn m_pShowDlg->CenterWindow();rn m_pShowDlg->ShowWindow(SW_SHOW);rnrn // 启动线程,进行数据库连接rn AfxBeginThread(ThreadFunc,&m_strUser);rnrnrndelete m_pShowDlg;rn放在new出来的后面正常,但是放在messagebox的前面,程序运行就会报错,这个messagebox到底干什么了? 求指教
MessageBox????
我通过ASP.NET2003引用了COM组件里的SYSTEM.WINDOWS.FORMS;后可以在ASPX.CS代码里使用MESSAGEBOX了,我做到了在datagrid里的删除时给出MESSAGEBOX的对话框,所有工作都很正常,但作为一个功能加到我们公司的网站上,就发生了点删除也没反应.不知道是不是MESSAGEBOX引起的,rn另外,好象编程时没用到MESSAGEBOX可是也同样执行没反应,为什么有这么大的差距呢!
MESSAGEBOX
MESSAGEBOX,WINCC的使用方式
php小程序--记事本--messagebox
php messagebox
相关热词 c# 去空格去转义符 c#用户登录窗体代码 c# 流 c# linux 可视化 c# mvc 返回图片 c# 像素空间 c# 日期 最后一天 c#字典序排序 c# 截屏取色 c#中的哪些属于托管机制