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

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

?? dbt.h

?? 本源碼是vc環境下的usb程序
?? H
?? 第 1 頁 / 共 2 頁
字號:
/*****************************************************************************
 *
 *  (C) Copyright MICROSOFT Corp., 1993-1999
 *
 *  Title:      DBT.H - Equates for WM_DEVICECHANGE and BroadcastSystemMessage
 *
 *  Version:    4.00
 *
 *  Date:       24-May-1993
 *
 *  Author:     rjc
 *
 *----------------------------------------------------------------------------
 *
 *  Change log:
 *
 *     DATE     REV                 DESCRIPTION
 *  ----------- --- ----------------------------------------------------------
 *
 *****************************************************************************/

#ifndef _DBT_H
#define _DBT_H

#if _MSC_VER > 1000
#pragma once
#endif

/*
 * BroadcastSpecialMessage constants.
 */
#define WM_DEVICECHANGE         0x0219

/* XLATOFF */
#ifdef  IS_32
#define DBTFAR
#else
#define DBTFAR  far
#endif
/* XLATON */

#if !defined(_WCHAR_T_DEFINED) && !defined(_NATIVE_WCHAR_T_DEFINED)
typedef unsigned short wchar_t;
#define _WCHAR_T_DEFINED
#endif

#ifndef GUID_DEFINED
#include <guiddef.h>
#endif // !defined(GUID_DEFINED)

/*
 * Broadcast message and receipient flags.
 *
 * Note that there is a third "flag". If the wParam has:
 *
 * bit 15 on:   lparam is a pointer and bit 14 is meaningfull.
 * bit 15 off:  lparam is just a UNLONG data type.
 *
 * bit 14 on:   lparam is a pointer to an ASCIIZ string.
 * bit 14 off:  lparam is a pointer to a binary struture starting with
 *              a dword describing the length of the structure.
 */
#define BSF_QUERY               0x00000001
#define BSF_IGNORECURRENTTASK   0x00000002      /* Meaningless for VxDs */
#define BSF_FLUSHDISK           0x00000004      /* Shouldn't be used by VxDs */
#define BSF_NOHANG              0x00000008
#define BSF_POSTMESSAGE         0x00000010
#define BSF_FORCEIFHUNG         0x00000020
#define BSF_NOTIMEOUTIFNOTHUNG  0x00000040
#define BSF_MSGSRV32ISOK        0x80000000      /* Called synchronously from PM API */
#define BSF_MSGSRV32ISOK_BIT    31              /* Called synchronously from PM API */

#define BSM_ALLCOMPONENTS       0x00000000
#define BSM_VXDS                0x00000001
#define BSM_NETDRIVER           0x00000002
#define BSM_INSTALLABLEDRIVERS  0x00000004
#define BSM_APPLICATIONS        0x00000008

/*
 * Message = WM_DEVICECHANGE
 * wParam  = DBT_APPYBEGIN
 * lParam  = (not used)
 *
 *      'Appy-time is now available.  This message is itself sent
 *      at 'Appy-time.
 *
 * Message = WM_DEVICECHANGE
 * wParam  = DBT_APPYEND
 * lParam  = (not used)
 *
 *      'Appy-time is no longer available.  This message is *NOT* sent
 *      at 'Appy-time.  (It cannot be, because 'Appy-time is gone.)
 *
 * NOTE!  It is possible for DBT_APPYBEGIN and DBT_APPYEND to be sent
 * multiple times during a single Windows session.  Each appearance of
 * 'Appy-time is bracketed by these two messages, but 'Appy-time may
 * momentarily become unavailable during otherwise normal Windows
 * processing.  The current status of 'Appy-time availability can always
 * be obtained from a call to _SHELL_QueryAppyTimeAvailable.
 */
#define DBT_APPYBEGIN                   0x0000
#define DBT_APPYEND                     0x0001

/*
 * Message = WM_DEVICECHANGE
 * wParam  = DBT_DEVNODES_CHANGED
 * lParam  = 0
 *
 *      send when configmg finished a process tree batch. Some devnodes
 *      may have been added or removed. This is used by ring3 people which
 *      need to be refreshed whenever any devnode changed occur (like
 *      device manager). People specific to certain devices should use
 *      DBT_DEVICE* instead.
 */

#define DBT_DEVNODES_CHANGED            0x0007

/*
 * Message = WM_DEVICECHANGE
 * wParam  = DBT_QUERYCHANGECONFIG
 * lParam  = 0
 *
 *      sent to ask if a config change is allowed
 */

#define DBT_QUERYCHANGECONFIG           0x0017

/*
 * Message = WM_DEVICECHANGE
 * wParam  = DBT_CONFIGCHANGED
 * lParam  = 0
 *
 *      sent when a config has changed
 */

#define DBT_CONFIGCHANGED               0x0018

/*
 * Message = WM_DEVICECHANGE
 * wParam  = DBT_CONFIGCHANGECANCELED
 * lParam  = 0
 *
 *      someone cancelled the config change
 */

#define DBT_CONFIGCHANGECANCELED        0x0019

