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

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

?? cecamera.cpp

?? 這是一個在windows mobile 5下可以錄像
?? CPP
?? 第 1 頁 / 共 3 頁
字號:
//
// Copyright (c) Microsoft Corporation.  All rights reserved.
//
//
// Use of this sample source code is subject to the terms of the Microsoft
// license agreement under which you licensed this sample source code. If
// you did not accept the terms of the license agreement, you are not
// authorized to use this sample source code. For the terms of the license,
// please see the license agreement between you and Microsoft or, if applicable,
// see the LICENSE.RTF on your install media or the root of your tools installation.
// THE SAMPLE SOURCE CODE IS PROVIDED "AS IS", WITH NO WARRANTIES OR INDEMNITIES.
//

// ***************************************************************************
// CECamera.cpp
//
// Take pictures and videos using Camera native API.
//

#include <aygshell.h>
#include <windowsx.h>
#include "Macros.h"
#include "resource.h"

// Macros

#define MAX_INITIAL_DIR                       MAX_PATH
#define MAX_FILE_NAME                         MAX_PATH
#define MAX_TITLE                             64
#define MAX_RESOLUTION_WIDTH                  10
#define MAX_RESOLUTION_HEIGHT                 10
#define MAX_VIDEO_TIME_LIMIT                  10

#define MAX_PLATFORM                          64
#define MAX_CLASSNAME                         64
#define MAX_MESSAGE                           MAX_PATH * 2

#define CECAMERA_DEFAULT_INITIAL_DIR          NULL
#define CECAMERA_DEFAULT_FILE_NAME            NULL
#define CECAMERA_DEFAULT_TITLE                NULL
#define CECAMERA_DEFAULT_STILL_QUALITY        CAMERACAPTURE_STILLQUALITY_DEFAULT
#define CECAMERA_DEFAULT_VIDEO_TYPES          CAMERACAPTURE_VIDEOTYPE_ALL
#define CECAMERA_DEFAULT_RESOLUTION_WIDTH     0
#define CECAMERA_DEFAULT_RESOLUTION_HEIGHT    0
#define CECAMERA_DEFAULT_VIDEO_TIME_LIMIT     0
#define CECAMERA_DEFAULT_MODE                 CAMERACAPTURE_MODE_STILL

#define CECAMERA_MUTEX_NAME                   TEXT("__CECAMERA_MUTEX__")
#define CECAMERA_MAINDLG_CLASSNAME            TEXT("Dialog")
#define CECAMERA_CAMERAVIEW_CLASSNAME         TEXT("Camera View")

#define WM_ACTIVATE_CAMERAVIEW                WM_USER + 1

// Global variables

BOOL                       g_bSmartphone    = FALSE;
HINSTANCE                  g_hInstance      = NULL;
HMENU                      g_hMainMenu      = NULL;
BOOL                       g_bCameraRunning = FALSE;
LPCTSTR                    g_szCaption;

CAMERACAPTURE_STILLQUALITY g_StillQuality   = CECAMERA_DEFAULT_STILL_QUALITY;
CAMERACAPTURE_VIDEOTYPES   g_VideoTypes     = CECAMERA_DEFAULT_VIDEO_TYPES;
CAMERACAPTURE_MODE         g_Mode           = CECAMERA_DEFAULT_MODE;


// Forward declarations of the functions

BOOL IsSmartphone();
BOOL IsFocusOnEditControl();
BOOL InitDialog(HWND hwndDlg);
VOID StartCamera(HWND hwndDlg);
VOID ShowAboutBox(HWND hwndDlg);
VOID ResetOptions(HWND hwndDlg);
VOID ChangeMode(WORD wMode);
VOID ChangeStillQuality(WORD wStillQuality);
VOID ChangeVideoTypes(WORD wVideoTypes);
VOID ChangeOptions(HWND hwndDlg, WORD wOptions);
BOOL CALLBACK DialogProc(HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lParam);
BOOL IsOwned(HWND hwndOwner, HWND hwnd);
BOOL CALLBACK EnumLastActiveWindowProc(HWND hwnd, LPARAM lParam);
HWND GetLastActiveWindow(HWND hwndOwner);


