xpmgr/BuildTools/Include/WiaDef.h

1837 lines
74 KiB
C

/****************************************************************************
*
* (C) Copyright 1998-2003, Microsoft Corp.
*
* File: wiadef.h
*
* Version: 3.0
*
* Description: WIA constant definitions
*
*****************************************************************************/
#if (_WIN32_WINNT >= 0x0501) // Windows XP and later
#pragma once
#ifndef _WIADEF_
#define _WIADEF_
#include <pshpack8.h>
#ifndef _NO_COM
#include <objbase.h>
#endif
#ifdef __cplusplus
extern "C" {
#endif
//
// WIA property ID and string constants
//
#define WIA_DIP_DEV_ID 2 // 0x2
#define WIA_DIP_DEV_ID_STR L"Unique Device ID"
#define WIA_DIP_VEND_DESC 3 // 0x3
#define WIA_DIP_VEND_DESC_STR L"Manufacturer"
#define WIA_DIP_DEV_DESC 4 // 0x4
#define WIA_DIP_DEV_DESC_STR L"Description"
#define WIA_DIP_DEV_TYPE 5 // 0x5
#define WIA_DIP_DEV_TYPE_STR L"Type"
#define WIA_DIP_PORT_NAME 6 // 0x6
#define WIA_DIP_PORT_NAME_STR L"Port"
#define WIA_DIP_DEV_NAME 7 // 0x7
#define WIA_DIP_DEV_NAME_STR L"Name"
#define WIA_DIP_SERVER_NAME 8 // 0x8
#define WIA_DIP_SERVER_NAME_STR L"Server"
#define WIA_DIP_REMOTE_DEV_ID 9 // 0x9
#define WIA_DIP_REMOTE_DEV_ID_STR L"Remote Device ID"
#define WIA_DIP_UI_CLSID 10 // 0xa
#define WIA_DIP_UI_CLSID_STR L"UI Class ID"
#define WIA_DIP_HW_CONFIG 11 // 0xb
#define WIA_DIP_HW_CONFIG_STR L"Hardware Configuration"
#define WIA_DIP_BAUDRATE 12 // 0xc
#define WIA_DIP_BAUDRATE_STR L"BaudRate"
#define WIA_DIP_STI_GEN_CAPABILITIES 13 // 0xd
#define WIA_DIP_STI_GEN_CAPABILITIES_STR L"STI Generic Capabilities"
#define WIA_DIP_WIA_VERSION 14 // 0xe
#define WIA_DIP_WIA_VERSION_STR L"WIA Version"
#define WIA_DIP_DRIVER_VERSION 15 // 0xf
#define WIA_DIP_DRIVER_VERSION_STR L"Driver Version"
#define WIA_DIP_PNP_ID 16 // 0x10
#define WIA_DIP_PNP_ID_STR L"PnP ID String"
#define WIA_DIP_STI_DRIVER_VERSION 17 // 0x11
#define WIA_DIP_STI_DRIVER_VERSION_STR L"STI Driver Version"
#define WIA_DPA_FIRMWARE_VERSION 1026 // 0x402
#define WIA_DPA_FIRMWARE_VERSION_STR L"Firmware Version"
#define WIA_DPA_CONNECT_STATUS 1027 // 0x403
#define WIA_DPA_CONNECT_STATUS_STR L"Connect Status"
#define WIA_DPA_DEVICE_TIME 1028 // 0x404
#define WIA_DPA_DEVICE_TIME_STR L"Device Time"
#define WIA_DPC_PICTURES_TAKEN 2050 // 0x802
#define WIA_DPC_PICTURES_TAKEN_STR L"Pictures Taken"
#define WIA_DPC_PICTURES_REMAINING 2051 // 0x803
#define WIA_DPC_PICTURES_REMAINING_STR L"Pictures Remaining"
#define WIA_DPC_EXPOSURE_MODE 2052 // 0x804
#define WIA_DPC_EXPOSURE_MODE_STR L"Exposure Mode"
#define WIA_DPC_EXPOSURE_COMP 2053 // 0x805
#define WIA_DPC_EXPOSURE_COMP_STR L"Exposure Compensation"
#define WIA_DPC_EXPOSURE_TIME 2054 // 0x806
#define WIA_DPC_EXPOSURE_TIME_STR L"Exposure Time"
#define WIA_DPC_FNUMBER 2055 // 0x807
#define WIA_DPC_FNUMBER_STR L"F Number"
#define WIA_DPC_FLASH_MODE 2056 // 0x808
#define WIA_DPC_FLASH_MODE_STR L"Flash Mode"
#define WIA_DPC_FOCUS_MODE 2057 // 0x809
#define WIA_DPC_FOCUS_MODE_STR L"Focus Mode"
#define WIA_DPC_FOCUS_MANUAL_DIST 2058 // 0x80a
#define WIA_DPC_FOCUS_MANUAL_DIST_STR L"Focus Manual Dist"
#define WIA_DPC_ZOOM_POSITION 2059 // 0x80b
#define WIA_DPC_ZOOM_POSITION_STR L"Zoom Position"
#define WIA_DPC_PAN_POSITION 2060 // 0x80c
#define WIA_DPC_PAN_POSITION_STR L"Pan Position"
#define WIA_DPC_TILT_POSITION 2061 // 0x80d
#define WIA_DPC_TILT_POSITION_STR L"Tilt Position"
#define WIA_DPC_TIMER_MODE 2062 // 0x80e
#define WIA_DPC_TIMER_MODE_STR L"Timer Mode"
#define WIA_DPC_TIMER_VALUE 2063 // 0x80f
#define WIA_DPC_TIMER_VALUE_STR L"Timer Value"
#define WIA_DPC_POWER_MODE 2064 // 0x810
#define WIA_DPC_POWER_MODE_STR L"Power Mode"
#define WIA_DPC_BATTERY_STATUS 2065 // 0x811
#define WIA_DPC_BATTERY_STATUS_STR L"Battery Status"
#define WIA_DPC_THUMB_WIDTH 2066 // 0x812
#define WIA_DPC_THUMB_WIDTH_STR L"Thumbnail Width"
#define WIA_DPC_THUMB_HEIGHT 2067 // 0x813
#define WIA_DPC_THUMB_HEIGHT_STR L"Thumbnail Height"
#define WIA_DPC_PICT_WIDTH 2068 // 0x814
#define WIA_DPC_PICT_WIDTH_STR L"Picture Width"
#define WIA_DPC_PICT_HEIGHT 2069 // 0x815
#define WIA_DPC_PICT_HEIGHT_STR L"Picture Height"
#define WIA_DPC_DIMENSION 2070 // 0x816
#define WIA_DPC_DIMENSION_STR L"Dimension"
#define WIA_DPC_COMPRESSION_SETTING 2071 // 0x817
#define WIA_DPC_COMPRESSION_SETTING_STR L"Compression Setting"
#define WIA_DPC_FOCUS_METERING 2072 // 0x818
#define WIA_DPC_FOCUS_METERING_STR L"Focus Metering Mode"
#define WIA_DPC_TIMELAPSE_INTERVAL 2073 // 0x819
#define WIA_DPC_TIMELAPSE_INTERVAL_STR L"Timelapse Interval"
#define WIA_DPC_TIMELAPSE_NUMBER 2074 // 0x81a
#define WIA_DPC_TIMELAPSE_NUMBER_STR L"Timelapse Number"
#define WIA_DPC_BURST_INTERVAL 2075 // 0x81b
#define WIA_DPC_BURST_INTERVAL_STR L"Burst Interval"
#define WIA_DPC_BURST_NUMBER 2076 // 0x81c
#define WIA_DPC_BURST_NUMBER_STR L"Burst Number"
#define WIA_DPC_EFFECT_MODE 2077 // 0x81d
#define WIA_DPC_EFFECT_MODE_STR L"Effect Mode"
#define WIA_DPC_DIGITAL_ZOOM 2078 // 0x81e
#define WIA_DPC_DIGITAL_ZOOM_STR L"Digital Zoom"
#define WIA_DPC_SHARPNESS 2079 // 0x81f
#define WIA_DPC_SHARPNESS_STR L"Sharpness"
#define WIA_DPC_CONTRAST 2080 // 0x820
#define WIA_DPC_CONTRAST_STR L"Contrast"
#define WIA_DPC_CAPTURE_MODE 2081 // 0x821
#define WIA_DPC_CAPTURE_MODE_STR L"Capture Mode"
#define WIA_DPC_CAPTURE_DELAY 2082 // 0x822
#define WIA_DPC_CAPTURE_DELAY_STR L"Capture Delay"
#define WIA_DPC_EXPOSURE_INDEX 2083 // 0x823
#define WIA_DPC_EXPOSURE_INDEX_STR L"Exposure Index"
#define WIA_DPC_EXPOSURE_METERING_MODE 2084 // 0x824
#define WIA_DPC_EXPOSURE_METERING_MODE_STR L"Exposure Metering Mode"
#define WIA_DPC_FOCUS_METERING_MODE 2085 // 0x825
#define WIA_DPC_FOCUS_METERING_MODE_STR L"Focus Metering Mode"
#define WIA_DPC_FOCUS_DISTANCE 2086 // 0x826
#define WIA_DPC_FOCUS_DISTANCE_STR L"Focus Distance"
#define WIA_DPC_FOCAL_LENGTH 2087 // 0x827
#define WIA_DPC_FOCAL_LENGTH_STR L"Focus Length"
#define WIA_DPC_RGB_GAIN 2088 // 0x828
#define WIA_DPC_RGB_GAIN_STR L"RGB Gain"
#define WIA_DPC_WHITE_BALANCE 2089 // 0x829
#define WIA_DPC_WHITE_BALANCE_STR L"White Balance"
#define WIA_DPC_UPLOAD_URL 2090 // 0x82a
#define WIA_DPC_UPLOAD_URL_STR L"Upload URL"
#define WIA_DPC_ARTIST 2091 // 0x82b
#define WIA_DPC_ARTIST_STR L"Artist"
#define WIA_DPC_COPYRIGHT_INFO 2092 // 0x82c
#define WIA_DPC_COPYRIGHT_INFO_STR L"Copyright Info"
#define WIA_DPS_HORIZONTAL_BED_SIZE 3074 // 0xc02
#define WIA_DPS_HORIZONTAL_BED_SIZE_STR L"Horizontal Bed Size"
#define WIA_DPS_VERTICAL_BED_SIZE 3075 // 0xc03
#define WIA_DPS_VERTICAL_BED_SIZE_STR L"Vertical Bed Size"
#define WIA_DPS_HORIZONTAL_SHEET_FEED_SIZE 3076 // 0xc04
#define WIA_DPS_HORIZONTAL_SHEET_FEED_SIZE_STR L"Horizontal Sheet Feed Size"
#define WIA_DPS_VERTICAL_SHEET_FEED_SIZE 3077 // 0xc05
#define WIA_DPS_VERTICAL_SHEET_FEED_SIZE_STR L"Vertical Sheet Feed Size"
#define WIA_DPS_SHEET_FEEDER_REGISTRATION 3078 // 0xc06
#define WIA_DPS_SHEET_FEEDER_REGISTRATION_STR L"Sheet Feeder Registration"
#define WIA_DPS_HORIZONTAL_BED_REGISTRATION 3079 // 0xc07
#define WIA_DPS_HORIZONTAL_BED_REGISTRATION_STR L"Horizontal Bed Registration"
#define WIA_DPS_VERTICAL_BED_REGISTRATION 3080 // 0xc08
#define WIA_DPS_VERTICAL_BED_REGISTRATION_STR L"Vertical Bed Registration"
#define WIA_DPS_PLATEN_COLOR 3081 // 0xc09
#define WIA_DPS_PLATEN_COLOR_STR L"Platen Color"
#define WIA_DPS_PAD_COLOR 3082 // 0xc0a
#define WIA_DPS_PAD_COLOR_STR L"Pad Color"
#define WIA_DPS_FILTER_SELECT 3083 // 0xc0b
#define WIA_DPS_FILTER_SELECT_STR L"Filter Select"
#define WIA_DPS_DITHER_SELECT 3084 // 0xc0c
#define WIA_DPS_DITHER_SELECT_STR L"Dither Select"
#define WIA_DPS_DITHER_PATTERN_DATA 3085 // 0xc0d
#define WIA_DPS_DITHER_PATTERN_DATA_STR L"Dither Pattern Data"
#define WIA_DPS_DOCUMENT_HANDLING_CAPABILITIES 3086 // 0xc0e
#define WIA_DPS_DOCUMENT_HANDLING_CAPABILITIES_STR L"Document Handling Capabilities"
#define WIA_DPS_DOCUMENT_HANDLING_STATUS 3087 // 0xc0f
#define WIA_DPS_DOCUMENT_HANDLING_STATUS_STR L"Document Handling Status"
#define WIA_DPS_DOCUMENT_HANDLING_SELECT 3088 // 0xc10
#define WIA_DPS_DOCUMENT_HANDLING_SELECT_STR L"Document Handling Select"
#define WIA_DPS_DOCUMENT_HANDLING_CAPACITY 3089 // 0xc11
#define WIA_DPS_DOCUMENT_HANDLING_CAPACITY_STR L"Document Handling Capacity"
#define WIA_DPS_OPTICAL_XRES 3090 // 0xc12
#define WIA_DPS_OPTICAL_XRES_STR L"Horizontal Optical Resolution"
#define WIA_DPS_OPTICAL_YRES 3091 // 0xc13
#define WIA_DPS_OPTICAL_YRES_STR L"Vertical Optical Resolution"
#define WIA_DPS_ENDORSER_CHARACTERS 3092 // 0xc14
#define WIA_DPS_ENDORSER_CHARACTERS_STR L"Endorser Characters"
#define WIA_DPS_ENDORSER_STRING 3093 // 0xc15
#define WIA_DPS_ENDORSER_STRING_STR L"Endorser String"
#define WIA_DPS_SCAN_AHEAD_PAGES 3094 // 0xc16
#define WIA_DPS_SCAN_AHEAD_PAGES_STR L"Scan Ahead Pages"
#define WIA_DPS_MAX_SCAN_TIME 3095 // 0xc17
#define WIA_DPS_MAX_SCAN_TIME_STR L"Max Scan Time"
#define WIA_DPS_PAGES 3096 // 0xc18
#define WIA_DPS_PAGES_STR L"Pages"
#define WIA_DPS_PAGE_SIZE 3097 // 0xc19
#define WIA_DPS_PAGE_SIZE_STR L"Page Size"
#define WIA_DPS_PAGE_WIDTH 3098 // 0xc1a
#define WIA_DPS_PAGE_WIDTH_STR L"Page Width"
#define WIA_DPS_PAGE_HEIGHT 3099 // 0xc1b
#define WIA_DPS_PAGE_HEIGHT_STR L"Page Height"
#define WIA_DPS_PREVIEW 3100 // 0xc1c
#define WIA_DPS_PREVIEW_STR L"Preview"
#define WIA_DPS_TRANSPARENCY 3101 // 0xc1d
#define WIA_DPS_TRANSPARENCY_STR L"Transparency Adapter"
#define WIA_DPS_TRANSPARENCY_SELECT 3102 // 0xc1e
#define WIA_DPS_TRANSPARENCY_SELECT_STR L"Transparency Adapter Select"
#define WIA_DPS_SHOW_PREVIEW_CONTROL 3103 // 0xc1f
#define WIA_DPS_SHOW_PREVIEW_CONTROL_STR L"Show preview control"
#define WIA_DPS_MIN_HORIZONTAL_SHEET_FEED_SIZE 3104 // 0xc20
#define WIA_DPS_MIN_HORIZONTAL_SHEET_FEED_SIZE_STR L"Minimum Horizontal Sheet Feed Size"
#define WIA_DPS_MIN_VERTICAL_SHEET_FEED_SIZE 3105 // 0xc21
#define WIA_DPS_MIN_VERTICAL_SHEET_FEED_SIZE_STR L"Minimum Vertical Sheet Feed Size"
#define WIA_DPS_TRANSPARENCY_CAPABILITIES 3106 // 0xc22
#define WIA_DPS_TRANSPARENCY_CAPABILITIES_STR L"Transparency Adapter Capabilities"
#define WIA_DPS_TRANSPARENCY_STATUS 3107 // 0xc23
#define WIA_DPS_TRANSPARENCY_STATUS_STR L"Transparency Adapter Status"
#define WIA_DPF_MOUNT_POINT 3330 // 0xd02
#define WIA_DPF_MOUNT_POINT_STR L"Directory mount point"
#define WIA_DPV_LAST_PICTURE_TAKEN 3586 // 0xe02
#define WIA_DPV_LAST_PICTURE_TAKEN_STR L"Last Picture Taken"
#define WIA_DPV_IMAGES_DIRECTORY 3587 // 0xe03
#define WIA_DPV_IMAGES_DIRECTORY_STR L"Images Directory"
#define WIA_DPV_DSHOW_DEVICE_PATH 3588 // 0xe04
#define WIA_DPV_DSHOW_DEVICE_PATH_STR L"Directshow Device Path"
#define WIA_IPA_ITEM_NAME 4098 // 0x1002
#define WIA_IPA_ITEM_NAME_STR L"Item Name"
#define WIA_IPA_FULL_ITEM_NAME 4099 // 0x1003
#define WIA_IPA_FULL_ITEM_NAME_STR L"Full Item Name"
#define WIA_IPA_ITEM_TIME 4100 // 0x1004
#define WIA_IPA_ITEM_TIME_STR L"Item Time Stamp"
#define WIA_IPA_ITEM_FLAGS 4101 // 0x1005
#define WIA_IPA_ITEM_FLAGS_STR L"Item Flags"
#define WIA_IPA_ACCESS_RIGHTS 4102 // 0x1006
#define WIA_IPA_ACCESS_RIGHTS_STR L"Access Rights"
#define WIA_IPA_DATATYPE 4103 // 0x1007
#define WIA_IPA_DATATYPE_STR L"Data Type"
#define WIA_IPA_DEPTH 4104 // 0x1008
#define WIA_IPA_DEPTH_STR L"Bits Per Pixel"
#define WIA_IPA_PREFERRED_FORMAT 4105 // 0x1009
#define WIA_IPA_PREFERRED_FORMAT_STR L"Preferred Format"
#define WIA_IPA_FORMAT 4106 // 0x100a
#define WIA_IPA_FORMAT_STR L"Format"
#define WIA_IPA_COMPRESSION 4107 // 0x100b
#define WIA_IPA_COMPRESSION_STR L"Compression"
#define WIA_IPA_TYMED 4108 // 0x100c
#define WIA_IPA_TYMED_STR L"Media Type"
#define WIA_IPA_CHANNELS_PER_PIXEL 4109 // 0x100d
#define WIA_IPA_CHANNELS_PER_PIXEL_STR L"Channels Per Pixel"
#define WIA_IPA_BITS_PER_CHANNEL 4110 // 0x100e
#define WIA_IPA_BITS_PER_CHANNEL_STR L"Bits Per Channel"
#define WIA_IPA_PLANAR 4111 // 0x100f
#define WIA_IPA_PLANAR_STR L"Planar"
#define WIA_IPA_PIXELS_PER_LINE 4112 // 0x1010
#define WIA_IPA_PIXELS_PER_LINE_STR L"Pixels Per Line"
#define WIA_IPA_BYTES_PER_LINE 4113 // 0x1011
#define WIA_IPA_BYTES_PER_LINE_STR L"Bytes Per Line"
#define WIA_IPA_NUMBER_OF_LINES 4114 // 0x1012
#define WIA_IPA_NUMBER_OF_LINES_STR L"Number of Lines"
#define WIA_IPA_GAMMA_CURVES 4115 // 0x1013
#define WIA_IPA_GAMMA_CURVES_STR L"Gamma Curves"
#define WIA_IPA_ITEM_SIZE 4116 // 0x1014
#define WIA_IPA_ITEM_SIZE_STR L"Item Size"
#define WIA_IPA_COLOR_PROFILE 4117 // 0x1015
#define WIA_IPA_COLOR_PROFILE_STR L"Color Profiles"
#define WIA_IPA_MIN_BUFFER_SIZE 4118 // 0x1016
#define WIA_IPA_MIN_BUFFER_SIZE_STR L"Buffer Size"
#define WIA_IPA_BUFFER_SIZE 4118 // 0x1016
#define WIA_IPA_BUFFER_SIZE_STR L"Buffer Size"
#define WIA_IPA_REGION_TYPE 4119 // 0x1017
#define WIA_IPA_REGION_TYPE_STR L"Region Type"
#define WIA_IPA_ICM_PROFILE_NAME 4120 // 0x1018
#define WIA_IPA_ICM_PROFILE_NAME_STR L"Color Profile Name"
#define WIA_IPA_APP_COLOR_MAPPING 4121 // 0x1019
#define WIA_IPA_APP_COLOR_MAPPING_STR L"Application Applies Color Mapping"
#define WIA_IPA_PROP_STREAM_COMPAT_ID 4122 // 0x101a
#define WIA_IPA_PROP_STREAM_COMPAT_ID_STR L"Stream Compatibility ID"
#define WIA_IPA_FILENAME_EXTENSION 4123 // 0x101b
#define WIA_IPA_FILENAME_EXTENSION_STR L"Filename extension"
#define WIA_IPA_SUPPRESS_PROPERTY_PAGE 4124 // 0x101c
#define WIA_IPA_SUPPRESS_PROPERTY_PAGE_STR L"Suppress a property page"
#define WIA_IPC_THUMBNAIL 5122 // 0x1402
#define WIA_IPC_THUMBNAIL_STR L"Thumbnail Data"
#define WIA_IPC_THUMB_WIDTH 5123 // 0x1403
#define WIA_IPC_THUMB_WIDTH_STR L"Thumbnail Width"
#define WIA_IPC_THUMB_HEIGHT 5124 // 0x1404
#define WIA_IPC_THUMB_HEIGHT_STR L"Thumbnail Height"
#define WIA_IPC_AUDIO_AVAILABLE 5125 // 0x1405
#define WIA_IPC_AUDIO_AVAILABLE_STR L"Audio Available"
#define WIA_IPC_AUDIO_DATA_FORMAT 5126 // 0x1406
#define WIA_IPC_AUDIO_DATA_FORMAT_STR L"Audio Format"
#define WIA_IPC_AUDIO_DATA 5127 // 0x1407
#define WIA_IPC_AUDIO_DATA_STR L"Audio Data"
#define WIA_IPC_NUM_PICT_PER_ROW 5128 // 0x1408
#define WIA_IPC_NUM_PICT_PER_ROW_STR L"Pictures per Row"
#define WIA_IPC_SEQUENCE 5129 // 0x1409
#define WIA_IPC_SEQUENCE_STR L"Sequence Number"
#define WIA_IPC_TIMEDELAY 5130 // 0x140a
#define WIA_IPC_TIMEDELAY_STR L"Time Delay"
#define WIA_IPS_CUR_INTENT 6146 // 0x1802
#define WIA_IPS_CUR_INTENT_STR L"Current Intent"
#define WIA_IPS_XRES 6147 // 0x1803
#define WIA_IPS_XRES_STR L"Horizontal Resolution"
#define WIA_IPS_YRES 6148 // 0x1804
#define WIA_IPS_YRES_STR L"Vertical Resolution"
#define WIA_IPS_XPOS 6149 // 0x1805
#define WIA_IPS_XPOS_STR L"Horizontal Start Position"
#define WIA_IPS_YPOS 6150 // 0x1806
#define WIA_IPS_YPOS_STR L"Vertical Start Position"
#define WIA_IPS_XEXTENT 6151 // 0x1807
#define WIA_IPS_XEXTENT_STR L"Horizontal Extent"
#define WIA_IPS_YEXTENT 6152 // 0x1808
#define WIA_IPS_YEXTENT_STR L"Vertical Extent"
#define WIA_IPS_PHOTOMETRIC_INTERP 6153 // 0x1809
#define WIA_IPS_PHOTOMETRIC_INTERP_STR L"Photometric Interpretation"
#define WIA_IPS_BRIGHTNESS 6154 // 0x180a
#define WIA_IPS_BRIGHTNESS_STR L"Brightness"
#define WIA_IPS_CONTRAST 6155 // 0x180b
#define WIA_IPS_CONTRAST_STR L"Contrast"
#define WIA_IPS_ORIENTATION 6156 // 0x180c
#define WIA_IPS_ORIENTATION_STR L"Orientation"
#define WIA_IPS_ROTATION 6157 // 0x180d
#define WIA_IPS_ROTATION_STR L"Rotation"
#define WIA_IPS_MIRROR 6158 // 0x180e
#define WIA_IPS_MIRROR_STR L"Mirror"
#define WIA_IPS_THRESHOLD 6159 // 0x180f
#define WIA_IPS_THRESHOLD_STR L"Threshold"
#define WIA_IPS_INVERT 6160 // 0x1810
#define WIA_IPS_INVERT_STR L"Invert"
#define WIA_IPS_WARM_UP_TIME 6161 // 0x1811
#define WIA_IPS_WARM_UP_TIME_STR L"Lamp Warm up Time"
#if (_WIN32_WINNT >= 0x0600)
//
// New properties, property names and values introduced in Windows Vista:
//
#define WIA_DPS_USER_NAME 3112 // 0xc28
#define WIA_DPS_USER_NAME_STR L"User Name"
#define WIA_DPS_SERVICE_ID 3113 // 0xc29
#define WIA_DPS_SERVICE_ID_STR L"Service ID"
#define WIA_DPS_DEVICE_ID 3114 // 0xc2a
#define WIA_DPS_DEVICE_ID_STR L"Device ID"
#define WIA_DPS_GLOBAL_IDENTITY 3115 // 0xc2b
#define WIA_DPS_GLOBAL_IDENTITY_STR L"Global Identity"
#define WIA_DPS_SCAN_AVAILABLE_ITEM 3116 // 0xc2c
#define WIA_DPS_SCAN_AVAILABLE_ITEM_STR L"Scan Available Item"
#define WIA_IPS_DESKEW_X 6162 // 0x1812
#define WIA_IPS_DESKEW_X_STR L"DeskewX"
#define WIA_IPS_DESKEW_Y 6163 // 0x1813
#define WIA_IPS_DESKEW_Y_STR L"DeskewY"
#define WIA_IPS_SEGMENTATION 6164 // 0x1814
#define WIA_IPS_SEGMENTATION_STR L"Segmentation"
#define WIA_SEGMENTATION_FILTER_STR L"SegmentationFilter"
#define WIA_IMAGEPROC_FILTER_STR L"ImageProcessingFilter"
#define WIA_IPS_MAX_HORIZONTAL_SIZE 6165 // 0x1815
#define WIA_IPS_MAX_HORIZONTAL_SIZE_STR L"Maximum Horizontal Scan Size"
#define WIA_IPS_MAX_VERTICAL_SIZE 6166 // 0x1816
#define WIA_IPS_MAX_VERTICAL_SIZE_STR L"Maximum Vertical Scan Size"
#define WIA_IPS_MIN_HORIZONTAL_SIZE 6167 // 0x1817
#define WIA_IPS_MIN_HORIZONTAL_SIZE_STR L"Minimum Horizontal Scan Size"
#define WIA_IPS_MIN_VERTICAL_SIZE 6168 // 0x1818
#define WIA_IPS_MIN_VERTICAL_SIZE_STR L"Minimum Vertical Scan Size"
#define WIA_IPS_TRANSFER_CAPABILITIES 6169 // 0x1819
#define WIA_IPS_TRANSFER_CAPABILITIES_STR L"Transfer Capabilities"
#define WIA_IPS_SHEET_FEEDER_REGISTRATION 3078 // 0xc06
#define WIA_IPS_SHEET_FEEDER_REGISTRATION_STR L"Sheet Feeder Registration"
#define WIA_IPS_DOCUMENT_HANDLING_SELECT 3088 // 0xc10
#define WIA_IPS_DOCUMENT_HANDLING_SELECT_STR L"Document Handling Select"
#define WIA_IPS_OPTICAL_XRES 3090 // 0xc12
#define WIA_IPS_OPTICAL_XRES_STR L"Horizontal Optical Resolution"
#define WIA_IPS_OPTICAL_YRES 3091 // 0xc13
#define WIA_IPS_OPTICAL_YRES_STR L"Vertical Optical Resolution"
#define WIA_IPS_PAGES 3096 // 0xc18
#define WIA_IPS_PAGES_STR L"Pages"
#define WIA_IPS_PAGE_SIZE 3097 // 0xc19
#define WIA_IPS_PAGE_SIZE_STR L"Page Size"
#define WIA_IPS_PAGE_WIDTH 3098 // 0xc1a
#define WIA_IPS_PAGE_WIDTH_STR L"Page Width"
#define WIA_IPS_PAGE_HEIGHT 3099 // 0xc1b
#define WIA_IPS_PAGE_HEIGHT_STR L"Page Height"
#define WIA_IPS_PREVIEW 3100 // 0xc1c
#define WIA_IPS_PREVIEW_STR L"Preview"
#define WIA_IPS_SHOW_PREVIEW_CONTROL 3103 // 0xc1f
#define WIA_IPS_SHOW_PREVIEW_CONTROL_STR L"Show preview control"
#define WIA_IPS_FILM_SCAN_MODE 3104 // 0xc20
#define WIA_IPS_FILM_SCAN_MODE_STR L"Film Scan Mode"
#define WIA_IPS_LAMP 3105 // 0xc21
#define WIA_IPS_LAMP_STR L"Lamp"
#define WIA_IPS_LAMP_AUTO_OFF 3106 // 0xc22
#define WIA_IPS_LAMP_AUTO_OFF_STR L"Lamp Auto Off"
#define WIA_IPS_AUTO_DESKEW 3107 // 0xc23
#define WIA_IPS_AUTO_DESKEW_STR L"Automatic Deskew"
#define WIA_IPS_SUPPORTS_CHILD_ITEM_CREATION 3108 // 0xc24
#define WIA_IPS_SUPPORTS_CHILD_ITEM_CREATION_STR L"Supports Child Item Creation"
#define WIA_IPS_XSCALING 3109 // 0xc25
#define WIA_IPS_XSCALING_STR L"Horizontal Scaling"
#define WIA_IPS_YSCALING 3110 // 0xc26
#define WIA_IPS_YSCALING_STR L"Vertical Scaling"
#define WIA_IPS_PREVIEW_TYPE 3111 // 0xc27
#define WIA_IPS_PREVIEW_TYPE_STR L"Preview Type"
#define WIA_IPA_ITEM_CATEGORY 4125 // 0x101d
#define WIA_IPA_ITEM_CATEGORY_STR L"Item Category"
#define WIA_IPA_UPLOAD_ITEM_SIZE 4126 // 0x101e
#define WIA_IPA_UPLOAD_ITEM_SIZE_STR L"Upload Item Size"
#define WIA_IPA_ITEMS_STORED 4127 // 0x101f
#define WIA_IPA_ITEMS_STORED_STR L"Items Stored"
#define WIA_IPA_RAW_BITS_PER_CHANNEL 4128 // 0x1020
#define WIA_IPA_RAW_BITS_PER_CHANNEL_STR L"Raw Bits Per Channel"
#define WIA_IPS_FILM_NODE_NAME 4129 // 0x1021
#define WIA_IPS_FILM_NODE_NAME_STR L"Film Node Name"
//
// WIA_IPA_ITEM_CATEGORY constants
//
DEFINE_GUID(WIA_CATEGORY_FINISHED_FILE,0xff2b77ca, 0xcf84, 0x432b, 0xa7, 0x35, 0x3a, 0x13, 0x0d, 0xde, 0x2a, 0x88);
DEFINE_GUID(WIA_CATEGORY_FLATBED, 0xfb607b1f, 0x43f3, 0x488b, 0x85, 0x5b, 0xfb, 0x70, 0x3e, 0xc3, 0x42, 0xa6);
DEFINE_GUID(WIA_CATEGORY_FEEDER, 0xfe131934, 0xf84c, 0x42ad, 0x8d, 0xa4, 0x61, 0x29, 0xcd, 0xdd, 0x72, 0x88);
DEFINE_GUID(WIA_CATEGORY_FILM, 0xfcf65be7, 0x3ce3, 0x4473, 0xaf, 0x85, 0xf5, 0xd3, 0x7d, 0x21, 0xb6, 0x8a);
DEFINE_GUID(WIA_CATEGORY_ROOT, 0xf193526f, 0x59b8, 0x4a26, 0x98, 0x88, 0xe1, 0x6e, 0x4f, 0x97, 0xce, 0x10);
DEFINE_GUID(WIA_CATEGORY_FOLDER, 0xc692a446, 0x6f5a, 0x481d, 0x85, 0xbb, 0x92, 0xe2, 0xe8, 0x6f, 0xd3, 0xa);
DEFINE_GUID(WIA_CATEGORY_FEEDER_FRONT, 0x4823175c, 0x3b28, 0x487b, 0xa7, 0xe6, 0xee, 0xbc, 0x17, 0x61, 0x4f, 0xd1);
DEFINE_GUID(WIA_CATEGORY_FEEDER_BACK, 0x61ca74d4, 0x39db, 0x42aa, 0x89, 0xb1, 0x8c, 0x19, 0xc9, 0xcd, 0x4c, 0x23);
DEFINE_GUID(WIA_CATEGORY_AUTO, 0xdefe5fd8, 0x6c97, 0x4dde, 0xb1, 0x1e, 0xcb, 0x50, 0x9b, 0x27, 0x0e, 0x11);
//
// GUID for Default Segmentation Filter
//
DEFINE_GUID(CLSID_WiaDefaultSegFilter, 0xD4F4D30B, 0x0B29, 0x4508, 0x89, 0x22, 0x0C, 0x57, 0x97, 0xD4, 0x27, 0x65);
//
// WIA_IPS_TRANSFER_CAPABILITIES flags:
//
#define WIA_TRANSFER_CHILDREN_SINGLE_SCAN 0x00000001
//
// WIA_IPS_SEGMENTATION_FILTER constants
//
#define WIA_USE_SEGMENTATION_FILTER 0
#define WIA_DONT_USE_SEGMENTATION_FILTER 1
//
// WIA_IPS_FILM_SCAN_MODE constants
//
#define WIA_FILM_COLOR_SLIDE 0
#define WIA_FILM_COLOR_NEGATIVE 1
#define WIA_FILM_BW_NEGATIVE 2
//
// WIA_IPS_LAMP constants
//
#define WIA_LAMP_ON 0
#define WIA_LAMP_OFF 1
//
// WIA_IPS_AUTO_DESKEW constants:
//
#define WIA_AUTO_DESKEW_ON 0
#define WIA_AUTO_DESKEW_OFF 1
//
// WIA_IPS_PREVIEW_TYPE constants:
//
#define WIA_ADVANCED_PREVIEW 0
#define WIA_BASIC_PREVIEW 1
//
// WIA Raw Format header:
//
typedef struct _WIA_RAW_HEADER
{
DWORD Tag;
DWORD Version;
DWORD HeaderSize;
DWORD XRes;
DWORD YRes;
DWORD XExtent;
DWORD YExtent;
DWORD BytesPerLine;
DWORD BitsPerPixel;
DWORD ChannelsPerPixel;
DWORD DataType;
BYTE BitsPerChannel[8];
DWORD Compression;
DWORD PhotometricInterp;
DWORD LineOrder;
DWORD RawDataOffset;
DWORD RawDataSize;
DWORD PaletteOffset;
DWORD PaletteSize;
} WIA_RAW_HEADER;
typedef struct _WIA_RAW_HEADER *PWIA_RAW_HEADER;
#endif //#if (_WIN32_WINNT >= 0x0600)
//
// Use the WIA property offsets to define private WIA properties.
//
// Example: (Creating a private WIA property)
//
// #define WIA_THE_PROP (WIA_PRIVATE_DEVPROP + 1000)
// #define WIA_THE_PROP_STR L"The Property")
//
//
// Private property offset constants
//
#define WIA_PRIVATE_DEVPROP 38914 // offset for private device (root) item properties
#define WIA_PRIVATE_ITEMPROP 71682 // offset for private item properties
//
// WIA image format constants
//
DEFINE_GUID(WiaImgFmt_UNDEFINED,0xb96b3ca9,0x0728,0x11d3,0x9d,0x7b,0x00,0x00,0xf8,0x1e,0xf3,0x2e);
DEFINE_GUID(WiaImgFmt_RAWRGB, 0xbca48b55,0xf272,0x4371,0xb0,0xf1,0x4a,0x15,0x0d,0x05,0x7b,0xb4);
DEFINE_GUID(WiaImgFmt_MEMORYBMP,0xb96b3caa,0x0728,0x11d3,0x9d,0x7b,0x00,0x00,0xf8,0x1e,0xf3,0x2e);
DEFINE_GUID(WiaImgFmt_BMP, 0xb96b3cab,0x0728,0x11d3,0x9d,0x7b,0x00,0x00,0xf8,0x1e,0xf3,0x2e);
DEFINE_GUID(WiaImgFmt_EMF, 0xb96b3cac,0x0728,0x11d3,0x9d,0x7b,0x00,0x00,0xf8,0x1e,0xf3,0x2e);
DEFINE_GUID(WiaImgFmt_WMF, 0xb96b3cad,0x0728,0x11d3,0x9d,0x7b,0x00,0x00,0xf8,0x1e,0xf3,0x2e);
DEFINE_GUID(WiaImgFmt_JPEG, 0xb96b3cae,0x0728,0x11d3,0x9d,0x7b,0x00,0x00,0xf8,0x1e,0xf3,0x2e);
DEFINE_GUID(WiaImgFmt_PNG, 0xb96b3caf,0x0728,0x11d3,0x9d,0x7b,0x00,0x00,0xf8,0x1e,0xf3,0x2e);
DEFINE_GUID(WiaImgFmt_GIF, 0xb96b3cb0,0x0728,0x11d3,0x9d,0x7b,0x00,0x00,0xf8,0x1e,0xf3,0x2e);
DEFINE_GUID(WiaImgFmt_TIFF, 0xb96b3cb1,0x0728,0x11d3,0x9d,0x7b,0x00,0x00,0xf8,0x1e,0xf3,0x2e);
DEFINE_GUID(WiaImgFmt_EXIF, 0xb96b3cb2,0x0728,0x11d3,0x9d,0x7b,0x00,0x00,0xf8,0x1e,0xf3,0x2e);
DEFINE_GUID(WiaImgFmt_PHOTOCD, 0xb96b3cb3,0x0728,0x11d3,0x9d,0x7b,0x00,0x00,0xf8,0x1e,0xf3,0x2e);
DEFINE_GUID(WiaImgFmt_FLASHPIX, 0xb96b3cb4,0x0728,0x11d3,0x9d,0x7b,0x00,0x00,0xf8,0x1e,0xf3,0x2e);
DEFINE_GUID(WiaImgFmt_ICO, 0xb96b3cb5,0x0728,0x11d3,0x9d,0x7b,0x00,0x00,0xf8,0x1e,0xf3,0x2e);
DEFINE_GUID(WiaImgFmt_CIFF, 0x9821a8ab,0x3a7e,0x4215,0x94,0xe0,0xd2,0x7a,0x46,0x0c,0x03,0xb2);
DEFINE_GUID(WiaImgFmt_PICT, 0xa6bc85d8,0x6b3e,0x40ee,0xa9,0x5c,0x25,0xd4,0x82,0xe4,0x1a,0xdc);
DEFINE_GUID(WiaImgFmt_JPEG2K, 0x344ee2b2,0x39db,0x4dde,0x81,0x73,0xc4,0xb7,0x5f,0x8f,0x1e,0x49);
DEFINE_GUID(WiaImgFmt_JPEG2KX, 0x43e14614,0xc80a,0x4850,0xba,0xf3,0x4b,0x15,0x2d,0xc8,0xda,0x27);
#if (_WIN32_WINNT >= 0x0600)
DEFINE_GUID(WiaImgFmt_RAW, 0x6f120719,0xf1a8,0x4e07,0x9a,0xde,0x9b,0x64,0xc6,0x3a,0x3d,0xcc);
DEFINE_GUID(WiaImgFmt_JBIG, 0x41e8dd92,0x2f0a,0x43d4,0x86,0x36,0xf1,0x61,0x4b,0xa1,0x1e,0x46);
#endif //#if (_WIN32_WINNT >= 0x0600)
//
// WIA document format constants
//
DEFINE_GUID(WiaImgFmt_RTF, 0x573dd6a3,0x4834,0x432d,0xa9,0xb5,0xe1,0x98,0xdd,0x9e,0x89,0x0d);
DEFINE_GUID(WiaImgFmt_XML, 0xb9171457,0xdac8,0x4884,0xb3,0x93,0x15,0xb4,0x71,0xd5,0xf0,0x7e);
DEFINE_GUID(WiaImgFmt_HTML, 0xc99a4e62,0x99de,0x4a94,0xac,0xca,0x71,0x95,0x6a,0xc2,0x97,0x7d);
DEFINE_GUID(WiaImgFmt_TXT, 0xfafd4d82,0x723f,0x421f,0x93,0x18,0x30,0x50,0x1a,0xc4,0x4b,0x59);
#if (_WIN32_WINNT >= 0x0600)
DEFINE_GUID(WiaImgFmt_PDFA, 0x9980bd5b,0x3463,0x43c7,0xbd,0xca,0x3c,0xaa,0x14,0x6f,0x22,0x9f);
DEFINE_GUID(WiaImgFmt_XPS, 0x700b4a0f,0x2011,0x411c,0xb4,0x30,0xd1,0xe0,0xb2,0xe1,0x0b,0x28);
#endif //#if (_WIN32_WINNT >= 0x0600)
//
// WIA video format constants
//
DEFINE_GUID(WiaImgFmt_MPG, 0xecd757e4,0xd2ec,0x4f57,0x95,0x5d,0xbc,0xf8,0xa9,0x7c,0x4e,0x52);
DEFINE_GUID(WiaImgFmt_AVI, 0x32f8ca14,0x087c,0x4908,0xb7,0xc4,0x67,0x57,0xfe,0x7e,0x90,0xab);
//
// WIA audio format constants
//
DEFINE_GUID(WiaAudFmt_WAV, 0xf818e146,0x07af,0x40ff,0xae,0x55,0xbe,0x8f,0x2c,0x06,0x5d,0xbe);
DEFINE_GUID(WiaAudFmt_MP3, 0x0fbc71fb,0x43bf,0x49f2,0x91,0x90,0xe6,0xfe,0xcf,0xf3,0x7e,0x54);
DEFINE_GUID(WiaAudFmt_AIFF, 0x66e2bf4f,0xb6fc,0x443f,0x94,0xc8,0x2f,0x33,0xc8,0xa6,0x5a,0xaf);
DEFINE_GUID(WiaAudFmt_WMA, 0xd61d6413,0x8bc2,0x438f,0x93,0xad,0x21,0xbd,0x48,0x4d,0xb6,0xa1);
//
// WIA misc format constants
//
DEFINE_GUID(WiaImgFmt_ASF, 0x8d948ee9,0xd0aa,0x4a12,0x9d,0x9a,0x9c,0xc5,0xde,0x36,0x19,0x9b);
DEFINE_GUID(WiaImgFmt_SCRIPT, 0xfe7d6c53,0x2dac,0x446a,0xb0,0xbd,0xd7,0x3e,0x21,0xe9,0x24,0xc9);
DEFINE_GUID(WiaImgFmt_EXEC, 0x485da097,0x141e,0x4aa5,0xbb,0x3b,0xa5,0x61,0x8d,0x95,0xd0,0x2b);
DEFINE_GUID(WiaImgFmt_UNICODE16,0x1b7639b6,0x6357,0x47d1,0x9a,0x07,0x12,0x45,0x2d,0xc0,0x73,0xe9);
DEFINE_GUID(WiaImgFmt_DPOF, 0x369eeeab,0xa0e8,0x45ca,0x86,0xa6,0xa8,0x3c,0xe5,0x69,0x7e,0x28);
//
// WIA event constants
//
DEFINE_GUID(WIA_EVENT_DEVICE_DISCONNECTED,0x143e4e83,0x6497,0x11d2,0xa2,0x31,0x00,0xc0,0x4f,0xa3,0x18,0x09);
DEFINE_GUID(WIA_EVENT_DEVICE_CONNECTED, 0xa28bbade,0x64b6,0x11d2,0xa2,0x31,0x00,0xc0,0x4f,0xa3,0x18,0x09);
DEFINE_GUID(WIA_EVENT_ITEM_DELETED, 0x1d22a559,0xe14f,0x11d2,0xb3,0x26,0x00,0xc0,0x4f,0x68,0xce,0x61);
DEFINE_GUID(WIA_EVENT_ITEM_CREATED, 0x4c8f4ef5,0xe14f,0x11d2,0xb3,0x26,0x00,0xc0,0x4f,0x68,0xce,0x61);
DEFINE_GUID(WIA_EVENT_TREE_UPDATED, 0xc9859b91,0x4ab2,0x4cd6,0xa1,0xfc,0x58,0x2e,0xec,0x55,0xe5,0x85);
DEFINE_GUID(WIA_EVENT_VOLUME_INSERT, 0x9638bbfd,0xd1bd,0x11d2,0xb3,0x1f,0x00,0xc0,0x4f,0x68,0xce,0x61);
DEFINE_GUID(WIA_EVENT_SCAN_IMAGE, 0xa6c5a715,0x8c6e,0x11d2,0x97,0x7a,0x00,0x00,0xf8,0x7a,0x92,0x6f);
DEFINE_GUID(WIA_EVENT_SCAN_PRINT_IMAGE, 0xb441f425,0x8c6e,0x11d2,0x97,0x7a,0x00,0x00,0xf8,0x7a,0x92,0x6f);
DEFINE_GUID(WIA_EVENT_SCAN_FAX_IMAGE, 0xc00eb793,0x8c6e,0x11d2,0x97,0x7a,0x00,0x00,0xf8,0x7a,0x92,0x6f);
DEFINE_GUID(WIA_EVENT_SCAN_OCR_IMAGE, 0x9d095b89,0x37d6,0x4877,0xaf,0xed,0x62,0xa2,0x97,0xdc,0x6d,0xbe);
DEFINE_GUID(WIA_EVENT_SCAN_EMAIL_IMAGE, 0xc686dcee,0x54f2,0x419e,0x9a,0x27,0x2f,0xc7,0xf2,0xe9,0x8f,0x9e);
DEFINE_GUID(WIA_EVENT_SCAN_FILM_IMAGE, 0x9b2b662c,0x6185,0x438c,0xb6,0x8b,0xe3,0x9e,0xe2,0x5e,0x71,0xcb);
DEFINE_GUID(WIA_EVENT_SCAN_IMAGE2, 0xfc4767c1,0xc8b3,0x48a2,0x9c,0xfa,0x2e,0x90,0xcb,0x3d,0x35,0x90);
DEFINE_GUID(WIA_EVENT_SCAN_IMAGE3, 0x154e27be,0xb617,0x4653,0xac,0xc5,0x0f,0xd7,0xbd,0x4c,0x65,0xce);
DEFINE_GUID(WIA_EVENT_SCAN_IMAGE4, 0xa65b704a,0x7f3c,0x4447,0xa7,0x5d,0x8a,0x26,0xdf,0xca,0x1f,0xdf);
DEFINE_GUID(WIA_EVENT_STORAGE_CREATED, 0x353308b2,0xfe73,0x46c8,0x89,0x5e,0xfa,0x45,0x51,0xcc,0xc8,0x5a);
DEFINE_GUID(WIA_EVENT_STORAGE_DELETED, 0x5e41e75e,0x9390,0x44c5,0x9a,0x51,0xe4,0x70,0x19,0xe3,0x90,0xcf);
DEFINE_GUID(WIA_EVENT_STI_PROXY, 0xd711f81f,0x1f0d,0x422d,0x86,0x41,0x92,0x7d,0x1b,0x93,0xe5,0xe5);
DEFINE_GUID(WIA_EVENT_CANCEL_IO, 0xc860f7b8,0x9ccd,0x41ea,0xbb,0xbf,0x4d,0xd0,0x9c,0x5b,0x17,0x95);
//
// Power management event GUIDs, sent by the WIA service to drivers
//
DEFINE_GUID(WIA_EVENT_POWER_SUSPEND, 0xa0922ff9,0xc3b4,0x411c,0x9e,0x29,0x03,0xa6,0x69,0x93,0xd2,0xbe);
DEFINE_GUID(WIA_EVENT_POWER_RESUME, 0x618f153e,0xf686,0x4350,0x96,0x34,0x41,0x15,0xa3,0x04,0x83,0x0c);
//
// No action handler and prompt handler
//
DEFINE_GUID(WIA_EVENT_HANDLER_NO_ACTION, 0xe0372b7d,0xe115,0x4525,0xbc,0x55,0xb6,0x29,0xe6,0x8c,0x74,0x5a);
DEFINE_GUID(WIA_EVENT_HANDLER_PROMPT, 0x5f4baad0,0x4d59,0x4fcd,0xb2,0x13,0x78,0x3c,0xe7,0xa9,0x2f,0x22);
//
// WIA command constants
//
DEFINE_GUID(WIA_CMD_SYNCHRONIZE, 0x9b26b7b2,0xacad,0x11d2,0xa0,0x93,0x00,0xc0,0x4f,0x72,0xdc,0x3c);
DEFINE_GUID(WIA_CMD_TAKE_PICTURE, 0xaf933cac,0xacad,0x11d2,0xa0,0x93,0x00,0xc0,0x4f,0x72,0xdc,0x3c);
DEFINE_GUID(WIA_CMD_DELETE_ALL_ITEMS, 0xe208c170,0xacad,0x11d2,0xa0,0x93,0x00,0xc0,0x4f,0x72,0xdc,0x3c);
DEFINE_GUID(WIA_CMD_CHANGE_DOCUMENT, 0x04e725b0,0xacae,0x11d2,0xa0,0x93,0x00,0xc0,0x4f,0x72,0xdc,0x3c);
DEFINE_GUID(WIA_CMD_UNLOAD_DOCUMENT, 0x1f3b3d8e,0xacae,0x11d2,0xa0,0x93,0x00,0xc0,0x4f,0x72,0xdc,0x3c);
DEFINE_GUID(WIA_CMD_DIAGNOSTIC, 0x10ff52f5,0xde04,0x4cf0,0xa5,0xad,0x69,0x1f,0x8d,0xce,0x01,0x41);
DEFINE_GUID(WIA_CMD_FORMAT, 0xc3a693aa,0xf788,0x4d34,0xa5,0xb0,0xbe,0x71,0x90,0x75,0x9a,0x24);
//
// WIA command constants used for debugging only
//
DEFINE_GUID(WIA_CMD_DELETE_DEVICE_TREE, 0x73815942,0xdbea,0x11d2,0x84,0x16,0x00,0xc0,0x4f,0xa3,0x61,0x45);
DEFINE_GUID(WIA_CMD_BUILD_DEVICE_TREE, 0x9cba5ce0,0xdbea,0x11d2,0x84,0x16,0x00,0xc0,0x4f,0xa3,0x61,0x45);
#define FACILITY_WIA 33
#define BASE_VAL_WIA_ERROR 0x00000000
#define BASE_VAL_WIA_SUCCESS 0x00000000
#define WIA_ERROR_GENERAL_ERROR MAKE_HRESULT(SEVERITY_ERROR, FACILITY_WIA, 1)
#define WIA_ERROR_PAPER_JAM MAKE_HRESULT(SEVERITY_ERROR, FACILITY_WIA, 2)
#define WIA_ERROR_PAPER_EMPTY MAKE_HRESULT(SEVERITY_ERROR, FACILITY_WIA, 3)
#define WIA_ERROR_PAPER_PROBLEM MAKE_HRESULT(SEVERITY_ERROR, FACILITY_WIA, 4)
#define WIA_ERROR_OFFLINE MAKE_HRESULT(SEVERITY_ERROR, FACILITY_WIA, 5)
#define WIA_ERROR_BUSY MAKE_HRESULT(SEVERITY_ERROR, FACILITY_WIA, 6)
#define WIA_ERROR_WARMING_UP MAKE_HRESULT(SEVERITY_ERROR, FACILITY_WIA, 7)
#define WIA_ERROR_USER_INTERVENTION MAKE_HRESULT(SEVERITY_ERROR, FACILITY_WIA, 8)
#define WIA_ERROR_ITEM_DELETED MAKE_HRESULT(SEVERITY_ERROR, FACILITY_WIA, 9)
#define WIA_ERROR_DEVICE_COMMUNICATION MAKE_HRESULT(SEVERITY_ERROR, FACILITY_WIA, 10)
#define WIA_ERROR_INVALID_COMMAND MAKE_HRESULT(SEVERITY_ERROR, FACILITY_WIA, 11)
#define WIA_ERROR_INCORRECT_HARDWARE_SETTING MAKE_HRESULT(SEVERITY_ERROR, FACILITY_WIA, 12)
#define WIA_ERROR_DEVICE_LOCKED MAKE_HRESULT(SEVERITY_ERROR, FACILITY_WIA, 13)
#define WIA_ERROR_EXCEPTION_IN_DRIVER MAKE_HRESULT(SEVERITY_ERROR, FACILITY_WIA, 14)
#define WIA_ERROR_INVALID_DRIVER_RESPONSE MAKE_HRESULT(SEVERITY_ERROR, FACILITY_WIA, 15)
#define WIA_ERROR_COVER_OPEN MAKE_HRESULT(SEVERITY_ERROR, FACILITY_WIA, 16)
#define WIA_ERROR_LAMP_OFF MAKE_HRESULT(SEVERITY_ERROR, FACILITY_WIA, 17)
#define WIA_ERROR_DESTINATION MAKE_HRESULT(SEVERITY_ERROR, FACILITY_WIA, 18)
#define WIA_ERROR_NETWORK_RESERVATION_FAILED MAKE_HRESULT(SEVERITY_ERROR, FACILITY_WIA, 19)
#define WIA_STATUS_END_OF_MEDIA MAKE_HRESULT(SEVERITY_SUCCESS, FACILITY_WIA, 1)
//
// Definitions for errors and status codes passed to IWiaDataTransfer::BandedDataCallback as the lReason parameter.
// These codes are in addition to the errors defined above; in some cases the SEVERITY_SUCCESS version of
// an error is meant to replace the SEVERITY_ERROR version listed above.
//
#define WIA_STATUS_WARMING_UP MAKE_HRESULT(SEVERITY_SUCCESS, FACILITY_WIA, 2)
#define WIA_STATUS_CALIBRATING MAKE_HRESULT(SEVERITY_SUCCESS, FACILITY_WIA, 3)
#define WIA_STATUS_RESERVING_NETWORK_DEVICE MAKE_HRESULT(SEVERITY_SUCCESS, FACILITY_WIA, 6)
#define WIA_STATUS_NETWORK_DEVICE_RESERVED MAKE_HRESULT(SEVERITY_SUCCESS, FACILITY_WIA, 7)
#define WIA_STATUS_CLEAR MAKE_HRESULT(SEVERITY_SUCCESS, FACILITY_WIA, 8)
#define WIA_STATUS_SKIP_ITEM MAKE_HRESULT(SEVERITY_SUCCESS, FACILITY_WIA, 9)
#define WIA_STATUS_NOT_HANDLED MAKE_HRESULT(SEVERITY_SUCCESS, FACILITY_WIA, 10)
//
// The value is returned by Scansetting.dll when the user chooses to change the scanner in scandialog
//
#define WIA_S_CHANGE_DEVICE MAKE_HRESULT(SEVERITY_SUCCESS, FACILITY_WIA, 11)
//
// SelectDeviceDlg and SelectDeviceDlgID status code when there are no devices available
//
#define WIA_S_NO_DEVICE_AVAILABLE MAKE_HRESULT(SEVERITY_ERROR, FACILITY_WIA, 21)
//
// SelectDeviceDlg and GetImageDlg flag constants
//
#define WIA_SELECT_DEVICE_NODEFAULT 0x00000001
//
// DeviceDlg and GetImageDlg flags constants
//
#define WIA_DEVICE_DIALOG_SINGLE_IMAGE 0x00000002 // Only allow one image to be selected
#define WIA_DEVICE_DIALOG_USE_COMMON_UI 0x00000004 // Give preference to the system-provided UI, if available
//
// RegisterEventCallbackInterface and RegisterEventCallbackCLSID flag constants
//
#define WIA_REGISTER_EVENT_CALLBACK 0x00000001
#define WIA_UNREGISTER_EVENT_CALLBACK 0x00000002
#define WIA_SET_DEFAULT_HANDLER 0x00000004
//
// WIA event type constants
//
#define WIA_NOTIFICATION_EVENT 0x00000001
#define WIA_ACTION_EVENT 0x00000002
//
// Additional WIA raw format constants
//
#define WIA_LINE_ORDER_TOP_TO_BOTTOM 0x00000001
#define WIA_LINE_ORDER_BOTTOM_TO_TOP 0x00000002
//
// WIA event persistent handler flag constants
//
#define WIA_IS_DEFAULT_HANDLER 0x00000001
//
// WIA connected and disconnected event description strings
//
#define WIA_EVENT_DEVICE_DISCONNECTED_STR L"Device Disconnected"
#define WIA_EVENT_DEVICE_CONNECTED_STR L"Device Connected"
//
// WIA event and command icon resource identifier constants
//
// Events : -1000 to -1499 (Standard), -1500 to -1999 (Custom)
// Commands : -2000 to -2499 (Standard), -2500 to -2999 (Custom)
//
#define WIA_ICON_DEVICE_DISCONNECTED (L"sti.dll,-1001")
#define WIA_ICON_DEVICE_CONNECTED (L"sti.dll,-1001")
#define WIA_ICON_ITEM_DELETED (L"sti.dll,-1001")
#define WIA_ICON_ITEM_CREATED (L"sti.dll,-1001")
#define WIA_ICON_TREE_UPDATED (L"sti.dll,-1001")
#define WIA_ICON_VOLUME_INSERT (L"sti.dll,-1001")
#define WIA_ICON_SCAN_BUTTON_PRESS (L"sti.dll,-1001")
#define WIA_ICON_SYNCHRONIZE (L"sti.dll,-2000")
#define WIA_ICON_TAKE_PICTURE (L"sti.dll,-2001")
#define WIA_ICON_DELETE_ALL_ITEMS (L"sti.dll,-2002")
#define WIA_ICON_CHANGE_DOCUMENT (L"sti.dll,-2003")
#define WIA_ICON_UNLOAD_DOCUMENT (L"sti.dll,-2004")
#define WIA_ICON_DELETE_DEVICE_TREE (L"sti.dll,-2005")
#define WIA_ICON_BUILD_DEVICE_TREE (L"sti.dll,-2006")
//
// WIA TYMED constants
//
#define TYMED_CALLBACK 128
#define TYMED_MULTIPAGE_FILE 256
#define TYMED_MULTIPAGE_CALLBACK 512
//
// IWiaDataCallback and IWiaMiniDrvCallBack message ID constants
//
#define IT_MSG_DATA_HEADER 0x0001
#define IT_MSG_DATA 0x0002
#define IT_MSG_STATUS 0x0003
#define IT_MSG_TERMINATION 0x0004
#define IT_MSG_NEW_PAGE 0x0005
#define IT_MSG_FILE_PREVIEW_DATA 0x0006
#define IT_MSG_FILE_PREVIEW_DATA_HEADER 0x0007
//
// IWiaDataCallback and IWiaMiniDrvCallBack status flag constants
//
#define IT_STATUS_TRANSFER_FROM_DEVICE 0x0001
#define IT_STATUS_PROCESSING_DATA 0x0002
#define IT_STATUS_TRANSFER_TO_CLIENT 0x0004
#define IT_STATUS_MASK 0x0007 // any status value that doesn't
// fit the mask is an HRESULT
//
// IWiaTransfer flags
//
#define WIA_TRANSFER_ACQUIRE_CHILDREN 0x0001
//
// IWiaTransferCallback Message types
//
#define WIA_TRANSFER_MSG_STATUS 0x00001
#define WIA_TRANSFER_MSG_END_OF_STREAM 0x00002
#define WIA_TRANSFER_MSG_END_OF_TRANSFER 0x00003
#define WIA_TRANSFER_MSG_DEVICE_STATUS 0x00005
#define WIA_TRANSFER_MSG_NEW_PAGE 0x00006
//
// IWiaEventCallback code constants
//
#define WIA_MAJOR_EVENT_DEVICE_CONNECT 0x01
#define WIA_MAJOR_EVENT_DEVICE_DISCONNECT 0x02
#define WIA_MAJOR_EVENT_PICTURE_TAKEN 0x03
#define WIA_MAJOR_EVENT_PICTURE_DELETED 0x04
//
// WIA device connection status constants
//
#define WIA_DEVICE_NOT_CONNECTED 0
#define WIA_DEVICE_CONNECTED 1
//
// EnumDeviceCapabilities and drvGetCapabilities flags
//
#define WIA_DEVICE_COMMANDS 1
#define WIA_DEVICE_EVENTS 2
//
// EnumDeviceInfo Flags
//
#define WIA_DEVINFO_ENUM_ALL 0x0000000F
#define WIA_DEVINFO_ENUM_LOCAL 0x00000010
//
// WIA item type constants
//
#define WiaItemTypeFree 0x00000000
#define WiaItemTypeImage 0x00000001
#define WiaItemTypeFile 0x00000002
#define WiaItemTypeFolder 0x00000004
#define WiaItemTypeRoot 0x00000008
#define WiaItemTypeAnalyze 0x00000010
#define WiaItemTypeAudio 0x00000020
#define WiaItemTypeDevice 0x00000040
#define WiaItemTypeDeleted 0x00000080
#define WiaItemTypeDisconnected 0x00000100
#define WiaItemTypeHPanorama 0x00000200
#define WiaItemTypeVPanorama 0x00000400
#define WiaItemTypeBurst 0x00000800
#define WiaItemTypeStorage 0x00001000
#define WiaItemTypeTransfer 0x00002000
#define WiaItemTypeGenerated 0x00004000
#define WiaItemTypeHasAttachments 0x00008000
#define WiaItemTypeVideo 0x00010000
#define WiaItemTypeRemoved 0x80000000
//
// 0x00020000 has been reserved for the TWAIN compatiblity layer
// pass-through feature.
//
#if (_WIN32_WINNT >= 0x0600)
#define WiaItemTypeDocument 0x00040000
#define WiaItemTypeProgrammableDataSource 0x00080000
#define WiaItemTypeMask 0x800FFFFF
#else
#define WiaItemTypeMask 0x8003FFFF
#endif
//
// Big max device specific item context
//
#define WIA_MAX_CTX_SIZE 0x01000000
//
// WIA property access flag constants
//
#define WIA_PROP_READ 0x01
#define WIA_PROP_WRITE 0x02
#define WIA_PROP_RW (WIA_PROP_READ | WIA_PROP_WRITE)
#define WIA_PROP_SYNC_REQUIRED 0x04
#define WIA_PROP_NONE 0x08
#define WIA_PROP_RANGE 0x10
#define WIA_PROP_LIST 0x20
#define WIA_PROP_FLAG 0x40
#define WIA_PROP_CACHEABLE 0x10000
//
// IWiaItem2 CreateChildItem flag constants
//
#define COPY_PARENT_PROPERTY_VALUES 0x40000000
//
// WIA item access flag constants
//
#define WIA_ITEM_CAN_BE_DELETED 0x80
#define WIA_ITEM_READ WIA_PROP_READ
#define WIA_ITEM_WRITE WIA_PROP_WRITE
#define WIA_ITEM_RD (WIA_ITEM_READ | WIA_ITEM_CAN_BE_DELETED)
#define WIA_ITEM_RWD (WIA_ITEM_READ | WIA_ITEM_WRITE | WIA_ITEM_CAN_BE_DELETED)
//
// WIA property container constants
//
#define WIA_RANGE_MIN 0
#define WIA_RANGE_NOM 1
#define WIA_RANGE_MAX 2
#define WIA_RANGE_STEP 3
#define WIA_RANGE_NUM_ELEMS 4
#define WIA_LIST_COUNT 0
#define WIA_LIST_NOM 1
#define WIA_LIST_VALUES 2
#define WIA_LIST_NUM_ELEMS 2
#define WIA_FLAG_NOM 0
#define WIA_FLAG_VALUES 1
#define WIA_FLAG_NUM_ELEMS 2
//
// WIA property LIST container MACROS
//
#define WIA_PROP_LIST_COUNT(ppv) (((PROPVARIANT*)ppv)->cal.cElems - WIA_LIST_VALUES)
#define WIA_PROP_LIST_VALUE(ppv, index) \\
((index > ((PROPVARIANT*) ppv)->cal.cElems - WIA_LIST_VALUES) || (index < -WIA_LIST_NOM)) ?\\
NULL : \\
(((PROPVARIANT*) ppv)->vt == VT_UI1) ? \\
((PROPVARIANT*) ppv)->caub.pElems[WIA_LIST_VALUES + index] : \\
(((PROPVARIANT*) ppv)->vt == VT_UI2) ? \\
((PROPVARIANT*) ppv)->caui.pElems[WIA_LIST_VALUES + index] : \\
(((PROPVARIANT*) ppv)->vt == VT_UI4) ? \\
((PROPVARIANT*) ppv)->caul.pElems[WIA_LIST_VALUES + index] : \\
(((PROPVARIANT*) ppv)->vt == VT_I2) ? \\
((PROPVARIANT*) ppv)->cai.pElems[WIA_LIST_VALUES + index] : \\
(((PROPVARIANT*) ppv)->vt == VT_I4) ? \\
((PROPVARIANT*) ppv)->cal.pElems[WIA_LIST_VALUES + index] : \\
(((PROPVARIANT*) ppv)->vt == VT_R4) ? \\
((PROPVARIANT*) ppv)->caflt.pElems[WIA_LIST_VALUES + index] : \\
(((PROPVARIANT*) ppv)->vt == VT_R8) ? \\
((PROPVARIANT*) ppv)->cadbl.pElems[WIA_LIST_VALUES + index] : \\
(((PROPVARIANT*) ppv)->vt == VT_BSTR) ? \\
(LONG)(((PROPVARIANT*) ppv)->cabstr.pElems[WIA_LIST_VALUES + index]) : \\
NULL
//
// Microsoft defined WIA property offset constants
//
#define WIA_DIP_FIRST 2
#define WIA_IPA_FIRST 4098
#define WIA_DPF_FIRST 3330
#define WIA_IPS_FIRST 6146
#define WIA_DPS_FIRST 3074
#define WIA_IPC_FIRST 5122
#define WIA_NUM_IPC 9
#define WIA_RESERVED_FOR_NEW_PROPS 1024
//
// WIA_DPC_WHITE_BALANCE constants
//
#define WHITEBALANCE_MANUAL 1
#define WHITEBALANCE_AUTO 2
#define WHITEBALANCE_ONEPUSH_AUTO 3
#define WHITEBALANCE_DAYLIGHT 4
#define WHITEBALANCE_FLORESCENT 5
#define WHITEBALANCE_TUNGSTEN 6
#define WHITEBALANCE_FLASH 7
//
// WIA_DPC_FOCUS_MODE constants
//
#define FOCUSMODE_MANUAL 1
#define FOCUSMODE_AUTO 2
#define FOCUSMODE_MACROAUTO 3
//
// WIA_DPC_EXPOSURE_METERING_MODE constants
//
#define EXPOSUREMETERING_AVERAGE 1
#define EXPOSUREMETERING_CENTERWEIGHT 2
#define EXPOSUREMETERING_MULTISPOT 3
#define EXPOSUREMETERING_CENTERSPOT 4
//
// WIA_DPC_FLASH_MODE constants
//
#define FLASHMODE_AUTO 1
#define FLASHMODE_OFF 2
#define FLASHMODE_FILL 3
#define FLASHMODE_REDEYE_AUTO 4
#define FLASHMODE_REDEYE_FILL 5
#define FLASHMODE_EXTERNALSYNC 6
//
// WIA_DPC_EXPOSURE_MODE constants
//
#define EXPOSUREMODE_MANUAL 1
#define EXPOSUREMODE_AUTO 2
#define EXPOSUREMODE_APERTURE_PRIORITY 3
#define EXPOSUREMODE_SHUTTER_PRIORITY 4
#define EXPOSUREMODE_PROGRAM_CREATIVE 5
#define EXPOSUREMODE_PROGRAM_ACTION 6
#define EXPOSUREMODE_PORTRAIT 7
//
// WIA_DPC_CAPTURE_MODE constants
//
#define CAPTUREMODE_NORMAL 1
#define CAPTUREMODE_BURST 2
#define CAPTUREMODE_TIMELAPSE 3
//
// WIA_DPC_EFFECT_MODE constants
//
#define EFFECTMODE_STANDARD 1
#define EFFECTMODE_BW 2
#define EFFECTMODE_SEPIA 3
//
// WIA_DPC_FOCUS_METERING_MODE constants
//
#define FOCUSMETERING_CENTERSPOT 1
#define FOCUSMETERING_MULTISPOT 2
//
// WIA_DPC_POWER_MODE constants
//
#define POWERMODE_LINE 1
#define POWERMODE_BATTERY 2
//
// WIA_DPS_SHEET_FEEDER_REGISTRATION and
// WIA_DPS_HORIZONTAL_BED_REGISTRATION constants
//
#define LEFT_JUSTIFIED 0
#define CENTERED 1
#define RIGHT_JUSTIFIED 2
//
// WIA_DPS_VERTICAL_BED_REGISTRATION constants
//
#define TOP_JUSTIFIED 0
#define CENTERED 1
#define BOTTOM_JUSTIFIED 2
//
// WIA_IPS_ORIENTATION and WIA_IPS_ROTATION constants
//
#define PORTRAIT 0
#define LANSCAPE 1
#if (_WIN32_WINNT >= 0x0600)
#define LANDSCAPE LANSCAPE
#endif
#define ROT180 2
#define ROT270 3
//
// WIA_IPS_MIRROR flags
//
#define MIRRORED 0x01
//
// WIA_DPS_DOCUMENT_HANDLING_CAPABILITIES flags
//
#define FEED 0x01
#define FLAT 0x02
#define DUP 0x04
#define DETECT_FLAT 0x08
#define DETECT_SCAN 0x10
#define DETECT_FEED 0x20
#define DETECT_DUP 0x40
#define DETECT_FEED_AVAIL 0x80
#define DETECT_DUP_AVAIL 0x100
#if (_WIN32_WINNT >= 0x0600)
#define FILM_TPA 0x200
#define DETECT_FILM_TPA 0x400
#define STOR 0x800
#define DETECT_STOR 0x1000
#define ADVANCED_DUP 0x2000
#define AUTO_SOURCE 0x8000
#endif
//
// WIA_DPS_DOCUMENT_HANDLING_STATUS flags
//
#define FEED_READY 0x01
#define FLAT_READY 0x02
#define DUP_READY 0x04
#define FLAT_COVER_UP 0x08
#define PATH_COVER_UP 0x10
#define PAPER_JAM 0x20
#if (_WIN32_WINNT >= 0x0600)
#define FILM_TPA_READY 0x40
#define STORAGE_READY 0x80
#define STORAGE_FULL 0x100
#define MULTIPLE_FEED 0x200
#define DEVICE_ATTENTION 0x400
#define LAMP_ERR 0x800
#endif
//
// WIA_DPS_DOCUMENT_HANDLING_SELECT flags
//
#define FEEDER 0x001
#define FLATBED 0x002
#define DUPLEX 0x004
#define FRONT_FIRST 0x008
#define BACK_FIRST 0x010
#define FRONT_ONLY 0x020
#define BACK_ONLY 0x040
#define NEXT_PAGE 0x080
#define PREFEED 0x100
#define AUTO_ADVANCE 0x200
#if (_WIN32_WINNT >= 0x0600)
//
// New WIA_IPS_DOCUMENT_HANDLING_SELECT flag
//
#define ADVANCED_DUPLEX 0x400
#endif //#if (_WIN32_WINNT >= 0x0600)
//
// WIA_DPS_TRANSPARENCY / WIA_DPS_TRANSPARENCY_STATUS flags
//
#define LIGHT_SOURCE_PRESENT_DETECT 0x01
#define LIGHT_SOURCE_PRESENT 0x02
#define LIGHT_SOURCE_DETECT_READY 0x04
#define LIGHT_SOURCE_READY 0x08
//
// WIA_DPS_TRANSPARENCY_CAPABILITIES
//
#define TRANSPARENCY_DYNAMIC_FRAME_SUPPORT 0x01
#define TRANSPARENCY_STATIC_FRAME_SUPPORT 0x02
//
// WIA_DPS_TRANSPARENCY_SELECT flags
//
#define LIGHT_SOURCE_SELECT 0x001 // currently not used
#define LIGHT_SOURCE_POSITIVE 0x002
#define LIGHT_SOURCE_NEGATIVE 0x004
//
// WIA_DPS_SCAN_AHEAD_PAGES constants
//
#define WIA_SCAN_AHEAD_ALL 0
//
// WIA_DPS_PAGES constants
//
#define ALL_PAGES 0
//
// WIA_DPS_PREVIEW constants
//
#define WIA_FINAL_SCAN 0
#define WIA_PREVIEW_SCAN 1
//
// WIA_DPS_SHOW_PREVIEW_CONTROL constants
//
#define WIA_SHOW_PREVIEW_CONTROL 0
#define WIA_DONT_SHOW_PREVIEW_CONTROL 1
//
// Predefined strings for WIA_DPS_ENDORSER_STRING
//
#define WIA_ENDORSER_TOK_DATE L"$DATE$"
#define WIA_ENDORSER_TOK_TIME L"$TIME$"
#define WIA_ENDORSER_TOK_PAGE_COUNT L"$PAGE_COUNT$"
#define WIA_ENDORSER_TOK_DAY L"$DAY$"
#define WIA_ENDORSER_TOK_MONTH L"$MONTH$"
#define WIA_ENDORSER_TOK_YEAR L"$YEAR$"
//
// WIA_DPS_PAGE_SIZE/WIA_IPS_PAGE_SIZE constants
// Dimensions are defined as (WIDTH x HEIGHT) in 1/1000ths of an inch
//
#define WIA_PAGE_A4 0 // 8267 x 11692
#define WIA_PAGE_LETTER 1 // 8500 x 11000
#define WIA_PAGE_CUSTOM 2 // (current extent settings)
#define WIA_PAGE_USLEGAL 3 // 8500 x 14000
#define WIA_PAGE_USLETTER WIA_PAGE_LETTER
#define WIA_PAGE_USLEDGER 4 // 11000 x 17000
#define WIA_PAGE_USSTATEMENT 5 // 5500 x 8500
#define WIA_PAGE_BUSINESSCARD 6 // 3543 x 2165
//
// ISO A page size constants
//
#define WIA_PAGE_ISO_A0 7 // 33110 x 46811
#define WIA_PAGE_ISO_A1 8 // 23385 x 33110
#define WIA_PAGE_ISO_A2 9 // 16535 x 23385
#define WIA_PAGE_ISO_A3 10 // 11692 x 16535
#define WIA_PAGE_ISO_A4 WIA_PAGE_A4
#define WIA_PAGE_ISO_A5 11 // 5826 x 8267
#define WIA_PAGE_ISO_A6 12 // 4133 x 5826
#define WIA_PAGE_ISO_A7 13 // 2913 x 4133
#define WIA_PAGE_ISO_A8 14 // 2047 x 2913
#define WIA_PAGE_ISO_A9 15 // 1456 x 2047
#define WIA_PAGE_ISO_A10 16 // 1023 x 1456
//
// ISO B page size constants
//
#define WIA_PAGE_ISO_B0 17 // 39370 x 55669
#define WIA_PAGE_ISO_B1 18 // 27834 x 39370
#define WIA_PAGE_ISO_B2 19 // 19685 x 27834
#define WIA_PAGE_ISO_B3 20 // 13897 x 19685
#define WIA_PAGE_ISO_B4 21 // 9842 x 13897
#define WIA_PAGE_ISO_B5 22 // 6929 x 9842
#define WIA_PAGE_ISO_B6 23 // 4921 x 6929
#define WIA_PAGE_ISO_B7 24 // 3464 x 4921
#define WIA_PAGE_ISO_B8 25 // 2440 x 3464
#define WIA_PAGE_ISO_B9 26 // 1732 x 2440
#define WIA_PAGE_ISO_B10 27 // 1220 x 1732
//
// ISO C page size constants
//
#define WIA_PAGE_ISO_C0 28 // 36102 x 51062
#define WIA_PAGE_ISO_C1 29 // 25511 x 36102
#define WIA_PAGE_ISO_C2 30 // 18031 x 25511
#define WIA_PAGE_ISO_C3 31 // 12755 x 18031
#define WIA_PAGE_ISO_C4 32 // 9015 x 12755 (unfolded)
#define WIA_PAGE_ISO_C5 33 // 6377 x 9015 (folded once)
#define WIA_PAGE_ISO_C6 34 // 4488 x 6377 (folded twice)
#define WIA_PAGE_ISO_C7 35 // 3188 x 4488
#define WIA_PAGE_ISO_C8 36 // 2244 x 3188
#define WIA_PAGE_ISO_C9 37 // 1574 x 2244
#define WIA_PAGE_ISO_C10 38 // 1102 x 1574
//
// JIS B page size constants
//
#define WIA_PAGE_JIS_B0 39 // 40551 x 57322
#define WIA_PAGE_JIS_B1 40 // 28661 x 40551
#define WIA_PAGE_JIS_B2 41 // 20275 x 28661
#define WIA_PAGE_JIS_B3 42 // 14330 x 20275
#define WIA_PAGE_JIS_B4 43 // 10118 x 14330
#define WIA_PAGE_JIS_B5 44 // 7165 x 10118
#define WIA_PAGE_JIS_B6 45 // 5039 x 7165
#define WIA_PAGE_JIS_B7 46 // 3582 x 5039
#define WIA_PAGE_JIS_B8 47 // 2519 x 3582
#define WIA_PAGE_JIS_B9 48 // 1771 x 2519
#define WIA_PAGE_JIS_B10 49 // 1259 x 1771
//
// JIS A page size constants
//
#define WIA_PAGE_JIS_2A 50 // 46811 x 66220
#define WIA_PAGE_JIS_4A 51 // 66220 x 93622
//
// DIN B page size constants
//
#define WIA_PAGE_DIN_2B 52 // 55669 x 78740
#define WIA_PAGE_DIN_4B 53 // 78740 x 111338
#if (_WIN32_WINNT >= 0x0600)
//
// Additional WIA_IPS_PAGE_SIZE constants:
//
#define WIA_PAGE_AUTO 100
#define WIA_PAGE_CUSTOM_BASE 0x8000
#endif //#if (_WIN32_WINNT >= 0x0600)
//
// WIA_IPA_COMPRESSION constants
//
#define WIA_COMPRESSION_NONE 0
#define WIA_COMPRESSION_BI_RLE4 1
#define WIA_COMPRESSION_BI_RLE8 2
#define WIA_COMPRESSION_G3 3
#define WIA_COMPRESSION_G4 4
#define WIA_COMPRESSION_JPEG 5
#if (_WIN32_WINNT >= 0x0600)
#define WIA_COMPRESSION_JBIG 6
#define WIA_COMPRESSION_JPEG2K 7
#define WIA_COMPRESSION_PNG 8
#endif //#if (_WIN32_WINNT >= 0x0600)
//
// WIA_IPA_PLANAR constants
//
#define WIA_PACKED_PIXEL 0
#define WIA_PLANAR 1
//
// WIA_IPA_DATATYPE constants
//
#define WIA_DATA_THRESHOLD 0
#define WIA_DATA_DITHER 1
#define WIA_DATA_GRAYSCALE 2
#define WIA_DATA_COLOR 3
#define WIA_DATA_COLOR_THRESHOLD 4
#define WIA_DATA_COLOR_DITHER 5
#if (_WIN32_WINNT >= 0x0600)
#define WIA_DATA_RAW_RGB 6
#define WIA_DATA_RAW_BGR 7
#define WIA_DATA_RAW_YUV 8
#define WIA_DATA_RAW_YUVK 9
#define WIA_DATA_RAW_CMY 10
#define WIA_DATA_RAW_CMYK 11
#endif //#if (_WIN32_WINNT >= 0x0600)
//
// WIA_IPS_PHOTOMETRIC_INTERP constants
//
#define WIA_PHOTO_WHITE_1 0 // white is 1, black is 0
#define WIA_PHOTO_WHITE_0 1 // white is 0, black is 1
//
// WIA_IPA_SUPPRESS_PROPERTY_PAGE flags
//
#define WIA_PROPPAGE_SCANNER_ITEM_GENERAL 0x00000001
#define WIA_PROPPAGE_CAMERA_ITEM_GENERAL 0x00000002
#define WIA_PROPPAGE_DEVICE_GENERAL 0x00000004
//
// WIA_IPS_CUR_INTENT flags
//
#define WIA_INTENT_NONE 0x00000000
#define WIA_INTENT_IMAGE_TYPE_COLOR 0x00000001
#define WIA_INTENT_IMAGE_TYPE_GRAYSCALE 0x00000002
#define WIA_INTENT_IMAGE_TYPE_TEXT 0x00000004
#define WIA_INTENT_IMAGE_TYPE_MASK 0x0000000F
#define WIA_INTENT_MINIMIZE_SIZE 0x00010000
#define WIA_INTENT_MAXIMIZE_QUALITY 0x00020000
#define WIA_INTENT_BEST_PREVIEW 0x00040000
#define WIA_INTENT_SIZE_MASK 0x000F0000
//
// global WIA device informationproperty array
//
#define WIA_NUM_DIP 16
#ifdef WIA_DECLARE_DEVINFO_PROP_ARRAY
PROPSPEC g_psDeviceInfo[WIA_NUM_DIP] =
{
{PRSPEC_PROPID, WIA_DIP_DEV_ID},
{PRSPEC_PROPID, WIA_DIP_VEND_DESC},
{PRSPEC_PROPID, WIA_DIP_DEV_DESC},
{PRSPEC_PROPID, WIA_DIP_DEV_TYPE},
{PRSPEC_PROPID, WIA_DIP_PORT_NAME},
{PRSPEC_PROPID, WIA_DIP_DEV_NAME},
{PRSPEC_PROPID, WIA_DIP_SERVER_NAME},
{PRSPEC_PROPID, WIA_DIP_REMOTE_DEV_ID},
{PRSPEC_PROPID, WIA_DIP_UI_CLSID},
{PRSPEC_PROPID, WIA_DIP_HW_CONFIG},
{PRSPEC_PROPID, WIA_DIP_BAUDRATE},
{PRSPEC_PROPID, WIA_DIP_STI_GEN_CAPABILITIES},
{PRSPEC_PROPID, WIA_DIP_WIA_VERSION},
{PRSPEC_PROPID, WIA_DIP_DRIVER_VERSION},
{PRSPEC_PROPID, WIA_DIP_PNP_ID},
{PRSPEC_PROPID, WIA_DIP_STI_DRIVER_VERSION},
};
PROPID g_piDeviceInfo[WIA_NUM_DIP] =
{
WIA_DIP_DEV_ID,
WIA_DIP_VEND_DESC,
WIA_DIP_DEV_DESC,
WIA_DIP_DEV_TYPE,
WIA_DIP_PORT_NAME,
WIA_DIP_DEV_NAME,
WIA_DIP_SERVER_NAME,
WIA_DIP_REMOTE_DEV_ID,
WIA_DIP_UI_CLSID,
WIA_DIP_HW_CONFIG,
WIA_DIP_BAUDRATE,
WIA_DIP_STI_GEN_CAPABILITIES,
WIA_DIP_WIA_VERSION,
WIA_DIP_DRIVER_VERSION,
WIA_DIP_PNP_ID,
WIA_DIP_STI_DRIVER_VERSION,
};
LPOLESTR g_pszDeviceInfo[WIA_NUM_DIP] =
{
WIA_DIP_DEV_ID_STR,
WIA_DIP_VEND_DESC_STR,
WIA_DIP_DEV_DESC_STR,
WIA_DIP_DEV_TYPE_STR,
WIA_DIP_PORT_NAME_STR,
WIA_DIP_DEV_NAME_STR,
WIA_DIP_SERVER_NAME_STR,
WIA_DIP_REMOTE_DEV_ID_STR,
WIA_DIP_UI_CLSID_STR,
WIA_DIP_HW_CONFIG_STR,
WIA_DIP_BAUDRATE_STR,
WIA_DIP_STI_GEN_CAPABILITIES_STR,
WIA_DIP_WIA_VERSION_STR,
WIA_DIP_DRIVER_VERSION_STR,
WIA_DIP_PNP_ID_STR,
WIA_DIP_STI_DRIVER_VERSION_STR,
};
#else
extern PROPSPEC g_psDeviceInfo[WIA_NUM_DIP];
extern PROPID g_piDeviceInfo[WIA_NUM_DIP];
extern LPOLESTR g_pszDeviceInfo[WIA_NUM_DIP];
#endif
//
// global WIA property ID to property name array
//
#ifdef DEFINE_WIA_PROPID_TO_NAME
WIA_PROPID_TO_NAME g_wiaPropIdToName[] =
{
{WIA_DIP_DEV_ID, WIA_DIP_DEV_ID_STR},
{WIA_DIP_VEND_DESC, WIA_DIP_VEND_DESC_STR},
{WIA_DIP_DEV_DESC, WIA_DIP_DEV_DESC_STR},
{WIA_DIP_DEV_TYPE, WIA_DIP_DEV_TYPE_STR},
{WIA_DIP_PORT_NAME, WIA_DIP_PORT_NAME_STR},
{WIA_DIP_DEV_NAME, WIA_DIP_DEV_NAME_STR},
{WIA_DIP_SERVER_NAME, WIA_DIP_SERVER_NAME_STR},
{WIA_DIP_REMOTE_DEV_ID, WIA_DIP_REMOTE_DEV_ID_STR},
{WIA_DIP_UI_CLSID, WIA_DIP_UI_CLSID_STR},
{WIA_DIP_HW_CONFIG, WIA_DIP_HW_CONFIG_STR},
{WIA_DIP_BAUDRATE, WIA_DIP_BAUDRATE_STR},
{WIA_DIP_STI_GEN_CAPABILITIES, WIA_DIP_STI_GEN_CAPABILITIES_STR},
{WIA_DIP_WIA_VERSION, WIA_DIP_WIA_VERSION_STR},
{WIA_DIP_DRIVER_VERSION, WIA_DIP_DRIVER_VERSION_STR},
{WIA_DIP_PNP_ID, WIA_DIP_PNP_ID_STR},
{WIA_DIP_STI_DRIVER_VERSION, WIA_DIP_STI_DRIVER_VERSION_STR},
{WIA_DPA_FIRMWARE_VERSION, WIA_DPA_FIRMWARE_VERSION_STR},
{WIA_DPA_CONNECT_STATUS, WIA_DPA_CONNECT_STATUS_STR},
{WIA_DPA_DEVICE_TIME, WIA_DPA_DEVICE_TIME_STR},
{WIA_DPC_PICTURES_TAKEN, WIA_DPC_PICTURES_TAKEN_STR},
{WIA_DPC_PICTURES_REMAINING, WIA_DPC_PICTURES_REMAINING_STR},
{WIA_DPC_EXPOSURE_MODE, WIA_DPC_EXPOSURE_MODE_STR},
{WIA_DPC_EXPOSURE_COMP, WIA_DPC_EXPOSURE_COMP_STR},
{WIA_DPC_EXPOSURE_TIME, WIA_DPC_EXPOSURE_TIME_STR},
{WIA_DPC_FNUMBER, WIA_DPC_FNUMBER_STR},
{WIA_DPC_FLASH_MODE, WIA_DPC_FLASH_MODE_STR},
{WIA_DPC_FOCUS_MODE, WIA_DPC_FOCUS_MODE_STR},
{WIA_DPC_FOCUS_MANUAL_DIST, WIA_DPC_FOCUS_MANUAL_DIST_STR},
{WIA_DPC_ZOOM_POSITION, WIA_DPC_ZOOM_POSITION_STR},
{WIA_DPC_PAN_POSITION, WIA_DPC_PAN_POSITION_STR},
{WIA_DPC_TILT_POSITION, WIA_DPC_TILT_POSITION_STR},
{WIA_DPC_TIMER_MODE, WIA_DPC_TIMER_MODE_STR},
{WIA_DPC_TIMER_VALUE, WIA_DPC_TIMER_VALUE_STR},
{WIA_DPC_POWER_MODE, WIA_DPC_POWER_MODE_STR},
{WIA_DPC_BATTERY_STATUS, WIA_DPC_BATTERY_STATUS_STR},
{WIA_DPC_DIMENSION, WIA_DPC_DIMENSION_STR},
{WIA_DPS_HORIZONTAL_BED_SIZE, WIA_DPS_HORIZONTAL_BED_SIZE_STR},
{WIA_DPS_VERTICAL_BED_SIZE, WIA_DPS_VERTICAL_BED_SIZE_STR},
{WIA_DPS_HORIZONTAL_SHEET_FEED_SIZE, WIA_DPS_HORIZONTAL_SHEET_FEED_SIZE_STR},
{WIA_DPS_VERTICAL_SHEET_FEED_SIZE, WIA_DPS_VERTICAL_SHEET_FEED_SIZE_STR},
{WIA_DPS_SHEET_FEEDER_REGISTRATION, WIA_DPS_SHEET_FEEDER_REGISTRATION_STR},
{WIA_DPS_HORIZONTAL_BED_REGISTRATION, WIA_DPS_HORIZONTAL_BED_REGISTRATION_STR},
{WIA_DPS_VERTICAL_BED_REGISTRATION, WIA_DPS_VERTICAL_BED_REGISTRATION_STR},
{WIA_DPS_PLATEN_COLOR, WIA_DPS_PLATEN_COLOR_STR},
{WIA_DPS_PAD_COLOR, WIA_DPS_PAD_COLOR_STR},
{WIA_DPS_FILTER_SELECT, WIA_DPS_FILTER_SELECT_STR},
{WIA_DPS_DITHER_SELECT, WIA_DPS_DITHER_SELECT_STR},
{WIA_DPS_DITHER_PATTERN_DATA, WIA_DPS_DITHER_PATTERN_DATA_STR},
{WIA_DPS_DOCUMENT_HANDLING_CAPABILITIES, WIA_DPS_DOCUMENT_HANDLING_CAPABILITIES_STR},
{WIA_DPS_DOCUMENT_HANDLING_STATUS, WIA_DPS_DOCUMENT_HANDLING_STATUS_STR},
{WIA_DPS_DOCUMENT_HANDLING_SELECT, WIA_DPS_DOCUMENT_HANDLING_SELECT_STR},
{WIA_DPS_DOCUMENT_HANDLING_CAPACITY, WIA_DPS_DOCUMENT_HANDLING_CAPACITY_STR},
{WIA_DPS_OPTICAL_XRES, WIA_DPS_OPTICAL_XRES_STR},
{WIA_DPS_OPTICAL_YRES, WIA_DPS_OPTICAL_YRES_STR},
{WIA_DPS_ENDORSER_CHARACTERS, WIA_DPS_ENDORSER_CHARACTERS_STR},
{WIA_DPS_ENDORSER_STRING, WIA_DPS_ENDORSER_STRING_STR},
{WIA_DPS_SCAN_AHEAD_PAGES, WIA_DPS_SCAN_AHEAD_PAGES_STR},
{WIA_DPS_MAX_SCAN_TIME, WIA_DPS_MAX_SCAN_TIME_STR},
{WIA_DPS_PAGES, WIA_DPS_PAGES_STR},
{WIA_DPS_PAGE_SIZE, WIA_DPS_PAGE_SIZE_STR},
{WIA_DPS_PAGE_WIDTH, WIA_DPS_PAGE_WIDTH_STR},
{WIA_DPS_PAGE_HEIGHT, WIA_DPS_PAGE_HEIGHT_STR},
{WIA_DPS_PREVIEW, WIA_DPS_PREVIEW_STR},
{WIA_DPS_TRANSPARENCY, WIA_DPS_TRANSPARENCY_STR},
{WIA_DPS_TRANSPARENCY_SELECT, WIA_DPS_TRANSPARENCY_SELECT_STR},
{WIA_DPS_SHOW_PREVIEW_CONTROL, WIA_DPS_SHOW_PREVIEW_CONTROL_STR},
{WIA_DPS_MIN_HORIZONTAL_SHEET_FEED_SIZE, WIA_DPS_MIN_HORIZONTAL_SHEET_FEED_SIZE_STR},
{WIA_DPS_MIN_VERTICAL_SHEET_FEED_SIZE, WIA_DPS_MIN_VERTICAL_SHEET_FEED_SIZE_STR},
{WIA_DPS_USER_NAME, WIA_DPS_USER_NAME_STR},
{WIA_DPV_LAST_PICTURE_TAKEN, WIA_DPV_LAST_PICTURE_TAKEN_STR},
{WIA_DPV_IMAGES_DIRECTORY, WIA_DPV_IMAGES_DIRECTORY_STR},
{WIA_DPV_DSHOW_DEVICE_PATH, WIA_DPV_DSHOW_DEVICE_PATH_STR},
{WIA_DPF_MOUNT_POINT, WIA_DPF_MOUNT_POINT_STR},
{WIA_IPA_ITEM_NAME, WIA_IPA_ITEM_NAME_STR},
{WIA_IPA_FULL_ITEM_NAME, WIA_IPA_FULL_ITEM_NAME_STR},
{WIA_IPA_ITEM_TIME, WIA_IPA_ITEM_TIME_STR},
{WIA_IPA_ITEM_FLAGS, WIA_IPA_ITEM_FLAGS_STR},
{WIA_IPA_ACCESS_RIGHTS, WIA_IPA_ACCESS_RIGHTS_STR},
{WIA_IPA_DATATYPE, WIA_IPA_DATATYPE_STR},
{WIA_IPA_DEPTH, WIA_IPA_DEPTH_STR},
{WIA_IPA_PREFERRED_FORMAT, WIA_IPA_PREFERRED_FORMAT_STR},
{WIA_IPA_FORMAT, WIA_IPA_FORMAT_STR},
{WIA_IPA_COMPRESSION, WIA_IPA_COMPRESSION_STR},
{WIA_IPA_TYMED, WIA_IPA_TYMED_STR},
{WIA_IPA_CHANNELS_PER_PIXEL, WIA_IPA_CHANNELS_PER_PIXEL_STR},
{WIA_IPA_BITS_PER_CHANNEL, WIA_IPA_BITS_PER_CHANNEL_STR},
{WIA_IPA_PLANAR, WIA_IPA_PLANAR_STR},
{WIA_IPA_PIXELS_PER_LINE, WIA_IPA_PIXELS_PER_LINE_STR},
{WIA_IPA_BYTES_PER_LINE, WIA_IPA_BYTES_PER_LINE_STR},
{WIA_IPA_NUMBER_OF_LINES, WIA_IPA_NUMBER_OF_LINES_STR},
{WIA_IPA_GAMMA_CURVES, WIA_IPA_GAMMA_CURVES_STR},
{WIA_IPA_ITEM_SIZE, WIA_IPA_ITEM_SIZE_STR},
{WIA_IPA_COLOR_PROFILE, WIA_IPA_COLOR_PROFILE_STR},
{WIA_IPA_MIN_BUFFER_SIZE, WIA_IPA_MIN_BUFFER_SIZE_STR},
{WIA_IPA_REGION_TYPE, WIA_IPA_REGION_TYPE_STR},
{WIA_IPA_ICM_PROFILE_NAME, WIA_IPA_ICM_PROFILE_NAME_STR},
{WIA_IPA_APP_COLOR_MAPPING, WIA_IPA_APP_COLOR_MAPPING_STR},
{WIA_IPA_PROP_STREAM_COMPAT_ID, WIA_IPA_PROP_STREAM_COMPAT_ID_STR},
{WIA_IPA_FILENAME_EXTENSION, WIA_IPA_FILENAME_EXTENSION_STR},
{WIA_IPA_SUPPRESS_PROPERTY_PAGE, WIA_IPA_SUPPRESS_PROPERTY_PAGE_STR},
{WIA_IPC_THUMBNAIL, WIA_IPC_THUMBNAIL_STR},
{WIA_IPC_THUMB_WIDTH, WIA_IPC_THUMB_WIDTH_STR},
{WIA_IPC_THUMB_HEIGHT, WIA_IPC_THUMB_HEIGHT_STR},
{WIA_IPC_AUDIO_AVAILABLE, WIA_IPC_AUDIO_AVAILABLE_STR},
{WIA_IPC_AUDIO_DATA_FORMAT, WIA_IPC_AUDIO_DATA_FORMAT_STR},
{WIA_IPC_AUDIO_DATA, WIA_IPC_AUDIO_DATA_STR},
{WIA_IPC_NUM_PICT_PER_ROW, WIA_IPC_NUM_PICT_PER_ROW_STR},
{WIA_IPC_SEQUENCE, WIA_IPC_SEQUENCE_STR},
{WIA_IPC_TIMEDELAY, WIA_IPC_TIMEDELAY_STR},
{WIA_IPS_CUR_INTENT, WIA_IPS_CUR_INTENT_STR},
{WIA_IPS_XRES, WIA_IPS_XRES_STR},
{WIA_IPS_YRES, WIA_IPS_YRES_STR},
{WIA_IPS_XPOS, WIA_IPS_XPOS_STR},
{WIA_IPS_YPOS, WIA_IPS_YPOS_STR},
{WIA_IPS_XEXTENT, WIA_IPS_XEXTENT_STR},
{WIA_IPS_YEXTENT, WIA_IPS_YEXTENT_STR},
{WIA_IPS_PHOTOMETRIC_INTERP, WIA_IPS_PHOTOMETRIC_INTERP_STR},
{WIA_IPS_BRIGHTNESS, WIA_IPS_BRIGHTNESS_STR},
{WIA_IPS_CONTRAST, WIA_IPS_CONTRAST_STR},
{WIA_IPS_ORIENTATION, WIA_IPS_ORIENTATION_STR},
{WIA_IPS_ROTATION, WIA_IPS_ROTATION_STR},
{WIA_IPS_MIRROR, WIA_IPS_MIRROR_STR},
{WIA_IPS_THRESHOLD, WIA_IPS_THRESHOLD_STR},
{WIA_IPS_INVERT, WIA_IPS_INVERT_STR},
{WIA_IPS_WARM_UP_TIME, WIA_IPS_WARM_UP_TIME_STR},
#if (_WIN32_WINNT >= 0x0600)
{WIA_IPA_ITEM_CATEGORY, WIA_IPA_ITEM_CATEGORY_STR},
{WIA_IPA_RAW_BITS_PER_CHANNEL, WIA_IPA_RAW_BITS_PER_CHANNEL_STR},
{WIA_IPS_DESKEW_X, WIA_IPS_DESKEW_X_STR},
{WIA_IPS_DESKEW_Y, WIA_IPS_DESKEW_Y_STR},
{WIA_IPS_SEGMENTATION, WIA_IPS_SEGMENTATION_STR},
{WIA_IPS_MAX_HORIZONTAL_SIZE, WIA_IPS_MAX_HORIZONTAL_SIZE_STR},
{WIA_IPS_MAX_VERTICAL_SIZE, WIA_IPS_MAX_VERTICAL_SIZE_STR},
{WIA_IPS_MIN_HORIZONTAL_SIZE, WIA_IPS_MIN_HORIZONTAL_SIZE_STR},
{WIA_IPS_MIN_VERTICAL_SIZE, WIA_IPS_MIN_VERTICAL_SIZE_STR},
{WIA_IPS_SHEET_FEEDER_REGISTRATION, WIA_IPS_SHEET_FEEDER_REGISTRATION_STR},
{WIA_IPS_DOCUMENT_HANDLING_SELECT, WIA_IPS_DOCUMENT_HANDLING_SELECT_STR},
{WIA_IPS_OPTICAL_XRES, WIA_IPS_OPTICAL_XRES_STR},
{WIA_IPS_OPTICAL_YRES, WIA_IPS_OPTICAL_YRES_STR},
{WIA_IPS_PAGES, WIA_IPS_PAGES_STR},
{WIA_IPS_PAGE_SIZE, WIA_IPS_PAGE_SIZE_STR},
{WIA_IPS_PAGE_WIDTH, WIA_IPS_PAGE_WIDTH_STR},
{WIA_IPS_PAGE_HEIGHT, WIA_IPS_PAGE_HEIGHT_STR},
{WIA_IPS_PREVIEW, WIA_IPS_PREVIEW_STR},
{WIA_IPS_SHOW_PREVIEW_CONTROL, WIA_IPS_SHOW_PREVIEW_CONTROL_STR},
{WIA_IPS_TRANSFER_CAPABILITIES, WIA_IPS_TRANSFER_CAPABILITIES_STR},
{WIA_IPS_FILM_SCAN_MODE, WIA_IPS_FILM_SCAN_MODE_STR},
{WIA_IPS_LAMP, WIA_IPS_LAMP_STR},
{WIA_IPS_LAMP_AUTO_OFF, WIA_IPS_LAMP_AUTO_OFF_STR},
{WIA_IPS_AUTO_DESKEW, WIA_IPS_AUTO_DESKEW_STR},
{WIA_IPS_SUPPORTS_CHILD_ITEM_CREATION, WIA_IPS_SUPPORTS_CHILD_ITEM_CREATION_STR},
{WIA_IPS_PREVIEW_TYPE, WIA_IPS_PREVIEW_TYPE_STR},
{WIA_IPS_XSCALING, WIA_IPS_XSCALING_STR},
{WIA_IPS_YSCALING, WIA_IPS_YSCALING_STR},
{WIA_IPA_UPLOAD_ITEM_SIZE, WIA_IPA_UPLOAD_ITEM_SIZE_STR},
{WIA_IPA_ITEMS_STORED, WIA_IPA_ITEMS_STORED_STR},
#endif
{0, L"Not a WIA property"}
};
#else
extern WIA_PROPID_TO_NAME g_wiaPropIdToName[];
#endif
#ifdef __cplusplus
};
#endif
#include <poppack.h>
#endif // _WIADEF_
#endif //#if (_WIN32_WINNT >= 0x0501)