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

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

?? general.c

?? ReactOS是一些高手根據(jù)Windows XP的內(nèi)核編寫出的類XP。內(nèi)核實(shí)現(xiàn)機(jī)理和API函數(shù)調(diào)用幾乎相同。甚至可以兼容XP的程序。喜歡研究系統(tǒng)內(nèi)核的人可以看一看。
?? C
字號(hào):
/* $Id: general.c 28434 2007-08-20 19:50:07Z cfinck $
 *
 * PROJECT:         ReactOS Accessibility Control Panel
 * LICENSE:         GPL - See COPYING in the top level directory
 * FILE:            dll/cpl/access/general.c
 * PURPOSE:         General accessibility settings
 * COPYRIGHT:       Copyright 2004 Johannes Anderwald (j_anderw@sbox.tugraz.at)
 *                  Copyright 2007 Eric Kohl
 */

#include <windows.h>
#include <stdlib.h>
#include <stdio.h>
#include <commctrl.h>
#include <prsht.h>
#include <tchar.h>
#include "resource.h"
#include "access.h"


typedef struct _GLOBAL_DATA
{
    ACCESSTIMEOUT accessTimeout;
    SERIALKEYS serialKeys;
    BOOL bWarningSounds;
    BOOL bSoundOnActivation;
} GLOBAL_DATA, *PGLOBAL_DATA;


static VOID
FillResetComboBox(HWND hwnd)
{
    TCHAR szBuffer[16];
    INT i;

    for (i = 0; i < 6; i++)
    {
        _stprintf(szBuffer, _T("%u"), (i + 1) * 5);
        SendMessage(hwnd,
                    CB_ADDSTRING,
                    0,
                    (LPARAM)szBuffer);
    }
}


static VOID
ReadGlobalData(PGLOBAL_DATA pGlobalData)
{
    DWORD dwDisposition;
    DWORD dwLength;
    HKEY hKey;
    LONG lError;

    /* Get access timeout information */
    pGlobalData->accessTimeout.cbSize = sizeof(ACCESSTIMEOUT);
    SystemParametersInfo(SPI_GETACCESSTIMEOUT,
                         sizeof(ACCESSTIMEOUT),
                         &pGlobalData->accessTimeout,
                         0);

    /* Get serial keys information */
    pGlobalData->serialKeys.cbSize = sizeof(SERIALKEYS);
    SystemParametersInfo(SPI_GETSERIALKEYS,
                         sizeof(SERIALKEYS),
                         &pGlobalData->serialKeys,
                         0);

    pGlobalData->bWarningSounds = TRUE;
    pGlobalData->bSoundOnActivation = TRUE;

    lError = RegCreateKeyEx(HKEY_CURRENT_USER,
                            _T("Control Panel\\Accessibility"),
                            0,
                            NULL,
                            REG_OPTION_NON_VOLATILE,
                            KEY_EXECUTE | KEY_QUERY_VALUE,
                            NULL,
                            &hKey,
                            &dwDisposition);
    if (lError != ERROR_SUCCESS)
        return;

    dwLength = sizeof(BOOL);
    lError = RegQueryValueEx(hKey,
                             _T("Warning Sounds"),
                             NULL,
                             NULL,
                             (LPBYTE)&pGlobalData->bWarningSounds,
                             &dwLength);
    if (lError != ERROR_SUCCESS)
        pGlobalData->bWarningSounds = TRUE;

    dwLength = sizeof(BOOL);
    lError = RegQueryValueEx(hKey,
                             _T("Sound On Activation"),
                             NULL,
                             NULL,
                             (LPBYTE)&pGlobalData->bSoundOnActivation,
                             &dwLength);
    if (lError != ERROR_SUCCESS)
        pGlobalData->bSoundOnActivation = TRUE;


    RegCloseKey(hKey);
}