// ***************************************************************************
// Function Name: WinMain
//
// Purpose: Main entry point into the CECamera program
//
// Arguments: Standard WinMain arguments
//
// Return Values: 0
//
// Description:
//   Checks to see if a previous instance of the program is running,
//   and if it is not, it pops up a dialog box allowing the user to
//   specify the parameters for SHCameraCapture() API to launch Camera app.

int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPWSTR lpCmdLine, int nShowCmd)
{
    HRESULT hr;
    HWND    hwndPrevInstance;
    HANDLE  hMutex = NULL;

    // Load the caption of the main dialog from resource
    g_szCaption = (LPCTSTR)LoadString(hInstance, IDS_CAPTION, NULL, 0);
    CPR(g_szCaption);

    // Use a global named mutex to detect another instance of CECamera
    hMutex = CreateMutex(NULL, FALSE, CECAMERA_MUTEX_NAME);
    CPR(hMutex);

    if (ERROR_ALREADY_EXISTS == GetLastError())
    {
        // Already an instance running - attempt to switch to it and then exit
        hwndPrevInstance = FindWindow(CECAMERA_MAINDLG_CLASSNAME, g_szCaption);
        CPR(hwndPrevInstance);

        SetForegroundWindow(GetLastActiveWindow(hwndPrevInstance));
    }
    else
    {
        // Store the hInstance
        g_hInstance = hInstance;

        // Determine if platform is Smartphone
        g_bSmartphone = IsSmartphone();

        // Create the dialog box
        DialogBox(hInstance, MAKEINTRESOURCE(IDD_MAINDLG), NULL, (DLGPROC)DialogProc);
    }

Error:
    if (NULL != hMutex)
    {
        // Release the global named mutex
        CloseHandle(hMutex);
    }

    return hr;
}

// ***************************************************************************
// Function Name: DialogProc
//
// Purpose: Message Handler for CECamera Dialog Box
//
// Arguments: Standard Dialog Procedure Arguments
//
// Return Values:
//   Returns TRUE if it processed the message, or FALSE if it did not.
//
// Description:
//   Dialog Procedure for the main CECamera Dialog.

BOOL CALLBACK DialogProc(HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lParam)
{
    BOOL bHandled = TRUE;

    switch (uMsg)
    {
        case WM_INITDIALOG:
            // Make sure the dialog box was created
            if (!InitDialog(hwndDlg))
            {
                PostMessage(hwndDlg, WM_CLOSE, 0, 0);
            }

            break;

        case WM_COMMAND:
            switch (LOWORD(wParam))
            {
                case IDM_START:
                    StartCamera(hwndDlg);
                    break;

                case IDM_ABOUT:
                    ShowAboutBox(hwndDlg);
                    break;

                case IDM_RESET:
                    ResetOptions(hwndDlg);
                    break;

                case IDM_MODE_STILL:
                    // Fall through

                case IDM_MODE_VIDEOONLY:
                    // Fall through

                case IDM_MODE_VIDEOWITHAUDIO:
                    ChangeMode(LOWORD(wParam));
                    break;

                case IDM_STILLQUALITY_DEFAULT:
                    // Fall through

                case IDM_STILLQUALITY_LOW:
                    // Fall through

                case IDM_STILLQUALITY_NORMAL:
                    // Fall through

                case IDM_STILLQUALITY_HIGH:
                    ChangeStillQuality(LOWORD(wParam));
                    break;

                case IDM_VIDEOTYPES_ALL:
                    // Fall through

                case IDM_VIDEOTYPES_STANDARD:
                    // Fall through

                case IDM_VIDEOTYPES_MESSAGING:
                    ChangeVideoTypes(LOWORD(wParam));
                    break;

                case IDC_CHECK_INITIAL_DIR:
                    // Fall through

                case IDC_CHECK_DEFAULT_FILE_NAME:
                    // Fall through

                case IDC_CHECK_TITLE:
                    // Fall through

                case IDC_CHECK_RESOLUTION:
                    // Fall through

                case IDC_CHECK_VIDEO_TIME_LIMIT:
                    ChangeOptions(hwndDlg, LOWORD(wParam));
                    break;

                case IDCANCEL:
                    // Fall through

                case IDM_EXIT:
                    PostMessage(hwndDlg, WM_CLOSE, 0, 0);
                    break;
            }
            break;

        case WM_CLOSE:
            EndDialog(hwndDlg, IDCANCEL);
            break;

        case WM_ACTIVATE:
            if (WA_ACTIVE == LOWORD(wParam) && g_bCameraRunning)
            {
                PostMessage(hwndDlg, WM_ACTIVATE_CAMERAVIEW, 0, 0);
            }
            break;

        case WM_ACTIVATE_CAMERAVIEW:
            if (g_bCameraRunning)
            {
                // Reactivate the camera window if camera window is running
                HWND hwndCameraView = FindWindow(CECAMERA_CAMERAVIEW_CLASSNAME, NULL);
                if (NULL != hwndCameraView)
                {
                    // Bring the last active window owned by camera window to the foreground
                    SetForegroundWindow(GetLastActiveWindow(hwndCameraView));
                }
            }
            break;

        case WM_HOTKEY:
            if (g_bSmartphone && VK_TBACK == HIWORD(lParam))
            {
                if (IsFocusOnEditControl())
                {
                    // The current control with focus is an edit control
                    if (MOD_KEYUP & LOWORD(lParam))
                    {
                        // Delete a character on each KEYUP
                        SendMessage(GetFocus(), WM_CHAR, VK_BACK, 0);
                    }
                    else if (MOD_HOLD & LOWORD(lParam))
                    {
                        // Clear content from edit controls while pressing and holding the Back key
                        SetWindowText(GetFocus(), TEXT(""));
                    }
                }
                else if (MOD_KEYUP & LOWORD(lParam))
                {
                    // The current control with focus is not an edit control,
                    // close the dialog and then back to the previous application
                    PostMessage(hwndDlg, WM_CLOSE, 0, 0);
                    SHNavigateBack();
                }
            }
            break;

        default:
            // Specify that we didn't process this message, let the default
            // dialog box window procedure to process this message
            bHandled = FALSE;
            break;
    }

    return bHandled;
}

