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

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

?? utils.c

?? Latest USB 802.3, HID printer and mass storage divers from Microsoft for Platform Builder 4.2.
?? C
字號:
//
// Copyright (c) Microsoft Corporation.  All rights reserved.
//
//
// Use of this source code is subject to the terms of the Microsoft end-user
// license agreement (EULA) under which you licensed this SOFTWARE PRODUCT.
// If you did not accept the terms of the EULA, you are not authorized to use
// this source code. For a copy of the EULA, please see the LICENSE.RTF on your
// install media.
//
/*++

THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF
ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO
THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A
PARTICULAR PURPOSE.

Module Name: 

    utils.c

Abstract:

    Common USB Client Driver utils

--*/

#include "utils.h"

//
// GetSetKeyValues
// Get or Set the specified KeyName and its Values to the registry under HKLM
//
// KeyName: HKLM\KeyName
// ValDesc: pointer to a Reg Value Descriptor array. Note the last array entry must be NULL.
// bSet: TRUE to Set, else Get
// bOverwrite: TRUE to overwrite it the key already exists
//
BOOL
GetSetKeyValues(
   LPCTSTR          KeyName,
   PREG_VALUE_DESCR ValDesc,
   BOOL             bSet,
   BOOL             bOverwrite
   )
{
    HKEY   hKey;
    DWORD  dwStatus;
    DWORD  dwDisp;
    DWORD  dwVal;    
    DWORD  dwValLen = 0;
    LPWSTR pwStr;
    PREG_VALUE_DESCR pValueDesc = NULL;

    if (!KeyName || !ValDesc) {
        return FALSE;
    }

    dwStatus = RegOpenKeyEx( HKEY_LOCAL_MACHINE, KeyName, 0, 0, &hKey);

    if ( SET == bSet ) {

        if ( dwStatus == ERROR_SUCCESS ) {
            // Registry Key already exist, do not overwrite.
            // Assumes the values are correct.
            RegCloseKey( hKey); 
            if (!bOverwrite)
                return TRUE;
        };

        dwStatus = RegCreateKeyEx( HKEY_LOCAL_MACHINE,
                                   KeyName,
                                   0,
                                   NULL,
                                   REG_OPTION_NON_VOLATILE,
                                   0,
                                   NULL,
                                   &hKey,
                                   &dwDisp);

        if (dwStatus != ERROR_SUCCESS) {
            return FALSE;
        }

        pValueDesc = ValDesc;
        while (pValueDesc->Name) {
            switch (pValueDesc->Type) {
                case REG_DWORD:
                    dwValLen = sizeof(DWORD);
                    break;

                case REG_SZ:
                    dwValLen = (wcslen((LPWSTR)pValueDesc->Data) + 1) * sizeof(WCHAR);
                    break;

                case REG_MULTI_SZ:
                    pwStr = (LPWSTR)pValueDesc->Data;
                    dwVal = 0;
                    while (*pwStr) {
                        dwDisp = wcslen(pwStr) + 1;
                        dwVal += dwDisp;
                        pwStr += dwDisp;
                    }
                    dwVal++;

                    dwValLen = dwVal*sizeof(WCHAR);
                    break;
        
                default:
                    ASSERT(0);
                    RegCloseKey(hKey);
                    return FALSE;
                    break;
            }

            __try {
                
                dwStatus = RegSetValueEx( hKey,
                                          pValueDesc->Name,
                                          0,
                                          pValueDesc->Type,
                                          pValueDesc->Data,
                                          dwValLen );

            } __except ( EXCEPTION_EXECUTE_HANDLER ) {
                //
                // did you forgot to allocate space for pValueDesc->Data
                //
                RegCloseKey(hKey);
                return FALSE;
            }

            if (dwStatus != ERROR_SUCCESS ) {
                RegCloseKey(hKey);
                return FALSE;
            }

            pValueDesc++;
        }
    
    } else {

        if ( dwStatus != ERROR_SUCCESS ) {
            return FALSE;
        }

        pValueDesc = ValDesc;
        while (pValueDesc->Name) {
        
            dwStatus = RegQueryValueEx( hKey,
                                        pValueDesc->Name,
                                        NULL,
                                        &pValueDesc->Type,
                                        pValueDesc->Data,
                                        &pValueDesc->Size);

            if (dwStatus != ERROR_SUCCESS ) {
                RegCloseKey(hKey);
                return FALSE;
            }

            pValueDesc++;
        }

    }

    RegCloseKey(hKey);

    return (ERROR_SUCCESS == dwStatus);
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
久久品道一品道久久精品| 成人av综合一区| 亚洲欧美日韩国产手机在线| 精品国产区一区| 日韩一区二区三区在线视频| 欧洲av在线精品| 91免费观看在线| 欧美自拍偷拍一区| 99久久精品免费| 91在线丨porny丨国产| 大白屁股一区二区视频| 成人高清视频免费观看| 91丨九色丨蝌蚪富婆spa| 色av成人天堂桃色av| 欧美性大战xxxxx久久久| 欧美无人高清视频在线观看| 日本高清不卡aⅴ免费网站| 在线视频国产一区| 8x8x8国产精品| 日韩久久免费av| 久久久亚洲国产美女国产盗摄| 国产亚洲污的网站| 亚洲欧美色图小说| 日韩av一级电影| 国产精品一二三在| av中文字幕在线不卡| 在线免费观看日本欧美| 91精品免费在线| 国产精品人人做人人爽人人添| 一区二区在线观看不卡| 日本伊人色综合网| 处破女av一区二区| 欧美丝袜丝交足nylons| 欧美精品一区二区三区四区| 日本一区二区成人| 婷婷夜色潮精品综合在线| 国产精品综合一区二区| 色94色欧美sute亚洲线路一久 | 91精品在线免费| 91精品欧美福利在线观看 | 国产精品一二三四区| 91网站黄www| 精品捆绑美女sm三区| 日韩毛片高清在线播放| 久久精品国产一区二区| 色综合色综合色综合| 日韩精品一区二区三区老鸭窝 | 99热在这里有精品免费| 欧美日免费三级在线| 国产三级久久久| 五月综合激情婷婷六月色窝| 国产福利一区二区三区视频| 欧美日韩高清一区| 中文字幕在线播放不卡一区| 色综合一区二区| caoporen国产精品视频| 欧美剧情片在线观看| 欧美成人a在线| 亚洲精品乱码久久久久久日本蜜臀| 日韩激情中文字幕| 99久久综合99久久综合网站| 5月丁香婷婷综合| 亚洲人成电影网站色mp4| 黄色精品一二区| 91麻豆精品国产自产在线观看一区 | 亚洲最色的网站| 懂色av中文一区二区三区| 欧美一区二区视频在线观看| 自拍偷拍欧美精品| 成人av网站在线观看免费| 久久久影视传媒| 九色综合狠狠综合久久| 欧美精品18+| 婷婷综合另类小说色区| 欧美日韩国产精品成人| 亚洲一区二区在线观看视频| 91久久线看在观草草青青| 国产精品久线在线观看| 成人在线一区二区三区| 久久精品视频在线免费观看| 国产一区啦啦啦在线观看| 欧美成人艳星乳罩| 激情丁香综合五月| 久久理论电影网| 狠狠色丁香婷婷综合| 337p日本欧洲亚洲大胆精品| 国产一区二三区| 久久精品一区二区三区不卡牛牛| 老司机午夜精品| 久久综合久久99| 国产精品综合一区二区| 国产精品福利影院| 91免费看`日韩一区二区| 亚洲一区在线观看免费| 91精品国产免费| 国产一区二区三区在线观看精品| 久久久精品国产免费观看同学| 成人ar影院免费观看视频| 亚洲六月丁香色婷婷综合久久 | 5566中文字幕一区二区电影| 日本亚洲三级在线| 久久久久久久久免费| 91天堂素人约啪| 亚洲国产精品自拍| 精品理论电影在线| av一区二区三区| 亚洲大片在线观看| 精品成人免费观看| 91香蕉视频污在线| 久久精品国产秦先生| 亚洲欧美乱综合| 日韩女优毛片在线| 99久久精品99国产精品 | 精品国免费一区二区三区| 国产成人午夜片在线观看高清观看| 中文字幕在线观看一区| 欧美日韩黄视频| 国产v综合v亚洲欧| 性久久久久久久久| 国产精品久久影院| 日韩欧美国产一区二区在线播放 | 香蕉久久一区二区不卡无毒影院| 日韩一卡二卡三卡四卡| 成人av网站在线观看| 日本大胆欧美人术艺术动态| 国产精品毛片高清在线完整版| 欧美中文字幕亚洲一区二区va在线| 久久99久久精品| 午夜伊人狠狠久久| 亚洲欧美区自拍先锋| 国产区在线观看成人精品 | 成人ar影院免费观看视频| 丝袜国产日韩另类美女| 亚洲天天做日日做天天谢日日欢| 日韩免费一区二区| 欧美丝袜自拍制服另类| 一本色道综合亚洲| 成人午夜大片免费观看| 老司机午夜精品99久久| 日韩极品在线观看| 丝袜诱惑制服诱惑色一区在线观看| 亚洲欧洲韩国日本视频| 久久精品一区四区| 久久先锋资源网| 日韩欧美一级精品久久| 欧美日韩国产成人在线91| 欧美午夜不卡在线观看免费| 91在线免费看| 99精品国产91久久久久久| 国产aⅴ综合色| 成人在线视频一区| 成人美女在线视频| 成人免费视频caoporn| 国产高清不卡一区二区| 国产美女一区二区| 国产一区二区三区四区五区美女| 蜜臀久久久久久久| 久久精品国产秦先生| 黑人巨大精品欧美一区| 极品尤物av久久免费看| 精品在线播放免费| 黑人精品欧美一区二区蜜桃 | 日本一区二区久久| 国产亲近乱来精品视频| 亚洲国产成人午夜在线一区| 欧美激情一区二区三区全黄| 欧美国产视频在线| 亚洲三级在线看| 亚洲欧美一区二区不卡| 亚洲成av人片一区二区三区| 日韩一区欧美二区| 久久99久久99精品免视看婷婷 | 一区二区三区欧美日韩| 亚洲最新在线观看| 美女性感视频久久| 国产69精品久久99不卡| 91麻豆国产在线观看| 欧美日本在线视频| 日韩一级大片在线| 中文字幕不卡的av| 一区二区三区精品视频在线| 亚洲成av人片在线观看无码| 极品少妇xxxx精品少妇偷拍| 成人av影院在线| 欧美卡1卡2卡| 久久久久久久久97黄色工厂| ...av二区三区久久精品| 亚洲成人av免费| 国产成人亚洲综合色影视| 91免费观看视频在线| 日韩一区二区视频| 亚洲人成网站精品片在线观看| 免费成人小视频| 91论坛在线播放| 精品成人佐山爱一区二区| 亚洲精品久久久蜜桃| 精久久久久久久久久久| 欧美视频在线一区| 亚洲国产成人在线| 美日韩一区二区|