亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? windowsx.h

?? vc++網(wǎng)絡(luò)編程教程的源碼。可能對使用vc網(wǎng)絡(luò)編程的有用。
?? H
?? 第 1 頁 / 共 5 頁
字號:
/*****************************************************************************\
*                                                                             *
* windowsx.h -  Macro APIs, window message crackers, and control APIs         *
*                                                                             *
*               Version Win32 / Windows NT                                    *
*                                                                             *
*               Copyright (c) 1992-1995, Microsoft Corp.  All rights reserved.*
*                                                                             *
\*****************************************************************************/

#ifndef _INC_WINDOWSX
#define _INC_WINDOWSX

#ifdef __cplusplus
extern "C" {            /* Assume C declarations for C++ */
#endif /* __cplusplus */

/****** KERNEL Macro APIs ****************************************************/

#define     GetInstanceModule(hInstance) (HMODULE)(hInstance)

#define     GlobalPtrHandle(lp)         \
                ((HGLOBAL)GlobalHandle(lp))

#define     GlobalLockPtr(lp)                \
                ((BOOL)GlobalLock(GlobalPtrHandle(lp)))
#define     GlobalUnlockPtr(lp)      \
                GlobalUnlock(GlobalPtrHandle(lp))

#define     GlobalAllocPtr(flags, cb)        \
                (GlobalLock(GlobalAlloc((flags), (cb))))
#define     GlobalReAllocPtr(lp, cbNew, flags)       \
                (GlobalUnlockPtr(lp), GlobalLock(GlobalReAlloc(GlobalPtrHandle(lp) , (cbNew), (flags))))
#define     GlobalFreePtr(lp)                \
                (GlobalUnlockPtr(lp), (BOOL)GlobalFree(GlobalPtrHandle(lp)))

/****** GDI Macro APIs *******************************************************/

#define     DeletePen(hpen)      DeleteObject((HGDIOBJ)(HPEN)(hpen))
#define     SelectPen(hdc, hpen)    ((HPEN)SelectObject((hdc), (HGDIOBJ)(HPEN)(hpen)))
#define     GetStockPen(i)       ((HPEN)GetStockObject(i))

#define     DeleteBrush(hbr)     DeleteObject((HGDIOBJ)(HBRUSH)(hbr))
#define     SelectBrush(hdc, hbr)   ((HBRUSH)SelectObject((hdc), (HGDIOBJ)(HBRUSH)(hbr)))
#define     GetStockBrush(i)     ((HBRUSH)GetStockObject(i))

#define     DeleteRgn(hrgn)      DeleteObject((HGDIOBJ)(HRGN)(hrgn))

#define     CopyRgn(hrgnDst, hrgnSrc)               CombineRgn(hrgnDst, hrgnSrc, 0, RGN_COPY)
#define     IntersectRgn(hrgnResult, hrgnA, hrgnB)  CombineRgn(hrgnResult, hrgnA, hrgnB, RGN_AND)
#define     SubtractRgn(hrgnResult, hrgnA, hrgnB)   CombineRgn(hrgnResult, hrgnA, hrgnB, RGN_DIFF)
#define     UnionRgn(hrgnResult, hrgnA, hrgnB)      CombineRgn(hrgnResult, hrgnA, hrgnB, RGN_OR)
#define     XorRgn(hrgnResult, hrgnA, hrgnB)        CombineRgn(hrgnResult, hrgnA, hrgnB, RGN_XOR)

#define     DeletePalette(hpal)     DeleteObject((HGDIOBJ)(HPALETTE)(hpal))

#define     DeleteFont(hfont)            DeleteObject((HGDIOBJ)(HFONT)(hfont))
#define     SelectFont(hdc, hfont)  ((HFONT)SelectObject((hdc), (HGDIOBJ)(HFONT)(hfont)))
#define     GetStockFont(i)      ((HFONT)GetStockObject(i))

#define     DeleteBitmap(hbm)       DeleteObject((HGDIOBJ)(HBITMAP)(hbm))
#define     SelectBitmap(hdc, hbm)  ((HBITMAP)SelectObject((hdc), (HGDIOBJ)(HBITMAP)(hbm)))

#define     InsetRect(lprc, dx, dy) InflateRect((lprc), -(dx), -(dy))

/****** USER Macro APIs ******************************************************/

#define     GetWindowInstance(hwnd) ((HMODULE)GetWindowLong(hwnd, GWL_HINSTANCE))

#define     GetWindowStyle(hwnd)    ((DWORD)GetWindowLong(hwnd, GWL_STYLE))
#define     GetWindowExStyle(hwnd)  ((DWORD)GetWindowLong(hwnd, GWL_EXSTYLE))

#define     GetWindowOwner(hwnd)    GetWindow(hwnd, GW_OWNER)

#define     GetFirstChild(hwnd)     GetTopWindow(hwnd)
#define     GetFirstSibling(hwnd)   GetWindow(hwnd, GW_HWNDFIRST)
#define     GetLastSibling(hwnd)    GetWindow(hwnd, GW_HWNDLAST)
#define     GetNextSibling(hwnd)    GetWindow(hwnd, GW_HWNDNEXT)
#define     GetPrevSibling(hwnd)    GetWindow(hwnd, GW_HWNDPREV)

#define     GetWindowID(hwnd)            GetDlgCtrlID(hwnd)

#define     SetWindowRedraw(hwnd, fRedraw)  \
                    ((void)SendMessage(hwnd, WM_SETREDRAW, (WPARAM)(BOOL)(fRedraw), 0L))

#define     SubclassWindow(hwnd, lpfn)       \
              ((WNDPROC)SetWindowLong((hwnd), GWL_WNDPROC, (LPARAM)(WNDPROC)(lpfn)))

#define     IsMinimized(hwnd)        IsIconic(hwnd)
#define     IsMaximized(hwnd)        IsZoomed(hwnd)
#define     IsRestored(hwnd)    ((GetWindowStyle(hwnd) & (WS_MINIMIZE | WS_MAXIMIZE)) == 0L)

#define     SetWindowFont(hwnd, hfont, fRedraw) FORWARD_WM_SETFONT((hwnd), (hfont), (fRedraw), SendMessage)

#define     GetWindowFont(hwnd)                 FORWARD_WM_GETFONT((hwnd), SendMessage)
#if (WINVER >= 0x030a)
#define     MapWindowRect(hwndFrom, hwndTo, lprc) \
                    MapWindowPoints((hwndFrom), (hwndTo), (POINT *)(lprc), 2)
#endif
#define     IsLButtonDown()  (GetKeyState(VK_LBUTTON) < 0)
#define     IsRButtonDown()  (GetKeyState(VK_RBUTTON) < 0)
#define     IsMButtonDown()  (GetKeyState(VK_MBUTTON) < 0)

#define     SubclassDialog(hwndDlg, lpfn) \
             ((DLGPROC)SetWindowLong(hwndDlg, DWL_DLGPROC, (LPARAM)(DLGPROC)(lpfn)))

#define     SetDlgMsgResult(hwnd, msg, result) (( \
        (msg) == WM_CTLCOLORMSGBOX      || \
        (msg) == WM_CTLCOLOREDIT        || \
        (msg) == WM_CTLCOLORLISTBOX     || \
        (msg) == WM_CTLCOLORBTN         || \
        (msg) == WM_CTLCOLORDLG         || \
        (msg) == WM_CTLCOLORSCROLLBAR   || \
        (msg) == WM_CTLCOLORSTATIC      || \
        (msg) == WM_COMPAREITEM         || \
        (msg) == WM_VKEYTOITEM          || \
        (msg) == WM_CHARTOITEM          || \
        (msg) == WM_QUERYDRAGICON       || \
        (msg) == WM_INITDIALOG             \
    ) ? (BOOL)(result) : (SetWindowLong((hwnd), DWL_MSGRESULT, (LPARAM)(LRESULT)(result)), TRUE))