// **************************************************************************
// Function Name: IsSmartphone
//
// Purpose: Determine if platform is Smartphone
//
// Arguments: none
//

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲五码中文字幕| 亚洲国产成人精品视频| 欧美军同video69gay| 欧美日韩高清一区二区三区| 色婷婷综合五月| 91久久香蕉国产日韩欧美9色| 国产成人免费视频一区| 成人黄色小视频在线观看| 国产91在线|亚洲| 在线免费观看日本欧美| 欧美一区二区三区在线看| 欧美一二三区精品| 国产亚洲va综合人人澡精品| 一色桃子久久精品亚洲| 亚洲视频一区二区在线| 日韩精品成人一区二区在线| 美女视频第一区二区三区免费观看网站| 首页国产欧美久久| 国产福利一区二区三区在线视频| 成人动漫一区二区在线| 欧美美女直播网站| 国产亚洲婷婷免费| 日韩成人伦理电影在线观看| av网站一区二区三区| 日本精品裸体写真集在线观看| 欧美日韩国产中文| 亚洲久草在线视频| 国产一区二区三区在线观看免费视频| 91网站最新地址| 久久久久久电影| 国产一区二区三区在线观看免费 | 久久99精品久久久| 在线免费观看日本欧美| 亚洲欧美一区二区三区国产精品 | 色av成人天堂桃色av| 久久久久久久久伊人| 国内精品写真在线观看| 欧美在线三级电影| 亚洲激情欧美激情| 一本一道久久a久久精品综合蜜臀| 国产精品视频看| 国产成人免费视频网站| 国产亚洲精品资源在线26u| 国产精品99久久久久久宅男| 精品国产乱码久久久久久免费 | 色综合久久中文综合久久牛| 欧美国产成人精品| 欧美日韩成人在线| 男女男精品网站| 久久成人免费网| av不卡一区二区三区| 国产成人在线电影| 色婷婷激情综合| 777色狠狠一区二区三区| 亚洲色图自拍偷拍美腿丝袜制服诱惑麻豆| 精品一区精品二区高清| 精品国产乱码久久久久久牛牛| 紧缚捆绑精品一区二区| 欧美国产日韩精品免费观看| 本田岬高潮一区二区三区| 亚洲精品伦理在线| 精品国精品自拍自在线| 高清不卡一区二区| 艳妇臀荡乳欲伦亚洲一区| 在线免费精品视频| 亚洲影视资源网| 久久久另类综合| 成人av片在线观看| 琪琪一区二区三区| 综合在线观看色| 精品久久人人做人人爽| 91免费视频观看| 粗大黑人巨茎大战欧美成人| 亚洲成人一区二区| 亚洲美女偷拍久久| 国产精品萝li| 国产三级精品视频| 精品国产成人系列| 欧美日韩免费不卡视频一区二区三区| 国产美女精品在线| 午夜精品久久久久久久久久久| 中文字幕中文字幕中文字幕亚洲无线| 欧美三级日韩在线| 在线看国产日韩| 欧美亚洲高清一区| 在线亚洲欧美专区二区| 成人avav影音| 99精品国产99久久久久久白柏| 国产乱子轮精品视频| 风间由美性色一区二区三区| 韩国av一区二区三区| 九九九精品视频| 国产在线一区观看| 成人午夜看片网址| voyeur盗摄精品| 欧美专区日韩专区| 欧美电影一区二区| 精品乱码亚洲一区二区不卡| 国产视频一区二区在线| 国产精品国产三级国产普通话蜜臀 | 日韩一区二区三区四区| 日韩免费福利电影在线观看| 久久综合网色—综合色88| 久久精品一区八戒影视| 中文字幕佐山爱一区二区免费| 亚洲色图19p| 捆绑变态av一区二区三区| 亚洲精品视频在线| 久久免费美女视频| 国产精品二区一区二区aⅴ污介绍| 夜色激情一区二区| 精品一区二区三区免费观看| 91久久奴性调教| 国产日韩欧美一区二区三区乱码 | 国产精品一区二区x88av| 91国产免费观看| 国产精品免费视频观看| 免费高清在线一区| 欧美中文一区二区三区| 中国色在线观看另类| 蜜桃精品视频在线| 欧美精品亚洲一区二区在线播放| 亚洲综合成人网| 成人性生交大片免费看中文| 日韩午夜激情免费电影| 亚洲一区在线视频| 色婷婷狠狠综合| 亚洲综合图片区| 69久久夜色精品国产69蝌蚪网| 精品国产1区二区| 天堂蜜桃91精品| 精品一区二区三区日韩| 色婷婷精品久久二区二区蜜臂av| 欧美一a一片一级一片| 中文字幕 久热精品 视频在线| 久久人人超碰精品| 亚洲成人精品一区二区| 国产日本欧美一区二区| 欧美亚洲自拍偷拍| 国产精品视频一二三| 国产精品一区二区不卡| 国产色爱av资源综合区| 99视频一区二区三区| 亚洲人123区| 欧洲av一区二区嗯嗯嗯啊| 国产精品高清亚洲| 欧美日韩在线直播| 美美哒免费高清在线观看视频一区二区| 欧美日韩久久一区二区| 秋霞av亚洲一区二区三| 欧美成人a∨高清免费观看| 国产成人精品免费| 亚洲一区二区三区激情| 日韩女优av电影在线观看| 国产精品88888| 亚洲自拍偷拍图区| 久久精品一区二区三区不卡牛牛| www.av精品| 日韩黄色小视频| 中文字幕人成不卡一区| 欧美日韩午夜精品| 成人免费不卡视频| 美女在线视频一区| 亚洲精品欧美专区| 久久精品免费在线观看| 精品1区2区在线观看| 91成人看片片| 不卡高清视频专区| 成人av午夜影院| 国产精品综合久久| 卡一卡二国产精品 | 日韩一区二区电影网| 在线观看av一区| 99久久免费国产| 福利电影一区二区| 国产精品亚洲а∨天堂免在线| 日韩激情一二三区| 蜜臀av性久久久久蜜臀aⅴ| 一区二区成人在线视频| 综合中文字幕亚洲| 国产精品三级视频| 亚洲情趣在线观看| 中文字幕不卡一区| 国产精品美女久久久久av爽李琼| 久久网这里都是精品| 国产精品美女久久久久高潮| 国产精品久久久久久久久久久免费看| 精品美女一区二区| 中文字幕亚洲视频| 久久久久久久久久久久久夜| 久久久国产一区二区三区四区小说| 欧美激情一区二区在线| 亚洲综合在线视频| 美日韩一级片在线观看| 成人中文字幕电影| 欧美日韩亚洲综合| 欧美成人精品3d动漫h| 国产欧美日韩综合| 午夜欧美在线一二页| 国产东北露脸精品视频|