我不知道RC脚本.
我想将产品版本,文件版本等元数据包含到我正在构建的DLL中.我正在使用.rc文件来做到这一点.构建是由makefile驱动的.我跟着我发现的.rc scrpit示例.
模板.rc文件包含afxres.h,但我认为我不需要.但是,如果我删除它,我会收到一堆编译错误.
基本的非MFC RC脚本是什么样的?我可以删除所有这样的东西:
/////////////////////////////////////////////////////////////////////////////
// English (U.S.) resources
#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_ENU)
#ifdef _WIN32
LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US
#pragma code_page(1252)
#endif //_WIN32
....
Run Code Online (Sandbox Code Playgroud) 我在使用adxdb.h时遇到了麻烦:
我试过了
#include "afxdb.h"
Run Code Online (Sandbox Code Playgroud)
但我收到了这个错误:
C:\ Program Files\Microsoft Visual Studio 9.0\VC\atlmfc\include\afx.h(24):致命错误C1189:#error:使用/ MD建立MFC应用程序[d](CRT dll版本)需要MFC共享dll版本.请#define _AFXDLL或不要使用/ MD [d]
然后我补充说
#define _AFXDLL
Run Code Online (Sandbox Code Playgroud)
正如错误消息所述,并得到了十几个错误:
C:\ Program Files\Microsoft Visual Studio 9.0\VC\atlmfc\include\afxole.h(1455):错误C2504:'CControlBar':基类未定义
1> C:\ Program Files\Microsoft Visual Studio 9.0\VC\atlmfc\include\afxole.h(1470):错误C2146:语法错误:缺少';' 在标识符"m_tracker"之前
1> C:\ Program Files\Microsoft Visual Studio 9.0\VC\atlmfc\include\afxole.h(1470):错误C4430:缺少类型说明符 - 假定为int.注意:C++不支持default-int
1> C:\ Program Files\Microsoft Visual Studio 9.0\VC\atlmfc\include\afxole.h(1470):错误C4430:缺少类型说明符 - 假定为int.注意:C++不支持default-int
1> C:\ Program Files\Microsoft Visual Studio 9.0\VC\atlmfc\include\afxpriv.h(590):错误C2504:'CControlBar':基类未定义
关于如何做到这一点的任何想法?PS我是Visual C++的新手
我正在使用MFC进行gui开发,我偶然发现了一个对我正在尝试做的事情有用的函数.该函数是_AfxCompareClassName.但是,它包含在其位于目录"VC/altmfc /文件"afximpl.h" SRC/MFC /afximpl.h".正常的mfc包含在目录"VC/atlmfc/include "中.
现在从我收集的内容中,src/mfc中的文件和函数被认为是私有mfc(根据这个人),我不应该使用它们.为什么?这个功能看起来不错.它会帮助我知道我目前在UI中的位置.
最终我想要做的是在编辑文本字段(编辑控件)时更改转义/返回键行为.我的问题如下:
我虽然得到一些关于私人MFC的信息很好,因为到目前为止似乎没有任何关于私有MFC的信息.
非常感谢,JC