re: WM_COPYDATA实现进程间数据共享 TechLab 2006-04-03 08:31
@Hooker
lpData这个地址你是在进程B里得到的吧,你直接把这个放到进程A来修改不行的,因为这个地址只是在进程B空间内有效。不能通过在A里直接写B的地址。
可以用CreateRemoteThread在B里创建线程,通过这个线程去修改。
re: GDI转BMP为WMF TechLab 2006-01-13 10:39
真正的wmf/emf都是矢量的数据,这样只是把图片插入到wmf中.
re: WM_COPYDATA实现进程间数据共享 TechLab 2005-12-30 13:46
WriteProcessMemory我一般和CreateRemoteThread配合创建远程线程使用
re: 程序模拟实现显示桌面的功能 TechLab 2005-12-30 12:38
除了上面的方法还可以模拟发送键盘消息
按下WIN+D键
keybd_event(VK_LWIN,0,0,0);
keybd_event('D',0,0,0);
keybd_event(VK_LWIN,0,KEYEVENTF_KEYUP,0);
keybd_event('D',0,KEYEVENTF_KEYUP,0);
laiyiling->gmail.com ->TO@
CDC *cdc= GetDC(); 是对的,只是你要看得到的cdc是不是空,这个cdc要和你的窗口显示DC
按照一般情况,我们构造一个Graphics对象通过传递一个HDC,然后用这个对象画图,就相当于在DC上画图,这里我们用一个Metafile对象来构造Graphics,所以画图就相当于是在Metafile上进行的,而这个Metafile对象又是用我们的EMF文件构造的,所以画图就相当于是在目标的文件上进行的了。明白了吗?
re: 让TOOLBAR呈多列显示 TechLab 2005-10-20 15:35
MFC中可以直接用CToolBarCtrl::SetRows设置行数
re: 有么办法可以得到基类的地址?? TechLab 2005-09-28 08:25
这个地址是根据编译器不同有区别的,Virtual继承的时候有的是把vptr指针放开始位置,有的是放在最后面的。甚至有的对vptr做了优化处理,关于这个方面的知识你可以去看《Inside Object Modle》