在某个控件上使用 Alt+Enter 或 右键->Properties 表示调出属性设置框
在某个控件上使用 Ctrl+双击 表示弹出添加成员变量对话框
Ctrl+F5 生成可执行文件
Ctrl+W 建立类向导
类别 资源符号前缀 代表的资源或对象
资源 IDR_ 加速键或菜单及相关资源
资源 IDD_ 对话框资源
资源 IDC_ 光标资源
资源 IDI_ 图标资源
资源 IDB_ 位图资源
菜单项命令控制 IDM_ 菜单项
菜单项命令控制 ID_ 命令项
菜单项命令控制 IDC_ 控件
字符串 IDS_ 字符串表中的字符串
字符串 IDP_ 消息框中使用的字符串
ActiveX控件的安全性问题:
它是实现了一些特殊接口的COM组件。
但有些ActiveX控件一旦装入和实例化后,只要其所运行的进程有必要的权限,
就可以为所欲为。甚至格式化用户硬盘。
控件的危害有三种形式:通过有用的总体编码,通过初始化和通过脚本。
要将控件标为安全,可以在控件注册表项中增加两个实现类别:
类别 称为
{7DD95801-9882-11CF-9FA9-00AA006C42C4} Controls safely scriptable(脚本安全)
{7DD95802-9882-11CF-9FA9-00AA006C42C4} Controls safely initializable from
persistent data (持续数据初始化安全)
要将这两个类别加进控件中,只要控件的Implemented Categories key 键中对每个类别增加一个键
例如,ATL(active template library) Ticker control 的CLSID为{4663F290-D98A-11D2-91C6-
0008C7FE9130},因此其注册表项包括两个实现类别如下:
HKEY_CLASSES_ROOT/CLSID/{4663F290-D98A-11D2-91C6-0008C7FE9130}/Implemented Categories/
{7DD95801-9882-11CF-9FA9-00AA006C42C4}
HKEY_CLASSES_ROOT/CLSID/{4663F290-D98A-11D2-91C6-0008C7FE9130}/Implemented Categories/
{7DD95802-9882-11CF-9FA9-00AA006C42C4}
通过增加这些注册表项,即可对控件安全进行静态决策。
分布式COM(DCOM) Distributed COM
surrogate 代理
COM组件用ActiveX DLL生成, 包含程序可以通过COM组件访问的类。
Alt+F3 在源文件中搜索文本
若要倒序搜索则按Shift键
F6: 转换到下一窗口。
Ctrl+F6: 转换到下一文档所在的窗口。
shift+ctrl+F6: 转换到前一文档所在窗口。
shift+F6: 转换到前一窗口。
ctrl+Tab: 转换到前一激活窗口。
Ctrl+F4: 关闭激活窗口。
通用 Hungarian 命名方法
前缀 描述
a array(数组)
b boolean(true or false)(布尔量)
by byte(an unsigned character)(无符号字符)
c character(字符)
cb count of bytes(字节数)
cr color reference(引用)
cx,cy count of x coordinate,y coordinate,or length(x,y 坐标或长度 )
dw double word(双字)
fn function(函数)
h handle(句柄)
i integer(整数)
m_ member of a class(类成员)
n integer(整数)
np near pointer(短指针)
l long(长整数)
lp long pointer(长指针)
s string(see the next section)(字符串)
sz zero-terminated string(零)
tm text metric(文本)
w word(unsigned integer)(字)
x,y x coordinate or y coordinate(x或y坐标)
各种MFC异常情况
异常情况名 描述
CArchiveException 存档异常
CFileException 文件i/o异常
CMemoryException 内存异常
CNotSupportedException 无此特性
COleException 对象连接和嵌入异常
Exception Windows资源异常
CResourceException 用户异常
CUserException 错误码转换为异常码
ErrnoToException DOS错误码转换为异常码
textout(,,,),
if (pDOC->sInput[ctr]=='/r')//int ctr 控制检测是不是回车换行键
{cyChar+=(textStruct.tmHeight+textStruct.tmExternalLeading);}
pDoc->SetModifiedFlag();//The user modified the window's data
sInput.Empty() //清空
它包含了唯一一行需加入的代码,它在用户没有存储现行文件就试图退出程序或装入一个新文件时激活
了警告对话框。如果用户在警告对话框中回答yes,应用程序将自动显示File Save 对话框.
Windows 消息举例
Windows 消息 描述
WM_CLOSE 窗口关闭
WM_CREATE 窗口建立(可能已准备好显示)
WM_DESTROY 窗口永久性关闭
WM_MENUSELECT 用户从菜单中选中某一项
WM_MOVE 用户移动了窗口
WM_PAINT 窗口局部或全部需要被重画(也许是因为
另一个叠盖其上的窗口刚刚被关闭)
WM_QUIT 程序终止
WM_SETFOCUS 程序获得访问点(指从一个活动窗口转向或激活另一个新的活动窗口)
WM_SHOWWINDOW 窗口被显示(如果被隐藏)或被隐藏(如果被显示)
WM_SIZE 重新规划窗口大小
Vc 中的图形的一些参数:
GetDeviceCaps():
HORZSIZE 屏幕宽度(毫米)
VERTSIZE 屏幕高度(毫米)
HORZRES 屏幕横向像素点数
VERTRES 屏幕纵向像素点数
LOGPIXELSX 每英寸宽度像素点数
LOGPIXELSY 每英寸高度像素点数
CreatePen(int PenStyle,int width,colorValue);PenStyle从预先定义的常数中选择
PS_SOLID 实线
PS_DASH 虚线
PS_DOT 点线
PS_DASHDOT 点划线
PS_DASHDOTDOT 双点划线
PS_NULL 隐藏线
1。定义CPen对象
2。用CreatePen()建立一支笔
3。用SelectObject()激活这支笔
4。用LineTo()及其他图形函数绘图,使用这支字定义的笔。
用函数CreateHatchBrush()建立实心绘图刷:
HS_BDIAGONAL 斜线(45度)
HS_CROSS 交叉线
HS_DIAGCROSS 斜交叉线
HS_FDIAGONAL 斜线(135度)
HS_HORIZONTAL 水平线
HS_VERTICAL 垂直线