如何在mfc控制台输出调试信息

如何在mfc控制台输出调试信息,第1张

简单来说,有两种方式,一种是源码debug,即分析源码来找出bug位置,一般使用printf()打印出程序执行每一步的信息,一种是可执行文件debug,需要使用调试器来进行。1源码debug。类似于下面的源码,主要通过程序执行时输出的信息,来定位bug出现的位置,然后再修改源码。例如:#includevoidf(){;}intmain(){#ifdef_DEBUGprintf("startmainfunction!\n");#endifvoidf();#ifdef_DEBUGprintf("leavemainfunction!\n");#endifreturn0;}2可执行文件调试,windows平台常用的就是vs/vc自带的调试,另外一个就是微软自家开发的调试器windbg。Linux平台以gdb为常用。下面以dev-C++为例:1)在逗工具地-》编译选项-》"编译时加入以下命令"下面的编辑框里加上:-g32)在下面的"在连接器命令行加入以下命令"下的编辑框上加上:-g33)转到程序页,把gcc行修改为:gccexe-D__DEBUG__,4)把g++行修改为:g++exe-D__DEBUG__,5)点击确定,重新编译,就能调试了。

打印机无法打印的10种解决方法

一、使打印机处于联机状态。

如果打印机没有处于联机状态,自然是无法打印了。

二、重新开启打印机。

如果打印机处于联机状态仍无法打印文档,此时你可以重新开启打印机,不仅清除了打印机内存,还能解决不少的打印故障。

三、将打印机设置为默认打印机。

步骤如下:

1单击Windows“开始”菜单,指向“设置”,单击“打印机”,打开“打印机”窗口。

2右键单击打印机图标,系统d出快捷菜单,单击其中的“设为默认值”。

四、取消暂停打印。

方法是:在“打印机”窗口,右键单击在用的打印机图标,然后单击以清除“暂停打印”选项前的对号“√”。

五、使硬盘上的可用空间不低于10MB。

如果可用硬盘空间小于10MB,必须释放更多的空间系统才能完成打印任务。这时,请单击“磁盘清理”按钮,然后在“要删除的文件”列表框中,选中要删除的文件类型,单击“确定”按钮。

六、增加打印机的超时设置。

检查或更改超时设置,步骤如下:

1在“打印机”窗口,右键单击打印机图标,再单击“属性”。

2单击“详细资料”选项卡,在“超时设置”下增加各项超时设置。“未选定”项是指定Window s 等待打印机进入联机状态的时间,超过指定时间之后就将显示错误消息。

七、确保打印到合适的本地打印机端口。

步骤如下:

1在“打印机”窗口,右键单击打印机图标,再单击“属性”。

2单击“详细资料”选项卡,在“打印到以下端口”框中,确保已将打印机设置到适当的端口。最常用的端口设置为“LPT1”,也有打印机使用USB端口。

八、程序生成的输出不正确。

要确定程序生成的输出是否正确,可以采用通过其他程序打印文档的方法验证。我们以“记事本”打印测试文档,步骤如下:

1单击“开始”,指向“程序”,指向“附件”,单击“记事本”,打开“记事本”窗口。

2键入几行文字,然后在“文件”菜单中,单击“打印”命令。

如果能够打印测试文档,就是原来你使用进行打印的程序有问题,请重新安装程序。

九、重新安装打印机驱动程序。

有时,打印机驱动程序可能被损坏,从而引发无法打印文档的错误。我们可以重新安装合适的驱动程序,然后再打印。

1在“打印机”窗口,右键单击打印机图标,再单击“删除”,然后单击“是”按钮。如果系统提示“删除这台打印机的专用文件”,请单击“是”按钮。如果系统提示删除默认打印机,请单击“确定”按钮。

2在“打印机”窗口,双击“添加打印机”图标,打开“添加打印机向导”,单击“下一步”按钮,然后执行屏幕指令。

十、确保端口与打印机电缆工作正常。

进行了上述九项工作之后,以下的方法能够帮助你进一步发现问题之所在:

1打印机电缆连接是否牢靠如果计算机直接与打印机相连,要确保连接计算机和打印机的电缆两端都插对插牢。如果使用打印切换设备,请先绕过切换设备,将打印机直接与计算机相连,然后尝试进行打印。

2测试端口连接将打印机连接到另一个可用端口,重试打印文档,如果能够打印则表明原端口损坏。

3测试打印机电缆换上另一根打印机电缆,然后重试打印文档,如果能够打印则表明原电缆损坏。

首先纠正一下,MFC全称为:Microsoft Foundation Classes,微软基础类库。所以,从名字就可以看出,MFC,和软件开发模式没半点关系。你可能听说过MVC,这个才是软件开发模式,叫做Model-View-Controller,文档视图模型,一种讲UI界面和底层逻辑区分开发的开发模式。因此,MFC顶多叫做开发Windows程序的一种方法。MFC提供了一大推C/C++接口用来调用微软自己造的API,简化程序开发,损失效率不大的同时开发变得较为轻松了。

然后回答第二个问题,常不常用?至少在现在,不能说很常用,但是一样还是有很多人在用这个开发,微软自己造的技术还有很多,什么Win Form、WPF、NET等一堆。但是,我想说一点,这些技术虽然总是更新迭代,但是本质是不变的。理解了开发的思想,换一门技术重新学习只会耗费很少的额外学习时间。而且现在各种各样开发技术隔几天就冒出来,甚至还有什么宣称自家的某某技术各种nb的,但是最好不要一味被新的技术牵着鼻子走。

1、设置窗体扩展属性。

2、用下面函数:

BOOL SetLayeredWindowAttributes(

HWND hwnd,

COLORREF crKey,

BYTE bAlpha,

DWORD dwFlags

);

ConsoleWrite

在C++里面对应的,是cout。

但这个是控制台程序的方法,MFC程序不存在控制台,因此无法使用控制台输出。

如果你需要提示信息,那么使用AfxMessageBox函数比较好;

如果你需要显示在窗口中,那么根据不同的窗口控件或窗口模式来决定使用什么输出方式。

以上就是关于如何在mfc控制台输出调试信息全部的内容,包括:如何在mfc控制台输出调试信息、MFC无法打印、MFC是不是常用的软件开发模式等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zz/10642108.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-10
下一篇2023-05-10

发表评论

登录后才能评论

评论列表(0条)

    保存