/*
 * Message = WM_DEVICECHANGE
 * wParam  = DBT_MONITORCHANGE
 * lParam  = new resolution to use (LOWORD=x, HIWORD=y)
 *           if 0, use the default res for current config
 *
 *      this message is sent when the display monitor has changed
 *      and the system should change the display mode to match it.
 */

#define DBT_MONITORCHANGE               0x001B

/*
 * Message = WM_DEVICECHANGE
 * wParam  = DBT_SHELLLOGGEDON
 * lParam  = 0
 *
 *      The shell has finished login on: VxD can now do Shell_EXEC.
 */

#define DBT_SHELLLOGGEDON               0x0020

/*
 * Message = WM_DEVICECHANGE
 * wParam  = DBT_CONFIGMGAPI
 * lParam  = CONFIGMG API Packet
 *
 *      CONFIGMG ring 3 call.
 */
#define DBT_CONFIGMGAPI32               0x0022

/*
 * Message = WM_DEVICECHANGE
 * wParam  = DBT_VXDINITCOMPLETE
 * lParam  = 0
 *
 *      CONFIGMG ring 3 call.
 */
#define DBT_VXDINITCOMPLETE             0x0023

/*
 * Message = WM_DEVICECHANGE
 * wParam  = DBT_VOLLOCK*
 * lParam  = pointer to VolLockBroadcast structure described below
 *
 *      Messages issued by IFSMGR for volume locking purposes on WM_DEVICECHANGE.
 *      All these messages pass a pointer to a struct which has no pointers.
 */

#define DBT_VOLLOCKQUERYLOCK    0x8041
#define DBT_VOLLOCKLOCKTAKEN    0x8042
#define DBT_VOLLOCKLOCKFAILED   0x8043
#define DBT_VOLLOCKQUERYUNLOCK  0x8044
#define DBT_VOLLOCKLOCKRELEASED 0x8045
#define DBT_VOLLOCKUNLOCKFAILED 0x8046

/*
 * Device broadcast header
 */

struct _DEV_BROADCAST_HDR {     /* */
    DWORD       dbch_size;
    DWORD       dbch_devicetype;
    DWORD       dbch_reserved;
};

typedef struct  _DEV_BROADCAST_HDR      DEV_BROADCAST_HDR;
typedef         DEV_BROADCAST_HDR       DBTFAR *PDEV_BROADCAST_HDR;

/*
 * Structure for volume lock broadcast
 */

typedef struct VolLockBroadcast VolLockBroadcast;
typedef VolLockBroadcast *pVolLockBroadcast;
struct VolLockBroadcast {
        struct  _DEV_BROADCAST_HDR vlb_dbh;
        DWORD   vlb_owner;              // thread on which lock request is being issued
        BYTE    vlb_perms;              // lock permission flags defined below
        BYTE    vlb_lockType;           // type of lock
        BYTE    vlb_drive;              // drive on which lock is issued
        BYTE    vlb_flags;              // miscellaneous flags
};

/*
 * Values for vlb_perms
 */
#define LOCKP_ALLOW_WRITES              0x01    // Bit 0 set - allow writes
#define LOCKP_FAIL_WRITES               0x00    // Bit 0 clear - fail writes
#define LOCKP_FAIL_MEM_MAPPING          0x02    // Bit 1 set - fail memory mappings
#define LOCKP_ALLOW_MEM_MAPPING         0x00    // Bit 1 clear - allow memory mappings
#define LOCKP_USER_MASK                 0x03    // Mask for user lock flags
#define LOCKP_LOCK_FOR_FORMAT           0x04    // Level 0 lock for format

