Articles of mfc

哪个字体是MFC对话框控件的默认字体?

下面的图片(放大,所以你最好看到差异)显示dynamic创build的编辑控件(上面的两个例子)和从对话框编辑器(下面的例子)创build的编辑控件之间的字体差异。 我怎样才能使我的dynamic创buildCEdit控件的字体看起来像默认(下面的例子)? 我已经创build了如下的CEdit控件: obj->CreateEx(WS_EX_CLIENTEDGE, _T("EDIT"), _T(""), WS_CHILD | WS_VISIBLE | WS_TABSTOP, rect.left, rect.top, rect.Width(), rect.Height(), GetSafeHwnd(), reinterpret_cast<HMENU>(mId)); obj->SetFont(&mFont); // mFont was created in the Dialog Constructor // with mFont.CreatePointFont(80, _T("MS Shell Dlg")); 谢谢你的帮助!

错误C1189:#error:该文件需要_WIN32_WINNT至less定义为0x0500。 build议使用0x0501或更高的值

我在VS2010中创buildMFC项目(Windows XP)。 我拿这个错误: error C1189: #error : This file requires _WIN32_WINNT to be #defined at least to 0x0500. Value 0x0501 or higher is recommended. 如果我添加afxcomctl32.h : #define _WIN32_WINNT 0x0501 ,我采取60 +错误。 在项目中,我没有添加任何东西。 使用如Visual Studio创build。 我需要做什么呢?

如何以编程方式激活Windows Mobile中的菜单

在大多数Windows版本中,您可以按F10键进入菜单,从而避免使用鼠标。 这种行为似乎没有出现在Windows Mobile 5.0中,但是由于我所使用的设备将比触摸屏驱动的键盘更多,所以这种行为是可取的。 有没有在Windows Mobile 5.0上使用MFC或Windows API调用在C ++下以编程方式激活和使用菜单的方法。 我曾尝试设置CFrameWnd和CCeCommandBar类的焦点无济于事。

区别布尔和布尔?

在VC ++中,我们有数据types“BOOL”,它可以取值为TRUE或FALSE,而我们有数据types“bool”,可以假设值为true或false。 他们之间和每个数据types的使用时间有什么区别?

如何在MFC中禁用CListCtrl的水平ScrollBar?

我在MFC项目中有一个CListCtrl控件,我不希望水平ScrollBar在任何时候显示。 但是垂直的需要正常显示。 我用VS2010,任何解决scheme?

使用OPC Client作为Windows服务运行

我在MFC中编写了一个OPC客户端进程,当我在VS2010中直接运行它时,一切正常。 但是,当我安装它作为一个Windows服务,问题来了。 我仍然可以连接到OPC服务器,但连接后,我用IOPCServer :: GetStatus()检查OPCServer的状态,它返回false! 当我将这个过程作为windwos服务安装时,是否需要注意?还是需要设置操作系统的某些设置? (我的操作系统是Win7)

如何创build一个不是创build过程的subprocess?

我有两个进程,A和B.在某个时间点,A创buildB.创buildB之后,如果A的进程树被杀死,我希望B仍然在。 我正在使用CreateProcess()来创buildB,而我似乎无法find任何方法来使它在没有孩子的情况下创build过程。 同样的事情与ShellExecuteEx(),但我可能会错过一些标志。 有谁知道我可以用来做什么? 编辑:我忘了提及这两个进程需要一个处理或进程ID到另一个

CEdit :: GetLine()Windows 7

我有以下代码段,其中m_edit是一个CEdit控件: TCHAR lpsz[MAX_PATH+1]; // get the edit box text m_edit.GetLine(0,lpsz, MAX_PATH); 这适用于运行Windows XP和更早版本的计算机。 我没有在Vista中testing过,但在Windows 7上,lpsz获取了插入到其中的垃圾unicode字符(以及有时候的实际文本)。 有什么想法在这里发生了什么?

学习MFC编程的先决条件

我知道一些C ++和C,我现在正在使用的项目是一大堆MFC编程。 有人可以告诉我学习MFC的先决条件吗? 另外,什么是最好的学习来源? 任何特定的书籍或video系列? 我知道这个问题太笼统了,但答案可能会帮助我(或任何正在挖掘MFC的人)很多 谢谢!

Spy ++如何构build其进程列表?

TL; DR – Spy ++工具如何真正构build其进程列表? 阶段 我们有一个MFC桌面应用程序(在Windows XP上运行)挂起来,它不会对任何用户input作出反应。 但是,通过alt-tab切换到它时重绘。 (它接收WM_SETFOCUS , WM_ACTIVATE等,它显然没有收到任何鼠标或键盘消息。) 由于该应用程序悬挂在某种程度上,我们拉了一些进程垃圾,但目前为止这些帮助并不大。 input: 间谍++ 我们使用Spy ++来查找上面给出的有关此应用程序似乎正在处理的窗口消息的信息。 我们通过打开Windows视图来完成 并select我们的应用程序窗口,并在消息属性中selectWindows of same process和Messages to View : Select All 。 但是,我们首先尝试通过打开“ 进程视图”来查看此进程的所有消息 Spy ++和我们的应用程序没有显示在这个进程列表中 。 在应用程序正常运行的另一台PC上进行交叉检查,该进程通常也会显示在Spy ++的进程列表中。 从Spy ++的进程视图中没有显示这个进程的事实可以推断出行为不正常的应用程序的任何事情 ,但应用程序的主窗口显示在Windows视图。 为什么在Spy ++的进程视图中有一个不可见的主窗口进程? 该进程列在任务pipe理器和Visual Studio 2005的附加进程窗口中。所以这些工具明显使用不同的方法来列出进程比Spy ++ …? 该应用程序当前挂起的系统是Windows XP SP2系统,我们使用了Visual Studio 2005附带的Spy ++ Utility。 这种行为偶尔会重复发生,但只有在应用程序运行了几天之后!