青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

posts - 16,  comments - 34,  trackbacks - 0
LRESULT CallNextHookEx(HHOOK hhk,int nCode,WPARAM wParam,LPARAM lParam);

 

hhk [in]
Windows 95/98/ME: Handle to the current hook. An application receives this handle as a result of a previous call to the SetWindowsHookEx function.
Windows NT/XP/2003: Ignored.


什么時候多了一條“Windows NT/XP/2003: Ignored.”???

以前看到一直是
“Identifies the current hook. An application receives this handle as a result of a previous call to the SetWindowsHookEx function. ”
但再翻翻VS2005和2008的文檔、網(wǎng)絡(luò)或者離線MSDN全都統(tǒng)一口徑說,“Windows NT/XP/2003: Ignored.”
還逮不到M$的把柄了……

改天裝個VC6的文檔看看CallNextHookEx是怎么說的……  難道真是我記錯了?


 

本來么,Windows的很多回調(diào)函數(shù)就設(shè)計得有缺陷——缺少一個狀態(tài)維持的參數(shù),比如void* user_data

最常見的WndProc就是一例。
一旦一個特定的WndProc需要同時作為幾個窗口的處理函數(shù),不使用靜態(tài)變量(包括global和static)幾乎是不可能辦到的事情。
Charles Petzold的《Programming Windows》當中都不乏這樣的例子:需要讓一個WndProc處理多個窗口,而不得不使用全局變量。


如果作為最終開發(fā)人員,當然有權(quán)使用每個hWnd的USER_DATA。但是庫不可以這樣做。
所以庫們想了各種各樣的辦法,主要包括以MFC和wxwidgets為代表的全局映射表,和WTL/ATL為代表的thunk,來解決WndProc的問題。


而在這些有缺陷的回調(diào)函數(shù)中,最嚴重的就是所有的HookProc。
要求你在HookProc當中以SetWindowsHookEx的返回值為第1個參數(shù)調(diào)用CallNextHookEx,卻不把這個參數(shù)傳遞給你!
回調(diào)函數(shù)啊!調(diào)用者都不傳,這不是逼人用全局變量么?
雪上加霜的是,它還涉及到了地址空間的問題,全局變量還要放在共享節(jié)里才可以。
真是……



本來打算設(shè)計一套機制解決這個問題的。可是M$已經(jīng)悄悄的忽略了CallNextHookEx的第1個參數(shù)……

posted on 2009-03-04 22:53 OwnWaterloo 閱讀(1692) 評論(2)  編輯 收藏 引用

FeedBack:
# re: 在WinNT上CallNextHookEx忽略第1個參數(shù)
2009-03-05 00:49 | 陳梓瀚(vczh)
反正,HWND被映射到一個類指針,這張表寫在全局變量里面。HOOK拿到了HWND,去找表,然后找到你自己的類,類里面就有一堆user data了。

所以,只需要一張表。  回復(fù)  更多評論
  
# re: 在WinNT上CallNextHookEx忽略第1個參數(shù)
2009-03-05 13:38 | OwnWaterloo
@陳梓瀚(vczh)
老兄 你說的是WndPorc吧? WndPorc拿到HWND,然后去查表找this。
上面說了,這是MFC和wxwidgets處理WndProc的方式。

對于HOOK,即使通過LPARAM轉(zhuǎn)型到XXXStruct,拿到一個HWND,也不能保證就有user data。
比如,程序已經(jīng)是別人寫好了,根本無法知道他是否有表。
這時候,就必須HOOK自己想辦法找user data了。  回復(fù)  更多評論
  

只有注冊用戶登錄后才能發(fā)表評論。
網(wǎng)站導(dǎo)航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


<2009年3月>
22232425262728
1234567
891011121314
15161718192021
22232425262728
2930311234

常用鏈接

留言簿(8)

隨筆檔案(16)

鏈接

搜索

  •  

積分與排名

  • 積分 - 199014
  • 排名 - 134

最新隨筆

最新評論

閱讀排行榜