#define     DefDlgProcEx(hwnd, msg, wParam, lParam, pfRecursion) \
    (*(pfRecursion) = TRUE, DefDlgProc(hwnd, msg, wParam, lParam))

#define     CheckDefDlgRecursion(pfRecursion) \
    if (*(pfRecursion)) { *(pfRecursion) = FALSE; return FALSE; }

/****** Message crackers ****************************************************/

#define HANDLE_MSG(hwnd, message, fn)    \
    case (message): return HANDLE_##message((hwnd), (wParam), (lParam), (fn))

/* void Cls_OnCompacting(HWND hwnd, UINT compactRatio) */
#define HANDLE_WM_COMPACTING(hwnd, wParam, lParam, fn) \
    ((fn)((hwnd), (UINT)(wParam)), 0L)
#define FORWARD_WM_COMPACTING(hwnd, compactRatio, fn) \
    (void)(fn)((hwnd), WM_COMPACTING, (WPARAM)(UINT)(compactRatio), 0L)

/* void Cls_OnWinIniChange(HWND hwnd, LPCTSTR lpszSectionName) */
#define HANDLE_WM_WININICHANGE(hwnd, wParam, lParam, fn) \
    ((fn)((hwnd), (LPCTSTR)(lParam)), 0L)
#define FORWARD_WM_WININICHANGE(hwnd, lpszSectionName, fn) \
    (void)(fn)((hwnd), WM_WININICHANGE, 0L, (LPARAM)(LPCTSTR)(lpszSectionName))

