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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? ivdllwindow.cpp

?? 圖像顯示軟件源碼
?? CPP
字號:
/****************************************************************************
IVDllWindow.cpp : Implementation file for the Image Viewer DLL Window class.
written by PJ Arends
pja@telus.net

For updates check http://www.codeproject.com/tools/imageviewer.asp

-----------------------------------------------------------------------------
This code is provided as is, with no warranty as to it's suitability or usefulness
in any application in which it may be used.

This code may be used in any way you desire. This file may be redistributed by any
means as long as it is not sold for profit, and providing that this notice and the
author's name are included. Any modifications not made by the original author should
be clearly marked as such to remove any confusion between the original version and
any other versions.

If any bugs are found and fixed, a note to the author explaining the problem and
fix would be nice.
-----------------------------------------------------------------------------
****************************************************************************/

#include "IVDllWindow.h"
#include <tchar.h>
#include <crtdbg.h>

#define DLLWINDOWCLASS _T("PJA_IMAGE_VIEWER_DLL_HIDDEN_WINDOW")

// These same messages are also registered in the file Reciever.cpp, part of the Viewer Application project.
const UINT Looking_for_viewer_app = RegisterWindowMessage(_T("LOOKING_FOR_VIEWER_APP_{FD4EA0C0-ECFC-11d5-B625-ED551C514422}"));
const UINT Viewer_app_window = RegisterWindowMessage(_T("VIEWER_APP_WINDOW_{FD4EA0C0-ECFC-11d5-B625-ED551C514422}"));

CIVDllWindow *CIVDllWindow::This = NULL;

CIVDllWindow::CIVDllWindow()
: DllWindow(NULL)
, ExeWindow(NULL)
{
    // One instance only
    _ASSERT(NULL == This);
    This = this;
}

CIVDllWindow::~CIVDllWindow()
{
    if (IsWindow(DllWindow))
    {
        DestroyWindow(DllWindow);
    }

    This = NULL;
}

BOOL CIVDllWindow::Create()
{
    if (!IsWindow(DllWindow) && RegisterWindowClass())
    {
        DllWindow = CreateWindow(DLLWINDOWCLASS,
                                 _T("Image Viewer Dll hidden window"),
                                 WS_POPUP,
                                 0, 0, 0, 0,
                                 NULL,
                                 NULL,
                                 GetModuleHandle(_T("ImageViewer.dll")),
                                 NULL);
        if (NULL != DllWindow)
        {
            // Find the image viewer app's image reciever window
            EnumWindows(Searcher, reinterpret_cast<LPARAM>(&ExeWindow));
        }
    }

    return IsWindow(DllWindow);
}

bool CIVDllWindow::RegisterWindowClass()
{
    WNDCLASS WndClass = {0};

    WndClass.hInstance = GetModuleHandle(_T("ImageViewer.dll"));
    WndClass.lpfnWndProc = DllWindowProc;
    WndClass.lpszClassName = DLLWINDOWCLASS;

    return RegisterClass(&WndClass) != 0;
}

CIVDllWindow::operator HWND()
{
    // return the Image Viewer app's image reciever window handle
    return ExeWindow;
}

BOOL CALLBACK CIVDllWindow::Searcher(HWND Window, LPARAM lp)
{
    // is 'Window' the one we are looking for?
    DWORD result;
    LRESULT ok = SendMessageTimeout(Window,
                                    Looking_for_viewer_app,
                                    0xFEB11965,
                                    0,
                                    SMTO_BLOCK | SMTO_ABORTIFHUNG,
                                    200,
                                    &result);

    if (ok == 0)
    {
        // error - continue search
        return TRUE;
    }

    if (result == Looking_for_viewer_app)
    {
        // yes, found it
        *(HWND*)lp = Window;
        return FALSE;
    }

    return TRUE;
}