評論排行榜

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            欧美第一黄网免费网站| 欧美一区二区三区另类| 国产精品亚洲第一区在线暖暖韩国| 亚洲国产精品女人久久久| 一本色道久久综合精品竹菊| 久久精品五月| 99在线视频精品| 亚洲自拍电影| 国产精品免费区二区三区观看| 欧美午夜免费| 国产精品盗摄久久久| 久久亚洲免费| 亚洲香蕉网站| 欧美成人69av| 国产精品xxxav免费视频| 久久久久久欧美| 欧美视频在线观看 亚洲欧| 亚洲精品在线观| 欧美一区二区三区免费大片| 99热免费精品在线观看| 久久免费国产精品1| 欧美夜福利tv在线| 免费亚洲电影在线| 亚洲视频精品| 翔田千里一区二区| 美女日韩欧美| 欧美岛国激情| 国产精品高潮呻吟| 国产日韩欧美综合在线| 欧美四级剧情无删版影片| 国产精品v欧美精品v日本精品动漫 | 欧美一区午夜精品| 亚洲电影毛片| 欧美久久婷婷综合色| 国产精品人人做人人爽人人添| 欧美日韩亚洲综合| 在线日韩av永久免费观看| 亚洲午夜精品| 欧美一区二区日韩| 欧美激情1区| 91久久在线观看| 91久久中文| 欧美一级视频免费在线观看| 亚洲视频在线观看| 亚洲综合日韩在线| 亚洲一区二区三区午夜| 久久久久久久999精品视频| 欧美激情精品久久久久| 国产日韩欧美一区在线 | 在线国产精品一区| 亚洲午夜成aⅴ人片| 99re6热只有精品免费观看| 一区二区三区高清视频在线观看| 久久国产一区二区三区| 久久aⅴ国产欧美74aaa| 欧美综合国产精品久久丁香| 欧美成人69| 能在线观看的日韩av| 国语精品一区| 亚洲欧洲日产国产网站| 欧美成ee人免费视频| 日韩午夜一区| 亚洲免费在线视频| 欧美激情自拍| 亚洲高清激情| 99re6这里只有精品| 欧美激情二区三区| 中国成人黄色视屏| 久久久国产视频91| 亚洲国产欧美一区| 美女精品视频一区| 久久综合久久美利坚合众国| 国产欧美一区二区三区久久| 久久久久这里只有精品| 久久久青草青青国产亚洲免观| 国产午夜精品一区理论片飘花| 一本久久综合亚洲鲁鲁五月天| 亚洲国产老妈| 午夜日韩av| 亚洲无线视频| 亚洲欧洲一区二区在线观看| 亚洲视屏一区| 亚洲国产天堂久久综合| 亚洲欧美中文另类| 久久国产日本精品| 日韩亚洲欧美精品| 在线电影国产精品| 久久一区中文字幕| 欧美国产激情二区三区| 国产精品激情偷乱一区二区∴| 久久成人18免费观看| 亚洲国产精品第一区二区三区| 伊人夜夜躁av伊人久久| 亚洲欧美国产va在线影院| 亚洲国产高清在线| 久久综合五月天婷婷伊人| 国产美女一区| 国产精品丝袜久久久久久app| 亚洲国产日韩欧美综合久久| 99精品国产在热久久| 黄色成人av在线| 亚洲午夜精品一区二区三区他趣| 久久国产精品网站| 国产日韩欧美一区| 久久高清国产| 最近看过的日韩成人| 亚洲欧美国产制服动漫| 国产精品一区二区黑丝| 久久综合久久久久88| 一区二区三区日韩欧美精品| 久久综合久久美利坚合众国| 欧美视频在线看| 亚洲一区二区av电影| 久久精品视频免费| 亚洲综合欧美日韩| 美女国产精品| 在线观看日韩精品| 久久在线观看视频| 亚洲福利免费| 蜜臀va亚洲va欧美va天堂| 久久伊人一区二区| 亚洲专区国产精品| 一区二区激情| 亚洲午夜影视影院在线观看| 久久精品视频免费| 亚洲国产成人在线播放| 国产精品裸体一区二区三区| 国产精品久线观看视频| 久久国产精品99精品国产| 亚洲精品在线视频| 欧美大片在线观看一区二区| 欧美成人亚洲成人| 欧美一级夜夜爽| 香蕉免费一区二区三区在线观看 | 亚洲国产aⅴ天堂久久| 亚洲欧美视频在线观看| 先锋影音一区二区三区| 午夜精品999| 亚洲看片网站| 国产一区二区三区在线观看网站| 乱码第一页成人| 欧美日韩在线视频一区二区| 欧美一区二区三区四区高清| 在线一区观看| 日韩一级在线| 美女日韩欧美| 亚洲国产精品久久久久秋霞蜜臀 | 99国产一区二区三精品乱码| 午夜亚洲视频| 久久亚洲精选| 99在线视频精品| 久久久天天操| 欧美日韩亚洲精品内裤| 女同性一区二区三区人了人一| 美女脱光内衣内裤视频久久影院 | 免费精品99久久国产综合精品| 亚洲电影在线免费观看| 亚洲欧洲日韩综合二区| 一区二区三区久久网| 免费久久精品视频| 激情一区二区三区| 一区二区动漫| 性做久久久久久久久| 欧美成年视频| 欧美中文字幕在线| 欧美日韩123| 亚洲一区二区在线免费观看视频 | 久久久水蜜桃| 欧美区视频在线观看| 国产综合久久| 亚洲国语精品自产拍在线观看| 午夜精品一区二区三区在线播放| 精品91在线| 亚洲自拍偷拍色片视频| 亚洲午夜精品久久久久久浪潮| 亚洲精品女av网站| 久久国产一区二区三区| 一区在线影院| 香蕉成人久久| 麻豆成人综合网| 在线观看视频一区二区欧美日韩 | 亚洲国产精品综合| 久久www成人_看片免费不卡| 亚洲一区二区高清视频| 国产精品毛片| 久久综合影音| 国产精品久久久久久一区二区三区| 中国av一区| 一本色道久久88精品综合| 国产一区二区三区精品欧美日韩一区二区三区| 欧美性色aⅴ视频一区日韩精品| 亚洲美女少妇无套啪啪呻吟| 亚洲国产日韩欧美在线99 | 亚洲无限av看| 欧美激情在线免费观看| 一区二区三区免费在线观看| 性欧美暴力猛交另类hd| 欧美精品导航| 香蕉乱码成人久久天堂爱免费| 亚洲美洲欧洲综合国产一区|