/* void Cls_OnSysColorChange(HWND hwnd) */
#define HANDLE_WM_SYSCOLORCHANGE(hwnd, wParam, lParam, fn) \
    ((fn)(hwnd), 0L)
#define FORWARD_WM_SYSCOLORCHANGE(hwnd, fn) \
    (void)(fn)((hwnd), WM_SYSCOLORCHANGE, 0L, 0L)

/* BOOL Cls_OnQueryNewPalette(HWND hwnd) */
#define HANDLE_WM_QUERYNEWPALETTE(hwnd, wParam, lParam, fn) \
    MAKELRESULT((BOOL)(fn)(hwnd), 0L)
#define FORWARD_WM_QUERYNEWPALETTE(hwnd, fn) \
    (BOOL)(DWORD)(fn)((hwnd), WM_QUERYNEWPALETTE, 0L, 0L)

/* void Cls_OnPaletteIsChanging(HWND hwnd, HWND hwndPaletteChange) */
#define HANDLE_WM_PALETTEISCHANGING(hwnd, wParam, lParam, fn) \
    ((fn)((hwnd), (HWND)(wParam)), 0L)
#define FORWARD_WM_PALETTEISCHANGING(hwnd, hwndPaletteChange, fn) \
    (void)(fn)((hwnd), WM_PALETTEISCHANGING, (WPARAM)(HWND)(hwndPaletteChange), 0L)

/* void Cls_OnPaletteChanged(HWND hwnd, HWND hwndPaletteChange) */
#define HANDLE_WM_PALETTECHANGED(hwnd, wParam, lParam, fn) \
    ((fn)((hwnd), (HWND)(wParam)), 0L)
#define FORWARD_WM_PALETTECHANGED(hwnd, hwndPaletteChange, fn) \
    (void)(fn)((hwnd), WM_PALETTECHANGED, (WPARAM)(HWND)(hwndPaletteChange), 0L)

/* void Cls_OnFontChange(HWND hwnd) */
#define HANDLE_WM_FONTCHANGE(hwnd, wParam, lParam, fn) \
    ((fn)(hwnd), 0L)
#define FORWARD_WM_FONTCHANGE(hwnd, fn) \
    (void)(fn)((hwnd), WM_FONTCHANGE, 0L, 0L)

/* void Cls_OnSpoolerStatus(HWND hwnd, UINT status, int cJobInQueue) */
#define HANDLE_WM_SPOOLERSTATUS(hwnd, wParam, lParam, fn) \
    ((fn)((hwnd), (UINT)(wParam), (int)(short)LOWORD(lParam)), 0L)
#define FORWARD_WM_SPOOLERSTATUS(hwnd, status, cJobInQueue, fn) \
    (void)(fn)((hwnd), WM_SPOOLERSTATUS, (WPARAM)(status), MAKELPARAM((cJobInQueue), 0))

/* void Cls_OnDevModeChange(HWND hwnd, LPCTSTR lpszDeviceName) */
#define HANDLE_WM_DEVMODECHANGE(hwnd, wParam, lParam, fn) \
    ((fn)((hwnd), (LPCTSTR)(lParam)), 0L)
#define FORWARD_WM_DEVMODECHANGE(hwnd, lpszDeviceName, fn) \
    (void)(fn)((hwnd), WM_DEVMODECHANGE, 0L, (LPARAM)(LPCTSTR)(lpszDeviceName))

/* void Cls_OnTimeChange(HWND hwnd) */
#define HANDLE_WM_TIMECHANGE(hwnd, wParam, lParam, fn) \
    ((fn)(hwnd), 0L)
#define FORWARD_WM_TIMECHANGE(hwnd, fn) \
    (void)(fn)((hwnd), WM_TIMECHANGE, 0L, 0L)

/* void Cls_OnPower(HWND hwnd, int code) */
#define HANDLE_WM_POWER(hwnd, wParam, lParam, fn) \
    ((fn)((hwnd), (int)(wParam)), 0L)
#define FORWARD_WM_POWER(hwnd, code, fn) \
    (void)(fn)((hwnd), WM_POWER, (WPARAM)(int)(code), 0L)