LRESULT CALLBACK CIVDllWindow::DllWindowProc(HWND hWnd, UINT Msg, WPARAM wp, LPARAM lp)
{
    if (NULL != This && Viewer_app_window == Msg && 0xFEB11965 == wp)
    {
        // The image viewer app broadcasts the Viewer_app_window registered message
        // when it starts and when it ends. When the image viewer app starts the LPARAM
        // parameter is the handle of the image receiver window, and when it ends the
        // LPARAM parameter is NULL ( see the file Reciever.cpp for the functions
        // CReceiverThread::InitInstance() and CRecieverThread::ExitInstance() ).
        This->ExeWindow = reinterpret_cast<HWND>(lp);
    }

    return DefWindowProc(hWnd, Msg, wp, lp);
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产黄色精品视频| 亚洲精品在线免费观看视频| 欧美精品日韩一本| 国产亚洲成av人在线观看导航| 亚洲免费在线视频一区 二区| 免费成人你懂的| 欧美视频完全免费看| 久久久美女毛片| 婷婷成人综合网| 99精品欧美一区| 2020国产精品| 久久99精品网久久| 欧美日韩中文字幕一区| 国产精品美女久久久久aⅴ国产馆 国产精品美女久久久久av爽李琼 国产精品美女久久久久高潮 | 欧美视频一区二区三区四区| 国产日韩欧美一区二区三区乱码| 男人的天堂久久精品| 色综合久久久久综合体| 国产精品美女久久福利网站| 久久精品国产亚洲高清剧情介绍| 欧美亚日韩国产aⅴ精品中极品| 欧美激情一区二区三区在线| 久久国产精品72免费观看| 91在线精品秘密一区二区| 国产精品天干天干在观线| 国产91精品精华液一区二区三区| www激情久久| 国产一区 二区 三区一级| 欧美精品一区二区三区蜜桃| 免费不卡在线视频| 欧美电影免费观看高清完整版在| 麻豆91精品91久久久的内涵| 777亚洲妇女| 免费人成网站在线观看欧美高清| 7777精品伊人久久久大香线蕉经典版下载 | 日韩一区精品字幕| 欧美卡1卡2卡| 秋霞午夜鲁丝一区二区老狼| 日韩一区二区在线看| 老司机精品视频导航| 精品国产伦一区二区三区观看体验| 日韩国产在线观看一区| 日韩午夜电影av| 另类专区欧美蜜桃臀第一页| 26uuu国产在线精品一区二区| 精品写真视频在线观看| 国产欧美一区二区精品性| 国产成人福利片| 最新高清无码专区| 欧美精选午夜久久久乱码6080| 石原莉奈在线亚洲三区| 日韩精品一区二区三区中文精品| 国产精品一区二区果冻传媒| 国产精品久久久久影院亚瑟| 91麻豆swag| 午夜视频一区在线观看| 欧美裸体bbwbbwbbw| 精品亚洲成a人| 综合激情成人伊人| 欧美一a一片一级一片| 日韩国产精品久久久| 久久亚洲一区二区三区明星换脸| av网站免费线看精品| 五月婷婷另类国产| 国产日韩精品一区| 欧美亚洲图片小说| 久久国产免费看| 亚洲欧洲性图库| 欧美丰满一区二区免费视频| 国产一区二区三区观看| 精品在线观看视频| 9191国产精品| 国产一区二区女| 亚洲免费av网站| 91精品国产黑色紧身裤美女| 精品制服美女丁香| 国产精品成人免费在线| 51精品国自产在线| 成人免费福利片| 亚洲福中文字幕伊人影院| 精品国内片67194| 一本一道综合狠狠老| 激情亚洲综合在线| 亚洲一区二区精品久久av| 久久久久久99精品| 91麻豆精品国产91久久久久| 成人免费黄色大片| 精品亚洲国内自在自线福利| 亚洲五码中文字幕| 亚洲欧洲国产日韩| 久久品道一品道久久精品| 欧美性生活一区| av中文字幕亚洲| 国产一区 二区| 久久99深爱久久99精品| 香蕉av福利精品导航 | 欧美性淫爽ww久久久久无| 国产a级毛片一区| 国产精一区二区三区| 蜜臀久久久久久久| 婷婷六月综合亚洲| 亚洲一区二区黄色| 亚洲乱码一区二区三区在线观看| 国产视频在线观看一区二区三区| 欧美电影免费观看高清完整版在线观看| 色婷婷综合在线| 成人亚洲一区二区一| 国产福利一区二区三区在线视频| 国内精品自线一区二区三区视频| 老色鬼精品视频在线观看播放| 日韩国产欧美在线视频| 亚洲.国产.中文慕字在线| 亚洲一区二区三区四区在线免费观看| 中文字幕亚洲一区二区va在线| 久久久久久久综合色一本| 欧美电影免费观看高清完整版在| 欧美一区二区三区成人| 日韩三级在线观看| 欧美一二三四在线| 日韩片之四级片| 精品1区2区在线观看| 久久人人爽爽爽人久久久| 国产欧美日韩亚州综合| 国产精品网站一区| 国产精品久久二区二区| 亚洲丝袜自拍清纯另类| 一区二区日韩电影| 亚洲国产aⅴ成人精品无吗| 五月激情综合色| 蜜臀av性久久久久蜜臀aⅴ流畅| 毛片av一区二区| 国产露脸91国语对白| 国产成人精品一区二| 91免费观看在线| 欧美老年两性高潮| 亚洲精品在线免费播放| 国产女人18毛片水真多成人如厕| 国产女人aaa级久久久级| 亚洲男人的天堂在线aⅴ视频| 亚洲超碰精品一区二区| 日韩av电影免费观看高清完整版| 免费高清视频精品| www.成人在线| 91精品国产一区二区三区| 精品av综合导航| 玉足女爽爽91| 九色|91porny| 91国偷自产一区二区三区观看 | 中文字幕在线观看不卡| 亚洲高清在线视频| 国产精品综合在线视频| 欧美亚洲综合网| 久久婷婷综合激情| 亚洲国产成人tv| 国产精品一二三区在线| 欧美性感一类影片在线播放| 久久这里只有精品6| 一区二区三区丝袜| 国产呦精品一区二区三区网站| 91老司机福利 在线| 欧美成va人片在线观看| 亚洲九九爱视频| 国产精品1024久久| 91精品国产综合久久久久久久| 国产精品视频第一区| 日韩制服丝袜av| 色先锋aa成人| 久久精品亚洲国产奇米99| 亚洲一区在线视频| 高清shemale亚洲人妖| 日韩一级成人av| 亚洲自拍偷拍图区| 不卡的av电影| 精品国产电影一区二区| 丝袜美腿高跟呻吟高潮一区| 91免费看`日韩一区二区| 国产欧美日韩亚州综合| 玖玖九九国产精品| 欧美色倩网站大全免费| 中文字幕一区二区三区视频| 国产专区欧美精品| 欧美一级欧美三级| 午夜亚洲国产au精品一区二区| 成人激情校园春色| 久久久亚洲欧洲日产国码αv| 午夜精品久久久久久| 色系网站成人免费| 亚洲天堂成人在线观看| 成人午夜视频在线| 中文字幕不卡在线播放| 激情深爱一区二区| 久久人人超碰精品| 国产乱对白刺激视频不卡| 精品国产乱码久久久久久夜甘婷婷 | 国产成人在线观看| 久久色在线视频| 国产酒店精品激情| 久久久国产一区二区三区四区小说 | 成人免费在线视频| zzijzzij亚洲日本少妇熟睡|