/*
 * Values for vlb_flags
 */

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产成人av电影在线| 激情五月播播久久久精品| 欧美精品乱码久久久久久按摩| 视频一区二区三区中文字幕| 国产欧美一区二区精品仙草咪| 91福利国产精品| 国产一区二区美女诱惑| 亚洲午夜影视影院在线观看| 久久午夜电影网| 欧美色窝79yyyycom| 成人一级片网址| 青草国产精品久久久久久| 亚洲视频在线观看一区| 精品久久国产老人久久综合| 欧美性猛交xxxx黑人交| 丰满放荡岳乱妇91ww| 日本不卡一区二区三区| 亚洲图片你懂的| 亚洲一区二区三区不卡国产欧美| 久久免费美女视频| 欧美一区日韩一区| 欧美系列亚洲系列| 97国产一区二区| 国产精品996| 精品一区二区综合| 偷窥国产亚洲免费视频| 一区二区三区欧美视频| 亚洲国产激情av| 精品对白一区国产伦| 欧美一区二区高清| 欧美精品三级日韩久久| 在线影视一区二区三区| 91天堂素人约啪| 成人中文字幕合集| 国产精品18久久久| 国产真实乱子伦精品视频| 久久99久久99| 蜜桃视频在线一区| 麻豆国产精品官网| 美女视频一区在线观看| 日本成人在线视频网站| 免费不卡在线视频| 日本伊人色综合网| 日本女人一区二区三区| 免费高清在线视频一区·| 日韩不卡免费视频| 免费人成网站在线观看欧美高清| 五月婷婷欧美视频| 日本不卡在线视频| 秋霞影院一区二区| 久久av资源站| 国产精品一区在线观看乱码| 国产精品亚洲а∨天堂免在线| 国产精品996| 成人激情免费电影网址| 99国产精品视频免费观看| 99精品视频中文字幕| 色综合激情久久| 在线看不卡av| 在线观看91精品国产麻豆| 日韩一区二区精品葵司在线| 精品sm捆绑视频| 久久久久久一级片| 亚洲色图自拍偷拍美腿丝袜制服诱惑麻豆| 中文字幕亚洲精品在线观看| 依依成人精品视频| 天堂蜜桃91精品| 裸体歌舞表演一区二区| 国产69精品久久久久777| www.亚洲人| 欧美三日本三级三级在线播放| 91精品国产欧美日韩| 精品国内片67194| 中文字幕乱码亚洲精品一区| 一区二区国产视频| 奇米777欧美一区二区| 国产真实乱对白精彩久久| 99精品视频在线观看| 欧美三级蜜桃2在线观看| 日韩久久久精品| 国产精品国产三级国产专播品爱网 | 7799精品视频| 久久久天堂av| 亚洲精品va在线观看| 麻豆freexxxx性91精品| 成人黄色a**站在线观看| 欧美三级在线看| 久久久亚洲精品一区二区三区| 一级女性全黄久久生活片免费| 男女男精品网站| 成人黄页毛片网站| 正在播放一区二区| 亚洲国产精品黑人久久久| 亚洲成人免费在线| 成人18视频在线播放| 在线播放中文字幕一区| 亚洲国产激情av| 奇米精品一区二区三区在线观看一| av中文字幕一区| 欧美sm美女调教| 一区二区三区中文免费| 国产在线一区二区| 欧美三级三级三级| 国产精品乱码妇女bbbb| 麻豆91在线观看| 欧洲一区在线电影| 国产精品私人影院| 蜜桃视频在线观看一区二区| 在线视频你懂得一区二区三区| 国产亚洲欧洲997久久综合| 日日夜夜精品视频天天综合网| 99久久777色| 国产午夜一区二区三区| 日韩**一区毛片| 在线观看日韩电影| 日韩码欧中文字| 国产99久久久久| 欧美成人性战久久| 日韩国产精品91| 色综合视频在线观看| 国产精品视频你懂的| 久久精品久久99精品久久| 欧美三级日本三级少妇99| 亚洲男人天堂av| 懂色av一区二区三区免费观看| 日韩免费高清电影| 日韩电影在线观看网站| 欧美日韩综合一区| 亚洲第一av色| 欧美伊人精品成人久久综合97 | 蜜臀a∨国产成人精品| 欧美精品在线观看一区二区| 亚洲综合另类小说| 色成人在线视频| 亚洲欧美日韩电影| 色激情天天射综合网| 亚洲男人天堂av| 色先锋资源久久综合| 亚洲欧美另类久久久精品2019| 不卡一区二区在线| 亚洲欧美一区二区视频| av在线不卡网| 最近中文字幕一区二区三区| a美女胸又www黄视频久久| ㊣最新国产の精品bt伙计久久| 99国产精品视频免费观看| 综合久久国产九一剧情麻豆| 91麻豆自制传媒国产之光| 尤物视频一区二区| 91视频xxxx| 亚洲一区在线看| 91精品国产色综合久久不卡蜜臀| 秋霞影院一区二区| 久久色.com| 99re在线精品| 亚洲曰韩产成在线| 日韩欧美综合在线| 国产综合久久久久影院| 国产精品视频一区二区三区不卡| 91丝袜美腿高跟国产极品老师| 美女爽到高潮91| 久久老女人爱爱| 成人午夜视频在线观看| 亚洲三级电影全部在线观看高清| 欧洲av在线精品| 视频一区视频二区中文| 久久综合狠狠综合| 99国产精品久久久久久久久久| 一区二区视频在线看| 91麻豆精品国产91久久久久久久久| 久久精品国产网站| 中文字幕av不卡| 欧美在线免费观看视频| 九一久久久久久| 国产精品乱码一区二三区小蝌蚪| 欧美亚洲禁片免费| 韩国女主播一区二区三区| 中文字幕一区二区三区精华液| 欧美日精品一区视频| 国产伦精品一区二区三区免费迷| 中文字幕在线免费不卡| 欧美精品日韩一区| 懂色av一区二区夜夜嗨| 五月天一区二区三区| 国产日韩综合av| 精品视频1区2区3区| 国产精品99久久久久久有的能看| 一区二区三区不卡在线观看 | 精品国一区二区三区| 91丝袜高跟美女视频| 捆绑紧缚一区二区三区视频| 国产精品久久久久久久久果冻传媒| 精品视频1区2区| 成人白浆超碰人人人人| 日本欧美一区二区三区乱码| 国产精品毛片a∨一区二区三区| 欧美精品自拍偷拍| 91在线小视频| 韩国女主播成人在线| 视频一区二区三区中文字幕|