/* BOOL Cls_OnQueryEndSession(HWND hwnd) */
#define HANDLE_WM_QUERYENDSESSION(hwnd, wParam, lParam, fn) \
    MAKELRESULT((BOOL)(fn)(hwnd), 0L)
#define FORWARD_WM_QUERYENDSESSION(hwnd, fn) \
    (BOOL)(DWORD)(fn)((hwnd), WM_QUERYENDSESSION, 0L, 0L)

/* void Cls_OnEndSession(HWND hwnd, BOOL fEnding) */
#define HANDLE_WM_ENDSESSION(hwnd, wParam, lParam, fn) \
    ((fn)((hwnd), (BOOL)(wParam)), 0L)
#define FORWARD_WM_ENDSESSION(hwnd, fEnding, fn) \
    (void)(fn)((hwnd), WM_ENDSESSION, (WPARAM)(BOOL)(fEnding), 0L)

/* void Cls_OnQuit(HWND hwnd, int exitCode) */
#define HANDLE_WM_QUIT(hwnd, wParam, lParam, fn) \
    ((fn)((hwnd), (int)(wParam)), 0L)
#define FORWARD_WM_QUIT(hwnd, exitCode, fn) \
    (void)(fn)((hwnd), WM_QUIT, (WPARAM)(exitCode), 0L)

/* This message is in Windows 3.1 only */
/* void Cls_OnSystemError(HWND hwnd, int errCode) */
#define HANDLE_WM_SYSTEMERROR(hwnd, wParam, lParam, fn) 0L
#define FORWARD_WM_SYSTEMERROR(hwnd, errCode, fn) 0L

/* BOOL Cls_OnCreate(HWND hwnd, LPCREATESTRUCT lpCreateStruct) */
#define HANDLE_WM_CREATE(hwnd, wParam, lParam, fn) \
    ((fn)((hwnd), (LPCREATESTRUCT)(lParam)) ? 0L : (LRESULT)-1L)
