MFC学习二

来源:互联网 发布:移动网络电视信号不好 编辑:程序博客网 时间:2024/06/01 10:08
套接字:
加载套接字 AfxSocketInit()  在afxsock.h 头文件中,但是只能加载1.1版本的套接字
加载套接字函数  WSAStartup() 可以加载设定版本的套接字  在MSDN中有例子  
但是注意需要包含头文件winsock2.h和链接库 ws2_32.lib
还要调用WSACleanup() 终止对套接字的使用
注册网络读取事件 WSAAsyncSelect()
CString中的一个对象GetBuffer()方法可以将CStrig对象转换成 char *返回


ActiveX控件:
取消控件的注册 regsvr32 /u  控件路径
加载控件的注册 regsvr32   控件路径
Invalidate();   //使窗口无效,对窗口重绘
InvalidateControl() //重绘整个控件
SetBkMode();  //设置背景色
GetBackColor() //获取背景色
BoundPropertyChanged() //通知绑定的属性值已经改变
AmbientUserMode()     //得到控件是在设计阶段还是运行阶段
更详细的控件访问方法   查看COleControl有一个ActiveX控件的连接查看




动态链接库:
编写动态链接库的时候需要在每一个需要导出的函数名前加上_declspec(dllexport)
查看导出函数的方法是  dumpbin -exports dll1.dll
查看可执行程序的输入信息  dumpbin -imports a.exe
除了使用extern  来标识函数是外部引用的,还可以使用_declspec(dllexport)
GetForegroundWindow() 得到前景窗的句柄


进程间通信
剪切板:
打开剪切板   OpenClipboard()
请空剪切板获得拥有权   EmptyClipboard()
向剪切板中放入数据    SetClipboardData()
从剪切板中得到数据    GetClipboardData()
检测剪切板是否包含了指定格式的数据 IsClipboardFormatAvailable()


匿名管道:
创建匿名管道   CreatePipe()
启动一个子进程   CreateProcess()
ZeroMemory() 可以将结构的所有成员都设为0
GetStdHandle   可以获得标出输入,标准输出和标准出错的句柄


命名管道:
创建命名管道    CreateNamedPipe()


邮槽:
创建邮槽   CreateMailslot()
CreateFile() 可以打开一个邮槽,也可以打开其他的


HOOK:
SetWindowsHookEx()   安装HOOK过程
GetCurrentThreadId()   得到当前线程的ID
空格键  VK_SPACE
回车    VK_RETURN
UnhookWindowsHookEx()  从已经安装的hook链中移走一个已经安装还的Hook
CallNextHookEx() 让消息继续传递
GetModuleHandle()    获得当前动态链接库的句柄,还可以使用DllMain()


def文件的写法:
LIBRARY (project name)
EXPORTS
(function name)    [number]
SEGMENTS
节名      READ WRITE SHARED //设置节的共享




设置窗口       SetWindowPos()
得到系统信息    GetSystemMetrics()


查看dll的节
dumpbin -headers 1.dll


创建节
#pragram data_seg("name")  //name不能超过8个字节
类型   name
#pragram data_seg()


#pragram comment(linker, "/section:name, RWS")  //程序中设置节的共享


数据库ADO操作
导入数据库:
#import 加上路径  no_namespace  rename("EOF", "rsEOF")













0 0
原创粉丝点击