static VOID
WriteGlobalData(PGLOBAL_DATA pGlobalData)
{
    DWORD dwDisposition;
    HKEY hKey;
    LONG lError;

    SystemParametersInfo(SPI_SETACCESSTIMEOUT,
                         sizeof(ACCESSTIMEOUT),
                         &pGlobalData->accessTimeout,
                         SPIF_UPDATEINIFILE | SPIF_SENDCHANGE /*0*/);

    SystemParametersInfo(SPI_SETSERIALKEYS,
                         sizeof(SERIALKEYS),
                         &pGlobalData->serialKeys,
                         SPIF_UPDATEINIFILE | SPIF_SENDCHANGE /*0*/);

    lError = RegCreateKeyEx(HKEY_CURRENT_USER,
                            _T("Control Panel\\Accessibility"),
                            0,
                            NULL,
                            REG_OPTION_NON_VOLATILE,
                            KEY_SET_VALUE,
                            NULL,
                            &hKey,
                            &dwDisposition);
    if (lError != ERROR_SUCCESS)
        return;

    RegSetValueEx(hKey,
                  _T("Warning Sounds"),
                  0,
                  REG_DWORD,
                  (LPBYTE)&pGlobalData->bWarningSounds,
                  sizeof(BOOL));

    RegSetValueEx(hKey,
                  _T("Sound On Activation"),
                  0,
                  REG_DWORD,
                  (LPBYTE)pGlobalData->bSoundOnActivation,
                  sizeof(BOOL));

    RegCloseKey(hKey);
}