#define FORWARD_WM_CREATE(hwnd, lpCreateStruct, fn) \
    (BOOL)(DWORD)(fn)((hwnd), WM_CREATE, 0L, (LPARAM)(LPCREATESTRUCT)(lpCreateStruct))

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美电影影音先锋| 国产精品色哟哟| 日本久久电影网| 从欧美一区二区三区| 激情小说欧美图片| 亚洲视频在线一区| 国产精品全国免费观看高清| 26uuu另类欧美亚洲曰本| 日本黄色一区二区| 国产成人免费av在线| 国产老肥熟一区二区三区| 美洲天堂一区二卡三卡四卡视频| 亚洲资源在线观看| 亚洲欧美aⅴ...| 国产蜜臀97一区二区三区 | 国产丝袜在线精品| 欧美精品色一区二区三区| 在线亚洲人成电影网站色www| 国产高清不卡一区二区| 国产一区二区精品久久| 国内精品久久久久影院色| 久久超级碰视频| 精品制服美女丁香| 国产视频一区不卡| 欧美日韩一区二区不卡| 欧美丰满少妇xxxbbb| 精品美女一区二区三区| 久久蜜臀精品av| 国产精品女同一区二区三区| 亚洲乱码中文字幕综合| 日韩va欧美va亚洲va久久| 美女看a上一区| 国产91清纯白嫩初高中在线观看 | 欧美日韩国产免费| 欧美一卡二卡三卡四卡| 国产欧美一区二区精品性色超碰| 国产精品久久久久久久久晋中 | 国产精品视频一区二区三区不卡| 亚洲乱码中文字幕| 麻豆国产精品视频| jiyouzz国产精品久久| 欧美日韩黄色一区二区| 2020日本不卡一区二区视频| 亚洲少妇最新在线视频| 男女性色大片免费观看一区二区| 成人一级视频在线观看| 欧美亚洲高清一区二区三区不卡| 精品少妇一区二区三区在线视频| 国产精品区一区二区三区| 香蕉影视欧美成人| 国产成人在线免费观看| 欧美三级蜜桃2在线观看| 久久午夜色播影院免费高清| 一区二区三区产品免费精品久久75| 麻豆91在线播放| 91浏览器在线视频| 精品三级av在线| 亚洲曰韩产成在线| 国产成人精品www牛牛影视| 欧美日韩一区不卡| 国产精品热久久久久夜色精品三区| 天堂va蜜桃一区二区三区漫画版| 波波电影院一区二区三区| 欧美一区二区三区免费视频 | 国产酒店精品激情| 欧美日韩在线观看一区二区 | 久久亚洲捆绑美女| 五月天久久比比资源色| aaa国产一区| 精品三级av在线| 婷婷亚洲久悠悠色悠在线播放| av色综合久久天堂av综合| 欧美一区二区在线免费观看| 亚洲黄色小视频| 成人午夜av电影| 久久这里只有精品首页| 亚洲图片欧美色图| 波多野结衣精品在线| 精品国产免费一区二区三区四区 | 99精品欧美一区| 久久久久久久精| 美国三级日本三级久久99| 在线视频综合导航| 国产精品传媒视频| 成人亚洲一区二区一| 欧美精品一区二区在线播放| 日本不卡一区二区| 欧美三级日韩在线| 一区二区三区高清在线| 波波电影院一区二区三区| 国产色产综合色产在线视频| 美女视频第一区二区三区免费观看网站| 日本精品裸体写真集在线观看 | 亚洲欧美日韩在线播放| 国产99久久久国产精品潘金| 欧美精品一区二区三区一线天视频 | 一本久久a久久精品亚洲| 国产精品久久久久影视| 成人中文字幕合集| 国产精品污www在线观看| 成人午夜激情视频| 欧美国产精品一区二区三区| 国产91精品免费| 国产精品乱码人人做人人爱 | 国产目拍亚洲精品99久久精品 | 国产欧美日韩另类视频免费观看| 国产一区二区主播在线| 久久久不卡影院| 成人午夜在线视频| 国产精品每日更新| 91免费看`日韩一区二区| 亚洲欧美另类综合偷拍| 色婷婷久久99综合精品jk白丝| 亚洲精品国产成人久久av盗摄| 欧美中文字幕一二三区视频| 亚洲国产成人av网| 7777精品伊人久久久大香线蕉超级流畅 | 日韩一区二区三区av| 久久精品国产一区二区三区免费看| 欧美大片免费久久精品三p| 精品一区二区三区免费播放| 久久香蕉国产线看观看99| 成人av网站在线| 一区二区三区精品久久久| 91精品在线一区二区| 狠狠色丁香婷婷综合| 中文字幕乱码久久午夜不卡| 波多野结衣中文字幕一区二区三区| 亚洲美女在线一区| 在线播放一区二区三区| 久久国内精品视频| 国产精品的网站| 欧美精选在线播放| 国产精品一区2区| 综合色天天鬼久久鬼色| 欧美日精品一区视频| 紧缚捆绑精品一区二区| 日本一区二区成人| 欧美日韩国产一区二区三区地区| 久久精品国产精品青草| 中文字幕在线不卡一区二区三区| 欧美日韩亚洲综合在线 | 欧美日韩一区成人| 国产麻豆精品在线| 亚洲黄网站在线观看| 欧美成人女星排行榜| 99麻豆久久久国产精品免费| 日韩专区欧美专区| 国产欧美视频一区二区| 欧美日韩一二区| 成人午夜精品一区二区三区| 日韩电影在线观看网站| 中文字幕欧美日韩一区| 精品视频资源站| 成人午夜在线免费| 日本成人在线视频网站| 一区在线观看视频| 精品美女一区二区三区| 欧美在线不卡视频| 国产很黄免费观看久久| 午夜私人影院久久久久| 欧美激情一区在线| 欧美一级片在线看| 色悠悠亚洲一区二区| 国内成人免费视频| 亚洲妇女屁股眼交7| 国产精品国产三级国产三级人妇| 69堂成人精品免费视频| 91美女片黄在线观看91美女| 国内成人自拍视频| 午夜电影一区二区三区| 中文字幕一区在线| 精品少妇一区二区三区在线播放 | 欧美激情在线一区二区| 欧美一级高清片在线观看| 色综合久久久久网| 国产盗摄女厕一区二区三区| 日韩一区精品视频| 综合色天天鬼久久鬼色| 国产日韩欧美高清| 精品国产一区二区国模嫣然| 欧美精品久久天天躁| 日本高清不卡一区| bt欧美亚洲午夜电影天堂| 国产在线播放一区| 美腿丝袜在线亚洲一区| 亚洲国产综合在线| 亚洲精品成人在线| 中文字幕一区二区三区在线播放 | 色综合久久九月婷婷色综合| 成人黄色国产精品网站大全在线免费观看| 狂野欧美性猛交blacked| 五月天一区二区三区| 亚洲午夜激情av| 一区二区三区**美女毛片| 日韩毛片视频在线看| 国产精品久久久久久久久图文区 | 中文一区二区完整视频在线观看| 久久综合久久鬼色| 亚洲精品一区在线观看|