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》