/* Property page dialog callback */
INT_PTR CALLBACK
GeneralPageProc(HWND hwndDlg,
                UINT uMsg,
                WPARAM wParam,
                LPARAM lParam)
{
    PGLOBAL_DATA pGlobalData;
    LPPSHNOTIFY lppsn;

    pGlobalData = (PGLOBAL_DATA)GetWindowLongPtr(hwndDlg, DWLP_USER);

    switch (uMsg)
    {
        case WM_INITDIALOG:
            pGlobalData = HeapAlloc(GetProcessHeap(), HEAP_ZERO_MEMORY, sizeof(GLOBAL_DATA));
            if (pGlobalData == NULL)
                return FALSE;

            SetWindowLongPtr(hwndDlg, DWLP_USER, (LONG_PTR)pGlobalData);

            ReadGlobalData(pGlobalData);

            /* Set access timeout info */
            CheckDlgButton(hwndDlg,
                           IDC_RESET_BOX,
                           pGlobalData->accessTimeout.dwFlags & ATF_TIMEOUTON ? BST_CHECKED : BST_UNCHECKED);
            FillResetComboBox(GetDlgItem(hwndDlg, IDC_RESET_COMBO));
            SendDlgItemMessage(hwndDlg, IDC_RESET_COMBO, CB_SETCURSEL,
                               (pGlobalData->accessTimeout.iTimeOutMSec / 300000) - 1, 0);
            EnableWindow(GetDlgItem(hwndDlg, IDC_RESET_COMBO),
                         pGlobalData->accessTimeout.dwFlags & ATF_TIMEOUTON ? TRUE : FALSE);

            CheckDlgButton(hwndDlg,
                           IDC_NOTIFICATION_MESSAGE,
                           pGlobalData->bWarningSounds ? BST_CHECKED : BST_UNCHECKED);

            CheckDlgButton(hwndDlg,
                           IDC_NOTIFICATION_SOUND,
                           pGlobalData->bSoundOnActivation ? BST_CHECKED : BST_UNCHECKED);

            /* Set serial keys info */
            CheckDlgButton(hwndDlg,
                           IDC_SERIAL_BOX,
                           pGlobalData->serialKeys.dwFlags & SERKF_SERIALKEYSON ? BST_CHECKED : BST_UNCHECKED);
            EnableWindow(GetDlgItem(hwndDlg, IDC_SERIAL_BOX),
                         pGlobalData->serialKeys.dwFlags & SERKF_AVAILABLE ? TRUE : FALSE);
            EnableWindow(GetDlgItem(hwndDlg, IDC_SERIAL_BUTTON),
                         pGlobalData->serialKeys.dwFlags & SERKF_AVAILABLE ? TRUE : FALSE);

            return TRUE;

        case WM_COMMAND:
            switch (LOWORD(wParam))
            {
                case IDC_RESET_BOX:
                    pGlobalData->accessTimeout.dwFlags ^= ATF_TIMEOUTON;
                    EnableWindow(GetDlgItem(hwndDlg, IDC_RESET_COMBO),
                                 pGlobalData->accessTimeout.dwFlags & ATF_TIMEOUTON ? TRUE : FALSE);
                    PropSheet_Changed(GetParent(hwndDlg), hwndDlg);
                    break;

                case IDC_RESET_COMBO:
                    if (HIWORD(wParam) == CBN_CLOSEUP)
                    {
                        INT nSel;
                        nSel = SendDlgItemMessage(hwndDlg, IDC_RESET_COMBO, CB_GETCURSEL, 0, 0);
                        pGlobalData->accessTimeout.iTimeOutMSec = (ULONG)((nSel + 1) * 300000);
                        PropSheet_Changed(GetParent(hwndDlg), hwndDlg);
                    }
                    break;

                case IDC_NOTIFICATION_MESSAGE:
                    pGlobalData->bWarningSounds = !pGlobalData->bWarningSounds;
                    PropSheet_Changed(GetParent(hwndDlg), hwndDlg);
                    break;

                case IDC_NOTIFICATION_SOUND:
                    pGlobalData->bSoundOnActivation = !pGlobalData->bSoundOnActivation;
                    PropSheet_Changed(GetParent(hwndDlg), hwndDlg);
                    break;

                case IDC_SERIAL_BOX:
                    pGlobalData->serialKeys.dwFlags ^= SERKF_SERIALKEYSON;
                    PropSheet_Changed(GetParent(hwndDlg), hwndDlg);
                    break;

                case IDC_SERIAL_BUTTON:
                    break;

                case IDC_ADMIN_LOGON_BOX:
                    break;

                case IDC_ADMIN_USERS_BOX:
                    break;

                default:
                    break;
            }
            break;

        case WM_NOTIFY:
            lppsn = (LPPSHNOTIFY)lParam;
            if (lppsn->hdr.code == PSN_APPLY)
            {
                WriteGlobalData(pGlobalData);
                return TRUE;
            }
            break;

        case WM_DESTROY:
            HeapFree(GetProcessHeap(), 0, pGlobalData);
            break;    }

    return FALSE;
}

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
久久久高清一区二区三区| 国产亚洲精久久久久久| 国产一区在线观看视频| 亚洲免费电影在线| 欧美精品一区在线观看| 欧美午夜影院一区| 成人免费视频app| 韩国一区二区在线观看| 亚洲小说欧美激情另类| 亚洲视频免费在线| 国产天堂亚洲国产碰碰| 日韩午夜电影在线观看| 欧美色成人综合| 久久久久久麻豆| 4438x成人网最大色成网站| 97久久超碰国产精品| 国产盗摄精品一区二区三区在线 | 欧美一区二区女人| 色美美综合视频| av在线不卡网| 国产成人精品一区二区三区四区| 久久国产欧美日韩精品| 视频一区二区三区中文字幕| 一区二区在线观看视频在线观看| 国产精品国产三级国产普通话99| 久久婷婷综合激情| 欧美电视剧在线看免费| 欧美成人a视频| 日韩欧美另类在线| 欧美精品九九99久久| 欧美日韩亚洲综合在线| 欧美性猛片aaaaaaa做受| 色综合 综合色| 日本韩国一区二区三区| 日本韩国一区二区| 欧美色老头old∨ideo| 欧美亚洲动漫另类| 欧美亚洲一区三区| 欧美怡红院视频| 在线观看亚洲一区| 欧美影院精品一区| 88在线观看91蜜桃国自产| 欧美久久久久中文字幕| 91超碰这里只有精品国产| 欧美日韩电影在线播放| 欧美一区二区三区思思人| 日韩欧美视频在线| 久久一区二区三区四区| 26uuu欧美| 久久免费国产精品| 中文字幕视频一区二区三区久| 国产精品妹子av| 亚洲综合一区二区精品导航| 三级精品在线观看| 精品一区二区三区免费视频| 91精品国产色综合久久不卡蜜臀 | 亚洲天堂久久久久久久| 亚洲欧美日韩国产手机在线| 亚洲一区二区在线免费看| 日韩国产在线一| 久久 天天综合| 成人激情开心网| 在线免费观看日韩欧美| 777亚洲妇女| 久久综合精品国产一区二区三区| 国产色综合一区| 亚洲一区免费在线观看| 久久国产精品区| 成人永久免费视频| 在线观看三级视频欧美| 日韩欧美国产系列| 国产精品国产自产拍高清av王其| 亚洲另类一区二区| 日本亚洲一区二区| av电影在线不卡| 欧美理论片在线| 国产三级三级三级精品8ⅰ区| 亚洲乱码中文字幕综合| 奇米在线7777在线精品| 成人黄色网址在线观看| 欧美喷水一区二区| 亚洲国产成人一区二区三区| 午夜精品福利久久久| 国产69精品久久99不卡| 欧美日韩高清一区二区| 国产精品国产三级国产三级人妇 | 亚洲福利一二三区| 丁香亚洲综合激情啪啪综合| 欧美喷水一区二区| ...中文天堂在线一区| 麻豆91精品视频| 色综合中文字幕国产 | 国产精品久久久久aaaa樱花 | 国产综合久久久久影院| 色国产综合视频| 国产亚洲精品精华液| 日韩 欧美一区二区三区| 91网站在线播放| 国产欧美日韩久久| 男女男精品视频| 91视频在线看| 久久精品一区二区| 看片网站欧美日韩| 欧美精品日韩综合在线| 亚洲精品视频一区| 成人午夜激情视频| 久久精品一级爱片| 蜜桃免费网站一区二区三区| 欧美性感一类影片在线播放| 国产精品―色哟哟| 国产成人免费在线观看不卡| 日韩久久精品一区| 青青草97国产精品免费观看 | 亚洲精品免费看| 成人午夜在线视频| 久久综合九色综合久久久精品综合| 丝袜美腿亚洲色图| 欧美日韩综合不卡| 亚洲一区二区视频在线| 91在线观看成人| 亚洲人成7777| 色婷婷精品大在线视频| 国产精品久久网站| 成人h动漫精品| 国产精品青草久久| www.成人在线| 中文字幕一区二区三区在线观看| 国产精品一区久久久久| 久久久欧美精品sm网站| 国产一区二区按摩在线观看| wwww国产精品欧美| 国产一区不卡在线| 久久精品亚洲麻豆av一区二区| 国产麻豆视频一区二区| 国产午夜精品理论片a级大结局| 国产精品一区二区久久精品爱涩| 久久久精品天堂| 国产**成人网毛片九色| 欧美极品aⅴ影院| av激情成人网| 亚洲精品视频免费看| 欧美曰成人黄网| 五月天一区二区| 欧美大胆一级视频| 国产一区二区日韩精品| 欧美国产日韩精品免费观看| 成人av免费在线观看| 一区二区在线观看视频在线观看| 欧洲人成人精品| 日本成人中文字幕在线视频| 日韩欧美中文字幕一区| 国产久卡久卡久卡久卡视频精品| 欧美国产乱子伦 | 91麻豆国产自产在线观看| 亚洲精品欧美专区| 欧美日韩国产系列| 久久电影网站中文字幕| 国产偷国产偷亚洲高清人白洁| www.在线成人| 亚洲国产一区二区在线播放| 日韩欧美中文一区| 成人激情动漫在线观看| 亚洲精品菠萝久久久久久久| 欧美日韩不卡在线| 国产精品一区免费视频| 亚洲综合丁香婷婷六月香| 91精品国产aⅴ一区二区| 丰满岳乱妇一区二区三区| 一二三四区精品视频| 日韩免费看的电影| 免费的成人av| 国产自产v一区二区三区c| 久久免费视频色| 99re热这里只有精品视频| 五月天欧美精品| 国产精品色眯眯| 欧美一区二区精美| 成人福利电影精品一区二区在线观看| 亚洲成人在线网站| 欧美激情一区二区三区四区| 欧美综合亚洲图片综合区| 国内久久婷婷综合| 亚洲国产综合人成综合网站| 日韩精品一卡二卡三卡四卡无卡| 久久综合九色欧美综合狠狠 | 欧美影院午夜播放| 国产成人免费高清| 日本视频一区二区三区| 中文字幕一区在线| 久久综合成人精品亚洲另类欧美| 欧美日韩一区二区三区高清| 国产sm精品调教视频网站| 日韩电影在线一区二区| 亚洲免费在线观看| 久久久久综合网| 日韩欧美卡一卡二| 欧美日本国产视频| 在线免费观看视频一区| 成人午夜激情影院| 国产麻豆视频精品|