Windows NT 4.0 source code leak
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

1662 lines
68 KiB

/***************************************************************************
*
* File Name: PAL_OBJ.H
*
* Copyright (C) 1993-1996 Hewlett-Packard Company.
* All rights reserved.
*
* 11311 Chinden Blvd.
* Boise, Idaho 83714
*
* This is a part of the HP JetAdmin Printer Utility
*
* This source code is only intended as a supplement for support and
* localization of HP JetAdmin by 3rd party Operating System vendors.
* Modification of source code cannot be made without the express written
* consent of Hewlett-Packard.
*
*
* Description:
*
* Author: Name
*
*
* Modification history:
*
* date initials change description
*
* mm-dd-yy MJB
*
* 01-23-96 JLH Unicode changes
*
*
*
*
***************************************************************************/
#ifndef _PAL_OBJ_H
#define _PAL_OBJ_H
#include ".\pal_api.h"
/* Asynch status codes, Peripheral Status Values */
#define ASYNCH_STATUS_UNKNOWN 0xFFFFFFFF
#define ASYNCH_PRINTER_ERROR 0
#define ASYNCH_DOOR_OPEN 1
#define ASYNCH_WARMUP 2
#define ASYNCH_RESET 3
#define ASYNCH_OUTPUT_BIN_FULL 4 /* yellow condition */
#define ASYNCH_PAPER_JAM 5
#define ASYNCH_TONER_GONE 6
#define ASYNCH_MANUAL_FEED 7
#define ASYNCH_PAPER_OUT 8
#define ASYNCH_PAGE_PUNT 9
#define ASYNCH_MEMORY_OUT 10
#define ASYNCH_OFFLINE 11
#define ASYNCH_INTERVENTION 12
#define ASYNCH_INITIALIZING 13
#define ASYNCH_TONER_LOW 14
#define ASYNCH_PRINTING_TEST_PAGE 15
#define ASYNCH_PRINTING 16
#define ASYNCH_ONLINE 17
#define ASYNCH_BUSY 18
#define ASYNCH_NOT_CONNECTED 19
#define ASYNCH_STATUS_UNAVAILABLE 20
#define ASYNCH_NETWORK_ERROR 21
#define ASYNCH_COMM_ERROR 22
#define ASYNCH_BLACK_AGENT_EMPTY 23
#define ASYNCH_MAGENTA_AGENT_EMPTY 24
#define ASYNCH_CYAN_AGENT_EMPTY 25
#define ASYNCH_YELLOW_AGENT_EMPTY 26
#define ASYNCH_BLACK_AGENT_MISSING 27
#define ASYNCH_MAGENTA_AGENT_MISSING 28
#define ASYNCH_CYAN_AGENT_MISSING 29
#define ASYNCH_YELLOW_AGENT_MISSING 30
#define ASYNCH_TRAY1_EMPTY 31 /* yellow condition */
#define ASYNCH_TRAY2_EMPTY 32 /* yellow condition */
#define ASYNCH_TRAY3_EMPTY 33 /* yellow condition */
#define ASYNCH_TRAY1_JAM 34
#define ASYNCH_TRAY2_JAM 35
#define ASYNCH_TRAY3_JAM 36
#define ASYNCH_POWERSAVE_MODE 37 /* MAX for generic printer & Arrakis */
#define ASYNCH_ENVL_ERROR 38
#define ASYNCH_HCI_ERROR 39
#define ASYNCH_HCO_ERROR 40
#define ASYNCH_HCI_EMPTY 41 /* yellow condition */
#define ASYNCH_HCI_JAM 42
#define ASYNCH_TRAY1_ADD 43 /* red condition */
#define ASYNCH_TRAY2_ADD 44 /* red condition */
#define ASYNCH_TRAY3_ADD 45 /* red condition */
#define ASYNCH_HCI_ADD 46 /* red condition */
#define ASYNCH_TRAY1_UNKNOWN_MEDIA 47 /* yellow condition */
#define ASYNCH_CLEAR_OUTPUT_BIN 48 /* red condition */
#define ASYNCH_CARRIAGE_STALL 49
#define ASYNCH_COLOR_AGENT_EMPTY 50
#define ASYNCH_COLOR_AGENT_MISSING 51
#define ASYNCH_BLACK_AGENT_INCORRECT 52
#define ASYNCH_MAGENTA_AGENT_INCORRECT 53
#define ASYNCH_CYAN_AGENT_INCORRECT 54
#define ASYNCH_YELLOW_AGENT_INCORRECT 55
#define ASYNCH_COLOR_AGENT_INCORRECT 56
#define ASYNCH_BLACK_AGENT_INCORRECT_INSTALL 57
#define ASYNCH_MAGENTA_AGENT_INCORRECT_INSTALL 58
#define ASYNCH_CYAN_AGENT_INCORRECT_INSTALL 59
#define ASYNCH_YELLOW_AGENT_INCORRECT_INSTALL 60
#define ASYNCH_COLOR_AGENT_INCORRECT_INSTALL 61
#define ASYNCH_BLACK_AGENT_FAILURE 62
#define ASYNCH_MAGENTA_AGENT_FAILURE 63
#define ASYNCH_CYAN_AGENT_FAILURE 64
#define ASYNCH_YELLOW_AGENT_FAILURE 65
#define ASYNCH_COLOR_AGENT_FAILURE 66
#define ASYNCH_TRAY1_MISSING 67
#define ASYNCH_TRAY2_MISSING 68
#define ASYNCH_TRAY3_MISSING 69
// New for Jonah
#define ASYNCH_STAPLER_EMPTY 70
#define ASYNCH_STAPLER_JAM 71
#define ASYNCH_STAPLER_MALFUNCTION 72
#define ASYNCH_STAPLER_ALIGNMENT_ERROR 73
#define ASYNCH_STAPLER_LIMIT 74
#define ASYNCH_DEVICE_SPECIFIC 75
/* Add new ASYNC status conditions here for new printers */
#define MAX_ASYNCH_STATUS 76 /* MAX for generic printer applet */
#define MAX_ASYNCH_ECLIPSE 49 /* MAX for Eclipse */
#define MAX_ASYNCH_JONAH 76 /* MAX for Jonah */
/* Add new MAX_ASYNC_printer here for new printers */
/* Object Flags
** Each object ID is OR'ed with this flag to determine what languages can
** be used to get the information.
*/
#define OBJ_INIFILE 0x00000000
#define OBJ_SNMP 0x00010000
#define OBJ_RCFG 0x00020000
#define OBJ_FILE_SERVER 0x00040000
#define OBJ_PJL 0x00080000
#define OBJ_RRM 0x00100000
#define OBJ_PML 0x00200000
#define OBJ_SSNET 0x00400000
#define OT_PERIPHERAL_STATUS (OBJ_INIFILE | OBJ_SNMP | OBJ_RCFG | OBJ_PJL | OBJ_PML | 0x0000)
#define OT_PERIPHERAL_DETAILS (OBJ_INIFILE | OBJ_FILE_SERVER | OBJ_SNMP | OBJ_RCFG | OBJ_PJL | OBJ_PML | 0x0001)
#define OT_PERIPHERAL_INFO (OBJ_INIFILE | 0x0003)
#define OT_PERIPHERAL_ACCT (OBJ_INIFILE | OBJ_SNMP | OBJ_PJL | OBJ_PML | 0x0011)
#define OT_PERIPHERAL_CAPABILITIES (OBJ_INIFILE | OBJ_SNMP | OBJ_PJL | OBJ_PML | 0x000B)
#define OT_PERIPHERAL_DISK (OBJ_INIFILE | OBJ_SNMP | OBJ_PJL | OBJ_PML | 0x000C)
#define OT_PERIPHERAL_INPUT_TRAYS (OBJ_INIFILE | OBJ_SNMP | OBJ_PJL | OBJ_PML | 0x000D)
#define OT_PERIPHERAL_HCI (OBJ_INIFILE | OBJ_SNMP | OBJ_PML | 0x0024)
#define OT_PERIPHERAL_HCO (OBJ_INIFILE | OBJ_SNMP | OBJ_PML | 0x0025)
#define OT_PERIPHERAL_CONFIG_CHANGE (OBJ_INIFILE | OBJ_SNMP | OBJ_PML | 0x0026)
#define OT_PERIPHERAL_INSTALLED_PHD (OBJ_INIFILE | OBJ_SNMP | OBJ_PML | 0x0027)
#define OT_PERIPHERAL_OUTPUT_BINS (OBJ_INIFILE | OBJ_SNMP | OBJ_PML | 0x0028)
#define OT_PERIPHERAL_ENVL_FEEDER (OBJ_INIFILE | OBJ_SNMP | OBJ_PML | 0x0029)
#define OT_PERIPHERAL_ENABLED_MEDIA (OBJ_INIFILE | OBJ_SNMP | OBJ_PML | 0x002A)
#define OT_PERIPHERAL_FONT_LIST2 (OBJ_INIFILE | OBJ_RRM | 0x0061)
#define OT_PERIPHERAL_DOWNLOAD_PS_FONT (OBJ_INIFILE | OBJ_RRM | 0x0062)
#define OT_PERIPHERAL_DELETE_PS_FONT (OBJ_INIFILE | OBJ_RRM | 0x0063)
#define OT_PERIPHERAL_FONT_INFO (OBJ_INIFILE | OBJ_RRM | 0x0030)
#define OT_PERIPHERAL_DOWNLOAD_FONT (OBJ_INIFILE | OBJ_RRM | 0x0035)
#define OT_PERIPHERAL_DELETE_FONT (OBJ_INIFILE | OBJ_RRM | 0x0036)
#define OT_PERIPHERAL_MS_CHANGE (OBJ_INIFILE | OBJ_SNMP | OBJ_PML | 0x0037)
#define OT_PERIPHERAL_MASS_STORAGE (OBJ_INIFILE | OBJ_SNMP | OBJ_PML | 0x0038)
#define OT_PERIPHERAL_RPC_BOUND ( OBJ_SNMP | 0x005A)
#define OT_PERIPHERAL_CAPABILITIES2 (OBJ_INIFILE | OBJ_SNMP | OBJ_PJL | OBJ_PML | 0x0066)
#define OT_PERIPHERAL_PLOTTER_STATUS ( OBJ_SNMP | OBJ_PML | 0x0040)
#define OT_PERIPHERAL_PLOTTER_INPUT_TRAY ( OBJ_SNMP | OBJ_PML | 0x0041)
#define OT_PERIPHERAL_CURRENT_PRINT_POSITION ( OBJ_PML | 0x006E)
#define OT_PERIPHERAL_TOTAL_PREMATURE_PAGE_EJECT ( OBJ_PML | 0x006F)
#define OT_PERIPHERAL_MEMORY_OVERFLOW ( OBJ_PML | 0x0070)
#define OT_PERIPHERAL_MARKING_AGENTS_INITIALIZED ( OBJ_PML | 0x0071)
#define OT_PERIPHERAL_POWER_DOWN_STATE ( OBJ_PML | 0x0072)
#define OT_PERIPHERAL_NOT_IDLE ( OBJ_PML | 0x0073)
#define OT_SCANNER_CONFIG ( OBJ_SNMP | 0x0080)
#define OT_SCANNER_DETAILS ( OBJ_SNMP | 0x0081)
#define OT_SCANNER_DETAILS_ADVANCED ( OBJ_SNMP | 0x0082)
#define OT_SCANNER_STATUS ( OBJ_SNMP | 0x0083)
#define OT_SCANNER_REMOTE_COMMAND ( OBJ_SNMP | OBJ_SSNET | 0x0084)
#define OT_SCANNER_NETWORK_ENVIRONMENTS_CONFIGURED ( OBJ_SNMP | 0x0085)
#define OT_SCANNER_PUBLIC_USER_DEST_CONFIGURED ( OBJ_SNMP | 0x0086)
#define OT_SCANNER_PRIVATE_USER_DEST_CONFIGURED ( OBJ_SSNET | 0x0087)
#define OT_SCANNER_PUBLIC_USER_ACCOUNTING ( OBJ_SNMP | 0x0088)
#define OT_SCANNER_PUBLIC_PRINTER_DEST_CONFIGURED ( OBJ_SNMP | 0x0089)
#define OT_SCANNER_PRIVATE_PRINTER_DEST_CONFIGURED ( OBJ_SSNET | 0x008A)
#define OT_SCANNER_PUBLIC_FAX_DEST_CONFIGURED ( OBJ_SNMP | 0x008B)
#define OT_SCANNER_PRIVATE_FAX_DEST_CONFIGURED ( OBJ_SSNET | 0x008C)
#define OT_SCANNER_PUBLIC_DLIST_CONFIGURED ( OBJ_SNMP | 0x008D)
#define OT_SCANNER_PRIVATE_DLIST_CONFIGURED ( OBJ_SSNET | 0x008E)
#define OT_SCANNER_PUBLIC_SCANNING_SETTING_CONFIGURED ( OBJ_SNMP | 0x008F)
#define OT_SCANNER_PRIVATE_SCANNING_SETTING_CONFIGURED ( OBJ_SSNET | 0x0090)
#define OT_SCANNER_PRIVATE_AUTOFLOW_CONFIGURED ( OBJ_SSNET | 0x0091)
#define OT_SCANNER_USER_SCANNING_WORKAREA ( OBJ_SSNET | 0x0092)
#define OT_SCANNER_SCANNING_NOTIFICATION ( OBJ_SSNET | 0x0093)
#define OT_SCANNER_DOCUMENTS ( OBJ_SSNET | 0x0094)
#define OT_SCANNER_LANFAX_ENVIRONMENTS_CONFIGURED ( OBJ_SNMP | 0x0095)
#define OT_SCANNER_TCPIP_CONFIG ( OBJ_SNMP | 0x0096)
#define OT_SCANNER_TCP_DIAGS ( OBJ_SNMP | 0x0097)
#define OT_PERIPHERAL_BIDI_MONITOR ( 0x0098)
#define OT_SCANNER_PRINTER_CLASSES_CONFIGURED ( OBJ_SNMP | 0x0099)
/* These are a list of valid objects */
#define PERIPHERAL_BASE 0
#define JETDIRECT_BASE 5000
/* PJL object values begin here */
#define PJL_LONGEDGE 1
#define PJL_SHORTEDGE 2
#define PJL_JOB 3
#define PJL_AUTO 4
#define PJL_DANISH 5
#define PJL_GERMAN 6
#define PJL_ENGLISH 7
#define PJL_SPANISH 8
#define PJL_FRENCH 9
#define PJL_ITALIAN 10
#define PJL_DUTCH 11
#define PJL_NORWEGIAN 12
#define PJL_POLISH 13
#define PJL_PORTUGUESE 14
#define PJL_FINNISH 15
#define PJL_SWEDISH 16
#define PJL_TURKISH 17
#define PJL_PORTRAIT 18
#define PJL_LANDSCAPE 19
#define PJL_UPPER 20
#define PJL_LOWER 21
#define PJL_LETTER 22
#define PJL_LEGAL 23
#define PJL_A4 24
#define PJL_EXECUTIVE 25
#define PJL_COM10 26
#define PJL_MONARCH 27
#define PJL_C5 28
#define PJL_DL 29
#define PJL_B5 30
#define PJL_CUSTOM 31
#define PJL_PCL 32
#define PJL_POSTSCRIPT 33
#define PJL_LIGHT 34
#define PJL_MEDIUM 35
#define PJL_DARK 36
#define PJL_ON 37
#define PJL_OFF 38
#define PJL_ENABLE 39
#define PJL_DISABLE 40
#define PJL_15 41
#define PJL_30 42
#define PJL_60 43
#define PJL_120 44
#define PJL_180 45
#define PJL_JAPANESE 46
#define PJL_ENGLISH_UK 47
#define PJL_MEXICO 48
#define PJL_CANADA 49
#define PJL_11x17 50
#define PJL_JPOST 51
#define PJL_JPOSTD 52
#define PJL_JISB4 53
#define PJL_JISB5 54
#define PJL_LEDGER 55
#define PJL_A3 56
#define PJL_FIRST 57
#define PJL_CASSETTE 58
#define PJL_MANUAL 59
#define PJL_2XPOST 60 /* 2X Post envelope size for arrakis */
#define PJL_A5 61
/* ADD NEW PJL OBJECT VALUES HERE */
#define PJL_UNKNOWN 0xFFFF
/* TrayStruct */
typedef struct {
DWORD flags; /* use the defines above */
DWORD capacity;
DWORD mediaLevel; /* 0xFFFFFFFF = means not empty */
/* 0 = empty */
/* -2 = unknown */
/* -3 = not empty */
DWORD mediaSize;
DWORD trayNum;
TCHAR mediaTypeName[32];
TCHAR trayLabel[32];
} TrayStruct;
/* BinStruct */
#define SET_OVERRIDE 0x00000001
#define SET_BINNAME 0x00000002
/* Constants that define the override modes for a full output bin */
#define OVERRIDE_WAIT_FOREVER 1
#define OVERRIDE_CANCEL_JOB 2
#define OVERRIDE_TO_DEFAULT_BIN 3
#define OVERRIDE_IGNORE_ATTENTION 4
#define OVERRIDE_IGNORE_BINDER 5
/* Constants to define the stacking order in an output bin */
#define CORRECT_ORDER_OUT 3
#define REVERSE_ORDER_OUT 4
typedef struct {
DWORD flags; /* use defines above */
DWORD totalCapacity;
DWORD remainingCapacity; /* 0xFFFFFFFF = means not empty */
/* 0 = full */
/* -2 = unknown */
/* -3 = not empty */
DWORD stackOrder;
DWORD overrideMode;
DWORD logicalBinNum;
TCHAR binName[32];
} BinStruct;
/* OT_PERIPHERAL_INFO, these are generally static */
typedef struct {
TCHAR name[128]; /* node name of the peripheral */
TCHAR reserved[16]; /* formerly cardModel -- should now be obtained through OT_CARD_INFO */
TCHAR nodeAddress[32]; /* link address of JetDirect card */
TCHAR networkNumber[32]; /* network number of JetDirect card */
HPBOOL bConfigured; /* TRUE if the card is configured, FALSE if set to factory defaults */
HPBOOL bDirectMode; /* TRUE if direct mode support */
HPBOOL bNDS; /* NetWare Directory Services supported */
DWORD portNumber; /* 0 for non-EX multi-port devices */
TCHAR IPAddress[32]; /* TCP/IP address of card (if applicable) */
TCHAR ipHostName[128]; // Host name for IP stack
DWORD dwConnsSupported;
DWORD dwConnsConfigured;
TCHAR smashedName[128]; /* When we must have a name, this is it */
} PeripheralInfo;
/* NOTE: Whenever a new device is added, please add it to
** the SetDeviceID() member function in periphdb.cpp
*/
/* Printer Device IDs */
#define MIO_HP_DEVICE_BASE 0
#define MIO_HP_DEVICE_BASE_SPEC 9000
#define NON_MIO_HP_DEVICE_BASE 10000
#define NON_HP_DEVICE_BASE 11000
#define PTR_UNDEF 0
/* hp mio-capable devices */
#define PTR_LJIIISI MIO_HP_DEVICE_BASE + 1 /* LaserJet IIISi, eli/helios */
#define PTR_CLJ MIO_HP_DEVICE_BASE + 2 /* Color LaserJet, bedrock */
#define PTR_LJ4 MIO_HP_DEVICE_BASE + 3 /* LaserJet 4/4M */
#define PTR_LJ4M PTR_LJ4 /* LaserJet 4/4M */
#define PTR_DJ MIO_HP_DEVICE_BASE + 4 /* DesignJet */
#define PTR_LJ4SI MIO_HP_DEVICE_BASE + 5 /* LaserJet 4Si/4Si MX, sawtooth */
#define PTR_LJ4SIMX PTR_LJ4SI /* LaserJet 4Si/4Si MX, sawtooth */
#define PTR_PJXL300 MIO_HP_DEVICE_BASE + 6 /* PaintJet XL 300 */
#define PTR_DJ1200C MIO_HP_DEVICE_BASE + 7 /* DeskJet 1200C, jason */
#define PTR_DJ650C MIO_HP_DEVICE_BASE + 8 /* DesignJet 650C, flamingo */
#define PTR_DJ600 MIO_HP_DEVICE_BASE + 9 /* DesignJet 600 */
#define PTR_LJ4PLUS MIO_HP_DEVICE_BASE + 10 /* LaserJet 4 Plus/4 M Plus, ponderosa */
#define PTR_LJ4MPLUS PTR_LJ4PLUS /* LaserJet 4 Plus/4 M Plus, ponderosa */
#define PTR_LJ5SI MIO_HP_DEVICE_BASE + 11 /* LaserJet 5Si, eclipse */
#define PTR_LJ5SIMX PTR_LJ5SI /* LaserJet 5Si, eclipse */
#define PTR_LJ4V MIO_HP_DEVICE_BASE + 12 /* LaserJet 4V, arrakis */
#define PTR_LJ4MV PTR_LJ4V /* LaserJet 4V, arrakis */
#define PTR_GASCHROMO MIO_HP_DEVICE_BASE + 13 /* HP gas chromograph, instrument division */
#define PTR_DJ1600C MIO_HP_DEVICE_BASE + 14 /* DeskJet 1600C, goldrush */
#define PTR_DJ1600CM PTR_DJ1600C /* DeskJet 1600C, goldrush */
#define PTR_LJ5 MIO_HP_DEVICE_BASE + 15 /* LaserJet 5, elkhorn */
#define PTR_LJ5M PTR_LJ5 /* LaserJet 5, Thunder */
#define PTR_CLJ5 MIO_HP_DEVICE_BASE + 16 /* Color LaserJet 5, bedrock mlk */
#define PTR_CLJ5M PTR_CLJ5 /* Color LaserJet 5, bedrock mlk */
#define PTR_DJ750C MIO_HP_DEVICE_BASE + 20 /* DesignJet 750C, Loquillo */
#define PTR_DJ755CM MIO_HP_DEVICE_BASE + 21 /* DesignJet 755CM, Loquillo, more Memory, PS */
#define PTR_DJ_GENERIC MIO_HP_DEVICE_BASE + 22 /* The default DesignJet */
/* hp printers, special mio, but not having unique mio peripheral ids */
#define PTR_CJ MIO_HP_DEVICE_BASE_SPEC + 0 /* CopyJet, nike */
/* hp non-mio-capable devices */
#define PTR_LJ2_3 NON_MIO_HP_DEVICE_BASE + 0 /* LaserJet II or III */
#define PTR_LJII NON_MIO_HP_DEVICE_BASE + 1 /* LaserJet II */
#define PTR_LJIID NON_MIO_HP_DEVICE_BASE + 2 /* LaserJet II */
#define PTR_LJIIP NON_MIO_HP_DEVICE_BASE + 3 /* LaserJet IIP */
#define PTR_LJIII NON_MIO_HP_DEVICE_BASE + 4 /* LaserJet III */
#define PTR_LJIIID NON_MIO_HP_DEVICE_BASE + 5 /* LaserJet IIID */
#define PTR_LJIIIP NON_MIO_HP_DEVICE_BASE + 6 /* LaserJet IIIP */
#define PTR_LJ4L NON_MIO_HP_DEVICE_BASE + 7 /* LaserJet 4L */
#define PTR_LJ4ML PTR_LJ4L /* LaserJet 4ML */
#define PTR_DJ200 NON_MIO_HP_DEVICE_BASE + 8 /* DesignJet 200 */
#define PTR_LJ4P NON_MIO_HP_DEVICE_BASE + 9 /* LaserJet 4P/4MP */
#define PTR_LJ4MP PTR_LJ4P /* LaserJet 4P/4MP */
#define PTR_PJXL NON_MIO_HP_DEVICE_BASE + 10 /* PaintJet */
#define PTR_LJ_IIPPLUS NON_MIO_HP_DEVICE_BASE + 11 /* LaserJet 2P+ */
#define PTR_LJ4PJ NON_MIO_HP_DEVICE_BASE + 12 /* LaserJet 4PJ */
#define PTR_LJ5P NON_MIO_HP_DEVICE_BASE + 13 /* LaserJet 5P */
#define PTR_LJ5MP PTR_LJ5P /* LaserJet 5P */
#define PTR_LJ5L NON_MIO_HP_DEVICE_BASE + 14 /* LaserJet 5L */
#define PTR_LJ4LC NON_MIO_HP_DEVICE_BASE + 15 /* LaserJet 4LC */
#define PTR_LJ4MLC PTR_LJ4LC /* LaserJet 4MLC */
#define PTR_LJ4LJPRO NON_MIO_HP_DEVICE_BASE + 16 /* LaserJet 4LJ Pro */
#define PTR_LJ4MLJPRO PTR_LJ4LJPRO /* LaserJet 4MLJ Pro */
#define PTR_DJ250C NON_MIO_HP_DEVICE_BASE + 17 /* DesignJet 250C, parrot */
#define PTR_DJ230 NON_MIO_HP_DEVICE_BASE + 18 /* DesignJet 230, raven */
#define PTR_DJ220 NON_MIO_HP_DEVICE_BASE + 19 /* DesignJet 220, clipper */
#define PTR_DJ500 NON_MIO_HP_DEVICE_BASE + 20 /* DeskJet 500 */
#define PTR_DJ500C NON_MIO_HP_DEVICE_BASE + 21 /* DeskJet 500C */
#define PTR_DJ550 NON_MIO_HP_DEVICE_BASE + 22 /* DeskJet 550 */
#define PTR_DJ550C NON_MIO_HP_DEVICE_BASE + 23 /* DeskJet 550C */
#define PTR_DJ520 NON_MIO_HP_DEVICE_BASE + 24 /* DeskJet 520 */
#define PTR_DJ520C NON_MIO_HP_DEVICE_BASE + 25 /* DeskJet 520C */
#define PTR_DJ540 NON_MIO_HP_DEVICE_BASE + 26 /* DeskJet 540 */
#define PTR_DJ560 NON_MIO_HP_DEVICE_BASE + 27 /* DeskJet 560 */
#define PTR_DJ560C NON_MIO_HP_DEVICE_BASE + 28 /* DeskJet 560 C */
#define PTR_DkJ600 NON_MIO_HP_DEVICE_BASE + 29 /* DeskJet 600, Voltaire 1PC */
#define PTR_DkJ660C NON_MIO_HP_DEVICE_BASE + 30 /* DeskJet 660C, Voltaire 2PC */
#define PTR_DkJ850C NON_MIO_HP_DEVICE_BASE + 31 /* Rocky */
#define PTR_LJ6P NON_MIO_HP_DEVICE_BASE + 32 /* LaserJet 6P, Alpine */
#define PTR_LJ6MP PTR_LJ6P /* LaserJet 6MP, Redfish */
#define PTR_DkJ870C NON_MIO_HP_DEVICE_BASE + 33 /* DeskJet 870C, Frontier */
#define PTR_SJ4SI NON_MIO_HP_DEVICE_BASE + 34 /* ScanJet 4Si, Sienna */
#define PTR_SJ5SI NON_MIO_HP_DEVICE_BASE + 35 /* ScanJet 5Si, Volterra */
#define PTR_DkJ680C NON_MIO_HP_DEVICE_BASE + 36 /* DeskJet 680C */
#define PTR_LJ6L NON_MIO_HP_DEVICE_BASE + 37 /* LaserJet 6L, Summit */
/* Printer Class */
#define PTR_CLASS_UNDEF 0
#define PTR_CLASS_PRINTER 1
#define PTR_CLASS_PLOTTER 2
#define PTR_CLASS_INSTRUMENT 3 /* xstation */
#define PTR_CLASS_SCANNER 4
#define PTR_CLASS_COPIER 5
/* OT_PERIPHERAL_ACCT */
#define SET_ASSETNUM 0x00000001
#define SET_CONTACT 0x00000002
#define SET_LOCATION 0x00000004
typedef struct {
DWORD flags; /* use defines above */
DWORD enginePageCount;
TCHAR assetNumber[16]; /* r/w */
TCHAR serialNumber[16];
TCHAR systemContact[256]; /* Eclipse: r/w */
TCHAR systemLocation[256]; /* Eclipse: r/w */
} PeripheralAcct;
/* OT_PERIPHERAL_STATUS, these are dynamic */
typedef struct {
DWORD peripheralStatus; /* Status of the printer */
UINT statusResID; /* resource ID of status message */
DWORD severity; /* Severity of the status */
HINSTANCE hResourceModule; /* Module with severity icon */
UINT severityIcon; /* Severity icon */
DWORD helpContext; /* Context for current status help */
TCHAR helpFilename[32]; /* Help file name for status context */
HINSTANCE hBitmapModule; /* Module with printerResID and statusBitmapID */
UINT printerResID; /* Resource ID of printer bitmap */
UINT statusBitmapID; /* Resource ID of status balloon */
} PeripheralStatus;
/* OT_PERIPHERAL_DETAILS, these are generally static */
typedef struct {
DWORD deviceID; /* device number */
DWORD peripheralClass; /* either printer, plotter, instrument */
TCHAR deviceName[80]; /* text name of device */
} PeripheralDetails;
/* OT_PERIPHERAL_CAPABILITIES */
#define CAPS_INSTALLED_RAM 0x00000001
#define CAPS_DUPLEX 0x00000002
#define CAPS_POSTSCRIPT 0x00000004
#define CAPS_PCL 0x00000008
#define CAPS_DISK 0x00000010
#define CAPS_HCO 0x00000020
#define CAPS_HCI 0x00000040
#define CAPS_PML 0x00000080
#define CAPS_POWERSAVE 0x00000100
#define CAPS_SIR 0x00000200
#define CAPS_COLOR 0x00000400
#define CAPS_PPM_MONO 0x00000800
#define CAPS_GRAYSCALE 0x00001000
#define CAPS_11x17 0x00002000
#define CAPS_HPGL2 0x00004000
#define CAPS_MEDIA_INFO 0x00008000
#define CAPS_OUTPUT_INFO 0x00010000
#define CAPS_ENVL_FEEDER 0x00020000
#define CAPS_ROLL_FEED 0x00040000
#define CAPS_D_SIZE_PAPER 0x00080000
#define CAPS_E_SIZE_PAPER 0x00100000
#define CAPS_PPM_COLOR 0x00200000
#define CAPS_COLORSMART 0x00400000
#define CAPS_CRET 0x00800000
#define CAPS_DPI 0x01000000
#define CAPS_TRAY3 0x02000000
#define GRAYSCALE_8BIT 0x00000001
typedef struct {
DWORD flags;
DWORD installedRAM;
HPBOOL bDuplex;
HPBOOL bPostScript;
HPBOOL bPCL;
HPBOOL bHPGL2;
HPBOOL bDisk; /* This means we can get OT_PERIPHERAL_DISK */
HPBOOL bHCO; /* This means we have one or more HCOs */
HPBOOL bHCI; /* This means we have one or more HCIs */
HPBOOL bPML;
HPBOOL bPowerSave;
HPBOOL bSIR;
HPBOOL bColor;
DWORD dwGrayScale; /* 0=no support, 1=8 bit grayscale, more in future */
HPBOOL b11x17;
HPBOOL bMediaInfo; /* This means we can get OT_PERIPHERAL_INPUT_TRAYS */
HPBOOL bOutputInfo; /* This means we can get OT_PERIPHERAL_OUTPUT_BINS */
HPBOOL bEnvlFeeder; /* This means we have one or more envl feeders */
DWORD pagesPerMinute;
DWORD pagesPerMinuteColor;
HPBOOL bRollFeed; /* Plotters only, means that roll feed is available */
HPBOOL bDSizePaper; /* TRUE for D size paper */
HPBOOL bESizePaper; /* TRUE for E size paper */
HPBOOL bColorSmart; /* TRUE for ColorSmart capability */
HPBOOL bCREt; /* TRUE for CREt capability */
HPBOOL bDPI; /* TRUE for displaying printer dpi */
HPBOOL bTray3; /* used for elkhorn */
} PeripheralCaps, FAR *LPPeripheralCaps;
/* OT_PERIPHERAL_DISK */
#define SET_INITIALIZE 0x00000001
#define SET_PROTECT 0x00000002
#define WP_READ_WRITE 1
#define WP_READ 2
#define WP_NO_ACCESS 3
typedef struct {
DWORD flags; /* use defines above */
DWORD capacity; /* bytes */
DWORD freeSpace; /* bytes */
DWORD writeProtectStatus;
HPBOOL bInitialized;
TCHAR modelNumber[80];
TCHAR manufactInfo[80];
} PeripheralDisk, FAR *LPPeripheralDisk;
/* OT_PERIPHERAL_INPUT_TRAYS */
typedef struct {
DWORD numTrays;
TrayStruct inputTrays[4];
} PeripheralInputTrays, FAR *LPPeripheralInputTrays;
/* OT_PERIPHERAL_HCI */
typedef struct {
TCHAR modelNumber[80];
TCHAR manufactInfo[80];
DWORD numTrays;
TrayStruct inputTrays[4];
} PeripheralHCI, FAR *LPPeripheralHCI;
/* OT_PERIPHERAL_HCO */
#define SET_MODE 0x00000001
#define SET_BINS 0x00000002
/* Constants to define the current mode of the HCO */
#define HCO_STACKERMODE 1
#define HCO_MAILBOXMODE 2
#define HCO_SEPARATORMODE 3
#define HCO_COLLATORMODE 4
/* Constants to define the stacking order in an output bin
** Used in BinStruct
*/
#define CORRECT_ORDER_OUT 3
#define REVERSE_ORDER_OUT 4
typedef struct {
DWORD flags; /* use defines above */
TCHAR modelNumber[80];
TCHAR manufactInfo[80];
DWORD HCOmode;
DWORD numBins;
BYTE modeBuf[16];
BinStruct outputBins[9];
} PeripheralHCO, FAR *LPPeripheralHCO;
/* OT_PERIPHERAL_CONFIG_CHANGE */
typedef struct {
DWORD changeCount;
} PeripheralConfigChange;
/* OT_PERIPHERAL_INSTALLED_PHD */
/* Constants to define types of Paper Handling Devices */
#define INPUT_PHD 10
#define OUTPUT_PHD 11
#define OUTPUT_BINDING_PHD 13
typedef struct {
DWORD PHDtype;
HCOMPONENT PHDhandle;
} PHDtype;
typedef struct {
DWORD PHDtype;
TCHAR PHDmodel[80];
HCOMPONENT PHDhandle;
} PHDtype_model;
typedef struct {
DWORD numPHD;
PHDtype installed[6];
} PeripheralInstalledPHDtype;
typedef struct {
DWORD numPHD;
PHDtype_model installed[6];
} PeripheralInstalledPHD;
/* OT_PERIPHERAL_OUTPUT_BINS */
typedef struct {
DWORD numBins;
BinStruct outputBins[2];
} PeripheralOutputBins;
/* OT_PERIPHERAL_ENVL_FEEDER */
typedef struct {
TCHAR modelNumber[80];
TCHAR manufactInfo[80];
DWORD numTrays;
TrayStruct inputTrays[2];
} PeripheralEnvl;
/* Media type constants used in OT_PERIPHERAL_ENABLED_MEDIA */
#define MEDIA_PLAIN 0
#define MEDIA_PREPRINTED 1
#define MEDIA_LETTERHEAD 2
#define MEDIA_TRANSPARENCY 3
#define MEDIA_PREPUNCHED 4
#define MEDIA_LABELS 5
#define MEDIA_BOND 6
#define MEDIA_RECYCLED 7
#define MEDIA_COLOR 8
#define MEDIA_CARDSTOCK 9
#define MEDIA_USERTYPE1 10
#define MEDIA_USERTYPE2 11
#define MEDIA_USERTYPE3 12
#define MEDIA_USERTYPE4 13
#define MEDIA_USERTYPE5 14
typedef struct {
DWORD mediaID; /* mediaID refers to the media type constants in bh.h */
TCHAR mediaName[32];
TCHAR controlPanelName[16];
} MediaNameID;
typedef struct {
DWORD numNames;
MediaNameID names[16];
} PeripheralEnabledMedia;
/* OT_PERIPHERAL_FONT_INFO */
#define P_F_I_DOWNLOADER_SIZE 32
#define P_F_I_DESCRIPTION_SIZE 128
#define P_F_I_GLOBAL_NAME_SIZE 128
#define P_F_I_FILEPATH_SIZE 128
#define P_F_I_VERSION_SIZE 64
#define P_F_I_APPLICATION_SPECIFIC_SIZE 128
typedef struct {
HCOMPONENT fontHandle;
DWORD size;
DWORD location;
TCHAR downloader[P_F_I_DOWNLOADER_SIZE];
TCHAR description[P_F_I_DESCRIPTION_SIZE];
TCHAR globalName[P_F_I_GLOBAL_NAME_SIZE];
TCHAR version[P_F_I_VERSION_SIZE];
TCHAR applicationSpecificData[P_F_I_APPLICATION_SPECIFIC_SIZE];
} PeripheralFontInfo;
/* Get a list of all fonts on the disk that includes */
#define MAX_FONTLIST2_CNT 100
typedef struct FONTINFO2 {
HCOMPONENT fontHandle;
TCHAR globalName[P_F_I_GLOBAL_NAME_SIZE];
} FontInfo2, FAR *LPFontInfo2;
/* OT_PERIPHERAL_FONT_LIST2 */
typedef struct {
DWORD dwSegNum; /* 0-based grouping block of fonts */
DWORD numFonts;
FontInfo2 fonts[MAX_FONTLIST2_CNT];
} PeripheralFontList2;
/* Constants to define Mass Storage Device Types. Used in
** OT_PERIPHERAL_MASS_STORAGE, OT_PERIPHERAL_DISK, OT_DOWNLOAD_FONT
**/
#define MS_ANY_LOCATION 0
#define MS_DISK 1
/* OT_PERIPHERAL_DOWNLOAD_FONT */
typedef struct {
DWORD location; /* use RRM_ANY_LOCATION */
HCOMPONENT fontHandle;
TCHAR description[P_F_I_DESCRIPTION_SIZE];
TCHAR filepath[P_F_I_FILEPATH_SIZE];
TCHAR downloader[P_F_I_DOWNLOADER_SIZE];
TCHAR applicationSpecificData[P_F_I_APPLICATION_SPECIFIC_SIZE];
} PeripheralDownloadFont;
/* OT_PERIPHERAL_DELETE_FONT */
typedef struct {
HCOMPONENT fontHandle;
TCHAR username[32];
} PeripheralDeleteFont;
/* OT_PERIPHERAL_MS_CHANGE */
typedef struct {
DWORD mschange;
} PeripheralMSChange;
/* OT_PERIPHERAL_MASS_STORAGE */
/* Constants to define Mass Storage Device Types. Used in */
/* OT_PERIPHERAL_MASS_STORAGE, OT_PERIPHERAL_DISK, OT_DOWNLOAD_FONT */
#define MS_ANY_LOCATION 0
#define MS_DISK 1
#define MS_FLASH 2
typedef struct {
DWORD MStype; /* MS_DISK or MS_FLASH in bh.h */
HCOMPONENT MShandle;
} MStype_handle;
typedef struct {
DWORD MScount;
DWORD MaxFileHandles;
DWORD MSConfigChange;
MStype_handle installed[6];
} PeripheralMassStorage;
/* OT_PERIPHERAL_RPC_BOUND */
typedef struct {
BYTE buf[40];
DWORD bufLen;
} ProtocolInfo;
typedef struct {
ProtocolInfo stacks[4];
DWORD numStacks;
HPBOOL bSupported;
} PeripheralRPCBound;
#define MAX_PROTOCOLS 4
/* OT_PERIPHERAL_CAPABILITIES2 */
#define CAPS2_PJL 0x00000001
#define CAPS2_STAPLER 0x00000002
#define CAPS2_FAX 0x00000004
#define CAPS2_PROOF_N_HOLD 0x00000008
#define CAPS2_ADF 0x00000010
#define CAPS2_OPTICAL_RES 0x00000020
#define CAPS2_PJL_COLLATION 0x00000040
#define CAPS2_ENHANCED_RES 0x00000080
typedef struct {
DWORD flags; /* one bit to enable each DWORD entry in the struct, using the CAPS2_DW_* */
HPBOOL bPJL; /* TERN_TRUE if PJL supported? */
HPBOOL bStapler; /* TERN_TRUE if a stapler is present */
HPBOOL bFAX; /* TERN_TRUE if a fax is present */
HPBOOL bProofNHold; /* TERN_TRUE if Proof N Hold */
DWORD dwADFSpeedSize; /* If an automatic document feed is present, PPM speed in high word, capacity in low word */
DWORD dwOpticalRes; /* Optical resolution for scanners */
DWORD dwEnhancedRes; /* Enhanced resolution for scanners */
HPBOOL bPJLCollation; /* TRUE if device is TOPAZ capable (i.e. PJL_COLLATED_ORIGINALS_SUPPORTED is TRUE */
DWORD dwReserved[24]; /* -- place-holders for new definitions -- */
} PeripheralCaps2, FAR *LPPeripheralCaps2;
/* OT_PERIPHERAL_PLOTTER_STATUS */
typedef struct {
DWORD PlotterErrors; /* NOT-READY-PRINTER */
DWORD PlotterPrintEngineErrors; /* NOT-READY-DESTINATION-PRINT-ENGINE */
DWORD PlotterPrintEngineWarnings; /* STATUS-DESTINATION-PRINT-ENGINE */
DWORD PlotterActivity; /* NOT-IDLE */
DWORD PlotterPrintEngineActivity; /* NOT-IDLE-DESTINATION-PRINT-ENGINE */
} PeripheralPlotterStatus;
/* OT_PERIPHERAL_PLOTTER_INPUT_TRAY */
typedef struct {
DWORD mediaFormat; /* TRAY1-MEDIA-SIZE-LOADED */
DWORD mediaLength; /* TRAY1-CUSTOM-MEDIA-WIDTH */
DWORD mediaWidth; /* TRAY1-CUSTOM-MEDIA-LENGTH */
DWORD mediaName; /* TRAY1-MEDIA-TYPE */
} PeripheralPlotterInputTray;
/* OT_PERIPHERAL_CURRENT_PRINT_POSITION */
typedef struct {
DWORD dwInches; /* Inches from top of page */
} PeripheralCurrentPosition;
/* OT_PERIPHERAL_TOTAL_PREMATURE_PAGE_EJECT */
typedef struct {
DWORD dwTotal;
} PeripheralPrematureEject;
/* OT_PERIPHERAL_MARKING_AGENTS_INITIALIZED */
typedef struct {
HPBOOL bAgent1Initialized;
HPBOOL bAgent2Initialized;
HPBOOL bAgent3Initialized;
HPBOOL bAgent4Initialized;
} PeripheralAgentsInit;
/* OT_PERIPHERAL_POWER_DOWN_STATE */
typedef struct {
DWORD dwState;
} PeripheralPowerDownState;
/* OT_PERIPHERAL_NOT_IDLE */
typedef struct {
HPBOOL bSourceIO;
HPBOOL bSourceScanner;
HPBOOL bSourceFaxReceive;
HPBOOL bProcessingPDL;
HPBOOL bDestinationPrintEngine;
HPBOOL bDestinationFaxSend;
HPBOOL bDestinationUpload;
} PeripheralNotIdle;
/* OT_PERIPHERAL_MEMORY_OVERFLOW */
typedef struct {
DWORD dwDataOverflow;
DWORD dwResourceOverflow;
} PeripheralMemoryOverflow;
/* OT_PERIPHERAL_BIDI_MONITOR */
//
// This structure is used to pass a GetPrinterDataFromPort
// request from a port monitor down to COLA to allow an
// applet to respond to it. This is generally used for
// bidi driver support.
//
typedef struct {
DWORD ControlID; // Control ID (not usually used)
LPTSTR pValueName; // Key to retrieve in UNICODE, non-localized format
LPTSTR lpInBuffer; // Input buffer for specifying additional info.
DWORD cbInBuffer; // Size of the input buffer.
LPTSTR lpOutBuffer; // Buffer to return the key value info in.
DWORD cbOutBuffer; // Size of the return buffer.
LPDWORD lpcbReturned; // Number of bytes returned in the input buffer or
// size needed if return code is RC_BUFFER_OVERFLOW.
} PeripheralBidiMonitor;
// Types for String Manipulation used by scanner objects.
#define SSNET_MAX_DOMAIN_NAME_LENGTH 64
#define SSNET_MAX_SERVER_NAME_LENGTH 64
#define SSNET_MAX_NET_SCANNER_NAME_LENGTH 32
#define SSNET_SAP_STRING_LENGTH 64
#define SSNET_MAX_NET_OBJECT_NAME_LENGTH 128
#define SSNET_MAX_NET_OBJECT_PSWD_LENGTH 32
#define SSNET_MAX_MODEL_NAME_LENGTH 64
#define SSNET_MAX_DESCRIPTION_LENGTH 128
#define SSNET_MAX_VERSION_STRING_LENGTH 32
#define SSNET_MAX_ASSET_NUMBER_LENGTH 32
#define SSNET_MAX_CP_PSWD_LENGTH 32
#define SSNET_MAX_SYMBOLIC_NAME_LENGTH 32
#define SSNET_MAX_TITLE_NAME_LENGTH 32
#define SSNET_MAX_FAX_NUMBER_LENGTH 64
#define SSNET_MAX_VOLUME_NAME_LENGTH 32
#define SSNET_MAX_PATH_NAME_LENGTH 128
#define SSNET_MAX_FILE_NAME_LENGTH 32
#define SSNET_MAX_CONTEXT_LENGTH 256
#define SSNET_MAX_APPLICATION_NAME_LENGTH 96
#define SSNET_MAX_APPLICATION_TAG_LENGTH 96
#define SSNET_MAX_ACCTKEY_LENGTH 32
#define SSNET_NETWORK_ADDRESS_LENGTH 32
// OT_SCANNER_CONFIG (OBJ_SNMP)
typedef struct
{
// MIB object: OID_scanner_scnName
TCHAR szScannerName[SSNET_MAX_NET_SCANNER_NAME_LENGTH];
// MIB object: OID_scanner_scnDescription
TCHAR szDescription[SSNET_MAX_DESCRIPTION_LENGTH];
} ScannerConfig, FAR* LPScannerConfig;
// OT_SCANNER_DETAILS (OBJ_SNMP)
// Network Scanner Model Numbers
#define SSNET_UNKNOWN_MODEL 0x00
#define SSNET_HP_SCANJET4SI_MODEL 0x01
#define SSNET_HP_PAGETAKER_MODEL 0x02
// Network Scanner Localizzation Language Types
#define SSNET_UNKNOWN_LANG 0x00
#define SSNET_ENGLISH_LANG 0x01
#define SSNET_FRENCH_LANG 0x02
#define SSNET_GERMAN_LANG 0x03
#define SSNET_ITALIAN_LANG 0x04
#define SSNET_SPANISH_LANG 0x05
#define SSNET_PORTOGUESE_LANG 0x0B
// Network Scanner Paper Size Types
#define SSNET_UNKNOWN_PAPER 0x00
#define SSNET_LETTER_PAPER 0x01
#define SSNET_A4_PAPER 0x02
#define SSNET_LEGAL_PAPER 0x04
// Network Scanner Protocol Stack Types
#define SSNET_UNKNOWN_STACK 0x00
#define SSNET_NETWARE_NCP_IPX_STACK 0x01
#define SSNET_INTERNET_TCPIP_STACK 0x02
// Network Ethernet Frame Types
#define SSNET_UNKNOWN_FRAME 0x00
#define SSNET_ETH802_2_FRAME 0x01
#define SSNET_ETH802_3_FRAME 0x02
#define SSNET_ETHSNAP_FRAME 0x03
#define SSNET_ETHII_FRAME 0x04
// Network Token-Ring Frame Types
#define SSNET_TKR_FRAME 0x01
#define SSNET_TKRSNAP_FRAME 0x02
typedef struct
{
// MIB object : OID_scanner_scnModel
TCHAR szModelName[SSNET_MAX_MODEL_NAME_LENGTH];
// MIB object : OID_scanner_scnModelNum
DWORD dwModelNumber;
// MIB object : OID_scanner_scnCPLanguage
DWORD dwLanguage;
// MIB object : OID_scanner_scnPaperSize
DWORD dwDefaultPaperSize;
// MIB object : OID_scanner_scnNetEnvironment_neProtocols
DWORD dwProtocolStacks;
// MIB object : OID_scanner_scnNetEnvironment_neIPXFrameType
DWORD dwIPXFrameType;
// MIB object : OID_scanner_scnNetEnvironment_neIPFrameType
DWORD dwIPFrameType;
// MIB object :
DWORD dwTokenRingSpeed;
} ScannerDetails, FAR* LPScannerDetails;
// OT_SCANNER_DETAILS_ADVANCED (OBJ_SNMP)
typedef struct
{
// MIB object : OID_scanner_FWDate
TCHAR szFWDate[32];
// MIB object : OID_scanner_scnFWVer
TCHAR szFWVersion[32];
// MIB object : OID_scanner_scnGuest
DWORD dwScannerGuest;
// MIB object : OID_scanner_scnAssetNum
TCHAR szAssetNumber[SSNET_MAX_ASSET_NUMBER_LENGTH];
// MIB object : OID_scanner_scnNetEnvironment_neTimeNetEnvID
DWORD dwRefTimeNetEnvID;
// MIB object : OID_scanner_scnNetEnvironment_neSAPString
TCHAR szSAPString[SSNET_SAP_STRING_LENGTH];
// MIB object : OID_scanner_scnScannedPages
DWORD dwScannedPages;
} ScannerDetailsAdvanced, FAR* LPScannerDetailsAdvanced;
// OT_SCANNER_STATUS (OBJ_SNMP)
// define Scanner Status values
#define SSNET_SCANNER_STATUS_UNDEFINED 0x00000000
#define SSNET_SCANNER_STATUS_READY 0x00000001
#define SSNET_SCANNER_STATUS_FEEDING 0x00000002
#define SSNET_SCANNER_STATUS_PROCESSING 0x00000003
#define SSNET_SCANNER_STATUS_FAULT 0x00000004
typedef struct
{
// MIB object : OID_scanner_scnStatus
DWORD dwStatus;
}ScannerStatus,FAR* LPScannerStatus;
// Domain Types
#define SSNET_UNKNOWN_NETWORK 0x00
#define SSNET_NW3X_NETWORK 0x01
#define SSNET_NW4X_NETWORK 0x02
#define SSNET_NT3X_NETWORK 0x03
#define SSNET_LM2X_NETWORK 0x05
#define SSNET_LS3X_NETWORK 0x04
#define SSNET_LS4X_NETWORK 0x04
/****************************************************************************/
// OT_SCANNER_REMOTE_COMMAND (OBJ_SNMP | OBJ_SSNET)
// only SetObject call on this object
// This object is used to send NSRCI commands to the scanner, see NSRCI1.DOC document
// MIB object: OID_scanner_scnCommand
// defines for command syntax
#define SSNET_RCI_HEADER { 0x42, 0x48, 0x00}
// op Codes
#define SSNET_RCI_ADD 0x01
#define SSNET_RCI_DELETE 0x02
#define SSNET_RCI_DOWNLOAD 0x10
#define SSNET_RCI_UPDATE 0x20
#define SSNET_RCI_REPLACE 0x21
#define SSNET_RCI_CHANGE_PARAMS 0xF0
// SubOp Codes
#define SSNET_RCI_CONFIG_PARAMS 0x00
#define SSNET_RCI_NET_ENV 0x01
#define SSNET_RCI_LANFAX 0x02
#define SSNET_RCI_USER 0x11
#define SSNET_RCI_PRINTER 0x12
#define SSNET_RCI_FAX 0x13
#define SSNET_RCI_DLIST 0x14
#define SSNET_RCI_DLIST_ENTRY 0x15
#define SSNET_RCI_SCANNING_SETTING 0x21
#define SSNET_RCI_ACCOUNTING 0x31
#define SSNET_RCI_ACTIVITIES_LOG 0x41
#define SSNET_RCI_INTERACTIONS_LOG 0x42
#define SSNET_RCI_FIRMWARE 0x51
#define SSNET_RCI_GUEST_USER 0x01
#define SSNET_RCI_CP_PSWD 0x02
#define SSNET_RCI_CP_STATUS 0x03
#define SSNET_RCI_SCANNED_PAGES 0x04
// Define the buffer size.
#define SSNET_RCI_BUFFER_LENGTH 400
typedef struct
{
BYTE buffer[SSNET_RCI_BUFFER_LENGTH];
BYTE Reserved[SSNET_RCI_BUFFER_LENGTH];
}ScannerCommand, FAR * LPScannerCommand;
/****************************************************************************/
// OT_SCANNER_NETWORK_ENVIRONMENTS_CONFIGURED (OBJ_SNMP )
typedef struct
{
// MIB object : OID_scanner_scnNetEnvironment_neTable_neType
DWORD dwNetworkType;
// MIB object : OID_scanner_scnNetEnvironment_neTable_neDomain
TCHAR szDomainName[SSNET_MAX_DOMAIN_NAME_LENGTH];
} SSNETDomainInfo;
// Network Access
#define SSNET_REDIRECTOR_ACCESS 0x01
#define SSNET_NSJTP_ACCESS 0x02
typedef struct NETENVINFO
{
SSNETDomainInfo Domain;
// MIB object : OID_scanner_scnNetEnvironment_neTable_neNodeName
TCHAR szNodeName[SSNET_MAX_SERVER_NAME_LENGTH];
// MIB object : OID_scanner_scnNetEnvironment_neTable_neNodeAddr
BYTE NodeAddress[SSNET_NETWORK_ADDRESS_LENGTH];
// MIB object : OID_scanner_scnNetEnvironment_neTable_neContext
TCHAR szContext[SSNET_MAX_CONTEXT_LENGTH];
// MIB object : OID_scanner_scnNetEnvironment_neTable_neEnvID
DWORD dwNetEnvID;
}NetEnvInfo, FAR* LPNetEnvInfo;
typedef struct
{
DWORD dwCount;
DWORD dwBufferSize;
LPNetEnvInfo lpFirstEnv;
} NetEnvConfigured, FAR * LPNetEnvConfigured;
/****************************************************************************/
// OT_SCANNER_PUBLIC_USER_DEST_CONFIGURED (OBJ_SNMP)
// define user types Sender/Receiver
#define SSNET_SENDER 0x01
#define SSNET_RECEIVER_ONLY 0x02
#define SSNET_SENDER_TO_ALL 0x03
typedef struct PUBLICUSERDEST
{
// MIB object : OID_scanner_scnUsers_usTable_usType
DWORD dwUserType;
// MIB object : OID_scanner_scnUsers_usTable_usName
TCHAR szName[SSNET_MAX_SYMBOLIC_NAME_LENGTH];
TCHAR szPswd[SSNET_MAX_CP_PSWD_LENGTH];
// MIB object : OID_scanner_scnUsers_usTable_usNetObject
TCHAR szObject[SSNET_MAX_NET_OBJECT_NAME_LENGTH];
// MIB object : OID_scanner_scnUsers_usTable_usNetEnvID
DWORD dwNetEnvID;
} PublicUserDest, FAR* LPPublicUserDest;
// use PublicDestConfigured structure to get the following objects
// OT_SCANNER_PUBLIC_USER_DEST_CONFIGURED
// OT_SCANNER_PUBLIC_PRINTER_DEST_CONFIGURED
// OT_SCANNER_PUBLIC_FAX_DEST_CONFIGURED
// OT_SCANNER_PUBLIC_DLIST_DEST_CONFIGURED
// OT_SCANNER_PUBLIC_SETTINGS_CONFIGURED
// OT_SCANNER_PUBLIC_PRINTER_CLASS_CONFIGURED
#define SSNET_CHANGE_PWD 0x00000003
typedef struct
{
DWORD dwOperation;
DWORD dwCount;
DWORD dwBufferSize;
LPVOID lpFirstEntry;
} PublicDestConfigured, FAR * LPPublicDestConfigured;
/****************************************************************************/
// OT_SCANNER_PRIVATE_USER_DEST_CONFIGURED (OBJ_SSNET)
// SetObject and GetObject on this object
typedef struct PRIVATEUSERDEST
{
TCHAR szName[SSNET_MAX_SYMBOLIC_NAME_LENGTH];
SSNETDomainInfo Domain;
TCHAR szObjectName[SSNET_MAX_NET_OBJECT_NAME_LENGTH];
TCHAR szNodeName[SSNET_MAX_SERVER_NAME_LENGTH];
BYTE bNodeAddress[SSNET_NETWORK_ADDRESS_LENGTH];
DWORD dwShow;
TCHAR szOrigin[SSNET_MAX_SYMBOLIC_NAME_LENGTH];
} PrivateUserDest, FAR* LPPrivateUserDest;
#define SSNET_ADD 0x00000001
#define SSNET_DELETE 0x00000002
// use PrivateDestConfigured structure to get the following objects
// OT_SCANNER_PRIVATE_USER_DEST_CONFIGURED
// OT_SCANNER_PRIVATE_PRINTER_DEST_CONFIGURED
// OT_SCANNER_PRIVATE_FAX_DEST_CONFIGURED
// OT_SCANNER_PRIVATE_DLIST_DEST_CONFIGURED
// OT_SCANNER_PRIVATE_SCANNING_SETTING_CONFIGURED
// OT_SCANNER_PRIVATE_AUTOFLOW_CONFIGURED
typedef struct
{
DWORD dwCount;
DWORD dwOperation; // SSNET_ADD or SSNET_DELETE
TCHAR UNC_WA_Path[SSNET_MAX_PATH_NAME_LENGTH];
DWORD dwBufferSize;
LPVOID lpFirstEntry;
} PrivateDestConfigured, FAR * LPPrivateDestConfigured;
/****************************************************************************/
// OT_SCANNER_PUBLIC_USER_ACCOUNTING (OBJ_SNMP)
// only GetObject on this object
typedef struct USERACCT
{
// MIB object : OID_scanner_scnUsers_usTable_usName
TCHAR szName[SSNET_MAX_SYMBOLIC_NAME_LENGTH];
// MIB object : OID_scanner_scnUsers_usTable_usType
DWORD dwUserType;
// MIB object : OID_scanner_scnUsers_usTable_usNetObject
TCHAR szObject[SSNET_MAX_NET_OBJECT_NAME_LENGTH];
// MIB object : OID_scanner_scnUsers_usTable_usNetEnvID
DWORD dwNetEnvID;
// MIB object : OID_scanner_scnUsers_usTable_usDistDocs
DWORD dwDistributedDocs;
// MIB object : OID_scanner_scnUsers_usTable_usDistPages
DWORD dwDistributedPages;
// MIB object : OID_scanner_scnUsers_usTable_usScannedDocs
DWORD dwScannedDocs;
// MIB object : OID_scanner_scnUsers_usTable_usScannedPages
DWORD dwScannedPages;
// MIB object : OID_scanner_scnUsers_usTable_usCopiedDocs
DWORD dwCopiedDocs;
// MIB object : OID_scanner_scnUsers_usTable_usCopiedPages
DWORD dwCopiedPages;
// MIB object : OID_scanner_scnUsers_usTable_usFaxedDocs
DWORD dwFaxedDocs;
// MIB object : OID_scanner_scnUsers_usTable_usFaxedPages
DWORD dwFaxedPages;
// MIB object : OID_scanner_scnUsers_usTable_usLastAccess
DWORD dwLastAccess;
} UserAcct, FAR* LPUserAcct;
/****************************************************************************/
// OT_SCANNER_PUBLIC_PRINTER_DEST_CONFIGURED (OBJ_SNMP)
// Network Printer Access Types
#define SSNET_LPR_ACCESS 0x10
#define SSNET_PORT9100_ACCESS 0x11
typedef struct PUBLICPRINTERDEST
{
// MIB object : OID_scanner_scnPrinters_prTable_prName
TCHAR szName[SSNET_MAX_SYMBOLIC_NAME_LENGTH];
// MIB object : OID_scanner_scnPrinters_prTable_prClass
TCHAR szPrinterClass[SSNET_MAX_SYMBOLIC_NAME_LENGTH];
// MIB object : OID_scanner_scnPrinters_prTable_prNetEnvID
DWORD dwNetEnvID;
// MIB object : OID_scanner_scnPrinters_prTable_prNetObject
TCHAR szNetObject[SSNET_MAX_NET_OBJECT_NAME_LENGTH];
// MIB object : OID_scanner_scnPrinters_prTable_prNetNode
TCHAR szNodeName[SSNET_MAX_SERVER_NAME_LENGTH];
// MIB object : OID_scanner_scnPrinters_prTable_prNetAddress
BYTE bNodeAddress[SSNET_NETWORK_ADDRESS_LENGTH];
// MIB object : OID_scanner_scnPrinters_prTable_prNetAccess
DWORD dwNetAccess;
} PublicPrinterDest, FAR* LPPublicPrinterDest;
/****************************************************************************/
// OT_SCANNER_PRIVATE_PRINTER_DEST_CONFIGURED (OBJ_SSNET)
// SetObject and GetObject on this object
typedef struct PRIVATEPRINTERDEST
{
TCHAR szName[SSNET_MAX_SYMBOLIC_NAME_LENGTH];
TCHAR szClass[SSNET_MAX_SYMBOLIC_NAME_LENGTH];
SSNETDomainInfo strDomain;
TCHAR szObjectName[SSNET_MAX_NET_OBJECT_NAME_LENGTH];
TCHAR szNodeName[SSNET_MAX_SERVER_NAME_LENGTH];
BYTE bNodeAddress[SSNET_NETWORK_ADDRESS_LENGTH];
DWORD dwNetAccess;
DWORD dwShow;
TCHAR szOrigin[SSNET_MAX_SYMBOLIC_NAME_LENGTH];
} PrivatePrinterDest, FAR* LPPrivatePrinterDest;
/****************************************************************************/
// OT_SCANNER_PUBLIC_FAX_DEST_CONFIGURED (OBJ_SNMP)
// only SetObject on this object
typedef struct PUBLICFAXDEST
{
// MIB object : OID_scanner_scnFaxes_faxTable_faxName
TCHAR szName[SSNET_MAX_SYMBOLIC_NAME_LENGTH];
// MIB object : OID_scanner_scnFaxes_faxTable_faxPhoneNum
TCHAR szNumber[SSNET_MAX_FAX_NUMBER_LENGTH +1];
// MIB object : OID_scanner_scnFaxes_faxTable_faxRetry
DWORD dwRetry;
// MIB object :
TCHAR szFaxAccountingKey[SSNET_MAX_ACCTKEY_LENGTH +1];
} PublicFaxDest,FAR * LPPublicFaxDest;
/****************************************************************************/
// OT_SCANNER_PRIVATE_FAX_DEST_CONFIGURED (OBJ_SSNET)
// SetObject and GetObject on this object
typedef struct PRIVATEFAXDEST
{
TCHAR szName[SSNET_MAX_SYMBOLIC_NAME_LENGTH];
TCHAR szNumber[SSNET_MAX_FAX_NUMBER_LENGTH];
DWORD dwRetry;
TCHAR szFaxAccountingKey[SSNET_MAX_ACCTKEY_LENGTH];
DWORD dwShow;
TCHAR szOrigin[SSNET_MAX_SYMBOLIC_NAME_LENGTH];
} PrivateFaxDest,FAR * LPPrivateFaxDest;
/****************************************************************************/
// OT_SCANNER_PUBLIC_DLIST_CONFIGURED (OBJ_SNMP)
typedef struct PUBLICDLISTINFO
{
// MIB object : OID_scanner_scnDLs_dlTable_dlName
TCHAR szName[SSNET_MAX_SYMBOLIC_NAME_LENGTH];
// MIB object : OID_scanner_scnDLs_dlTable_dlDestinationsNumber
DWORD dwDestinationsCount; //number of destinations in d. list
} DListInfo, FAR* LPDListInfo;
// Distribution List Entry type
#define SSNET_DLIST_USER_ENTRY 0x01
#define SSNET_DLIST_PRINTER_ENTRY 0x02
#define SSNET_DLIST_FAX_ENTRY 0x03
typedef struct DLISTENTRY
{
// MIB object : OID_scanner_scnDLs_dlTable_dlDestName
TCHAR szName[SSNET_MAX_SYMBOLIC_NAME_LENGTH];
} DListEntry, FAR* LPDListEntry;
typedef struct
{
DWORD dwDLsCount;
DWORD dwDestsCount;
DWORD dwDLsBufferSize;
DWORD dwDestsBufferSize;
LPDListInfo lpFirstEntry;
LPDListEntry lpFirstDest;
} PublicDListConfigured, FAR * LPPublicDListConfigured;
/****************************************************************************/
// OT_SCANNER_PRIVATE_DLIST_CONFIGURED (OBJ_SSNET)
typedef struct
{
DWORD dwDLsCount;
DWORD dwDestsCount;
DWORD dwDLsBufferSize;
DWORD dwDestsBufferSize;
DWORD dwOperation;
TCHAR UNC_WA_Path[SSNET_MAX_PATH_NAME_LENGTH];
LPDListInfo lpFirstEntry;
LPDListEntry lpFirstDest;
} PrivateDListConfigured, FAR * LPPrivateDListConfigured;
/****************************************************************************/
// OT_SCANNER_PRINTER_CLASSES_CONFIGURED
typedef struct
{
// MIB object : OID_scanner_scnPrinterClasses_pcTable_pcName
TCHAR szName[SSNET_MAX_SYMBOLIC_NAME_LENGTH];
DWORD dwResolution;
BYTE ToneMap[256];
}ScannerPrinterClasses, FAR * LPScannerPrinterClasses;
typedef struct
{
DWORD dwCount;
DWORD dwBufferSize;
LPVOID lpFirstEntry;
} PrinterClassesConfigured, FAR * LPPrinterClassesConfigured;
/****************************************************************************/
// OT_SCANNER_PRIVATE_SCANNING_SETTING_CONFIGURED (OBJ_SSNET)
// OT_SCANNER_PUBLIC_SCANNING_SETTING_CONFIGURED (OBJ_SNMP)
// Network Scanning Setting Types
#define SSNET_USER_SCANNING_SETTING 0x01
#define SSNET_PRINTER_SCANNING_SETTING 0x02
#define SSNET_FAX_SCANNING_SETTING 0x04
// Compression types
#define SSNET_NO_COMPRESSION 0x00
#define SSNET_PACKBITS_COMPRESSION 0x01
#define SSNET_G3_COMPRESSION 0x02
#define SSNET_G4_COMPRESSION 0x03
// format types
#define SSNET_TIFF_SINGLEPAGE 0x01
#define SSNET_TIFF_MULTIPAGE 0x02
#define SSNET_VISIONEER_MAX 0x03
#define SSNET_PCL5 0x04
#define SSNET_PCX 0x06
typedef struct SCANNINGSETTINGINFO
{
// MIB object : OID_scanner_scnSettings_ssTable_ssType
DWORD dwType;
// MIB object : OID_scanner_scnSettings_ssTable_ssName
TCHAR szName[SSNET_MAX_SYMBOLIC_NAME_LENGTH];
// MIB object : OID_scanner_scnSettings_ssTable_ssResolution
DWORD dwResolution;
// MIB object : OID_scanner_scnSettings_ssTable_ssScaling
DWORD dwScaling;
// MIB object : OID_scanner_scnSettings_ssTable_ssOutputDataType
DWORD dwOutputDataType;
// MIB object : OID_scanner_scnSettings_ssTable_ssDitherPattern
DWORD dwDitherPattern;
// MIB object : OID_scanner_scnSettings_ssTable_ssIntensity
DWORD dwIntensity;
// MIB object : OID_scanner_scnSettings_ssTable_ssContrast
DWORD dwContrast;
// MIB object : OID_scanner_scnSettings_ssTable_ssBgControl
DWORD dwBackgroundControl;
// MIB object : OID_scanner_scnSettings_ssTable_ssScanHeight
DWORD dwScanHeight;
// MIB object : OID_scanner_scnSettings_ssTable_ssScanWidth
DWORD dwScanWidth;
// MIB object : OID_scanner_scnSettings_ssTable_ssClass
TCHAR Class[SSNET_MAX_SYMBOLIC_NAME_LENGTH];
// MIB object : OID_scanner_scnSettings_ssTable_ssCompression
DWORD dwCompression;
// MIB object : OID_scanner_scnSettings_ssTable_ssFormat
DWORD dwFormat;
} ScanningSettingInfo, FAR * LPScannerSettingsInfo;
/****************************************************************************/
// OT_SCANNER_PRIVATE_AUTOFLOW_CONFIGURED (OBJ_SSNET)
#define SSNET_AUTOFLOW_SYSTEM_SETTING 0x01
#define SSNET_AUTOFLOW_PRIVATE_SETTING 0x02
typedef struct AUTOFLOWINFO
{
TCHAR szName[SSNET_MAX_SYMBOLIC_NAME_LENGTH];
TCHAR szScanningSettingName[SSNET_MAX_SYMBOLIC_NAME_LENGTH];
DWORD dwScanningSettingType;
TCHAR szApplicationName[SSNET_MAX_APPLICATION_NAME_LENGTH];
TCHAR szApplicationTag[SSNET_MAX_APPLICATION_TAG_LENGTH];
DWORD dwShow;
} AutoflowDestInfo, FAR* LPAutoflowDestInfo;
/****************************************************************************/
// OT_SCANNER_USER_SCANNING_WORKAREA (OBJ_SSNET)
#define SSNET_WA_DELETE_COND 0x00000001
#define SSNET_WA_CREATE 0x00000002
#define SSNET_WA_CLEAR_ACTIVITY_LOG 0x00000003
#define SSNET_WORKAREA_STATUS_UNLOCKED 0x00000004
#define SSNET_WORKAREA_STATUS_LOCKED 0x00000005
#define SSNET_FAX_WORKAREA_CREATE 0x00000006
#define SSNET_WA_DELETE_UNCOND 0x00000007
typedef struct
{
DWORD dwOperation;
DWORD dwNetworkType;
TCHAR szDomain[SSNET_MAX_DOMAIN_NAME_LENGTH];
TCHAR szOwner[SSNET_MAX_NET_OBJECT_NAME_LENGTH];
TCHAR UNC_WA_Path[SSNET_MAX_PATH_NAME_LENGTH];
}WorkAreaPath, FAR * LPWorkAreaPath;
/****************************************************************************/
// OT_SCANNER_SCANNING_NOTIFICATION (OBJ_SSNET)
typedef struct
{
DWORD dwLastAccess;
DWORD dwMask;
TCHAR UNC_WA_Path[SSNET_MAX_PATH_NAME_LENGTH];
DWORD dwNotification;
} ScanningNotification, FAR* LPScanningNotification;
/****************************************************************************/
// OT_SCANNER_DOCUMENTS (OBJ_SSNET)
typedef struct
{
TCHAR szPath[SSNET_MAX_PATH_NAME_LENGTH];
TCHAR szScanner[SSNET_MAX_NET_SCANNER_NAME_LENGTH];
TCHAR szScannerModel [SSNET_MAX_MODEL_NAME_LENGTH];
TCHAR szSender[SSNET_MAX_SYMBOLIC_NAME_LENGTH];
TCHAR szReceiver[SSNET_MAX_SYMBOLIC_NAME_LENGTH];
TCHAR szTitle[SSNET_MAX_TITLE_NAME_LENGTH];
DWORD dwScanningSettingType;
TCHAR szScanningSettingName[SSNET_MAX_SYMBOLIC_NAME_LENGTH];
DWORD dwCompression;
DWORD dwFormat;
DWORD dwDuplex;
TCHAR szApplicationName[SSNET_MAX_APPLICATION_NAME_LENGTH];
TCHAR szApplicationTag[SSNET_MAX_APPLICATION_TAG_LENGTH];
} DocumentInfo, FAR* LPDocumentInfo;
typedef struct
{
DWORD dwDocsCount; // number of docs in WA
DWORD dwPagesCount; // number of pages
DWORD dwOperation; // SSNET_DELETE
TCHAR UNC_WA_Path[SSNET_MAX_PATH_NAME_LENGTH]; //(IN)
DWORD dwDocsBuffSize; // size of buffer for doc file names
DWORD dwPagesBuffSize; // size of buffer for page file names
LPDocumentInfo lpFirstEntry; // pointer to first DocumentInfo struct
LPSTR lpFirstPage; // pointer to first string
} Documents, FAR* LPDocuments;
/****************************************************************************/
// OT_SCANNER_LANFAX_ENVIRONMENTS_CONFIGURED (OBJ_SNMP)
// LAN FAX status
#define SSNET_LANFAX_UNCONFIGURED 0x00000000
#define SSNET_LANFAX_DISABLED 0x00000001
#define SSNET_LANFAX_ENABLED 0x00000002
// resolution
#define SSNET_FAX_FINE 0x00000001
#define SSNET_FAX_SUPER_FINE 0x00000002
// Fax formats
#define SSNET_FAX_TIFF_UNCOMPRESSED 0x01
#define SSNET_FAX_TIFF_PACKBITS 0x02
#define SSNET_FAX_TIFF_G3 0x03
#define SSNET_FAX_TIFF_G4 0x04
#define SSNET_FAX_PCL5 0x05
#define SSNET_FAX_PCX 0x06
#define SSNET_FAX_DCX 0x07
// fax speeds
#define SSNET_FAX_4800 0x01
#define SSNET_FAX_7200 0x02
#define SSNET_FAX_9600 0x03
#define SSNET_FAX_12200 0x04
#define SSNET_FAX_14400 0x05
#define SSNET_FAX_28800 0x06
#define SSNET_FAX_38400 0x07
typedef struct LANFAXENVINFO
{
// MIB object : OID_scanner_scnLanNetEnvironment_faxScannerID
BYTE bReserved[20];
// MIB object : OID_scanner_scnLanNetEnvironment_faxVendor
DWORD dwFaxVendor;
// MIB object : OID_scanner_scnLanNetEnvironment_faxStatus
DWORD dwFaxStatus;
// MIB object : OID_scanner_scnLanNetEnvironment_faxNetEnvID
DWORD dwNetEnvID;
// MIB object : OID_scanner_scnLanNetEnvironment_faxResolution
DWORD dwResolution;
// MIB object : OID_scanner_scnLanNetEnvironment_faxFormatType
DWORD dwFormatType;
// MIB object : OID_scanner_scnLanNetEnvironment_faxMaxTXSpeed
DWORD dwMaxTXSpeed;
// MIB object : OID_scanner_scnLanNetEnvironment_faxECM
DWORD dwErrorCorrectingMode;
// MIB object : OID_scanner_scnLanNetEnvironment_faxDefaultRetry
DWORD dwDefaultRetry;
// MIB object : OID_scanner_scnLanNetEnvironment_faxRetryInterval
DWORD dwInterval;
// MIB object : OID_scanner_scnLanNetEnvironment_faxfaxPrinter
TCHAR szPrinterName[SSNET_MAX_SYMBOLIC_NAME_LENGTH];
// MIB object : OID_scanner_scnLanNetEnvironment_faxAccountingKey
TCHAR szFaxAccountingKey[SSNET_MAX_ACCTKEY_LENGTH];
}LanFaxEnvConfigured, FAR* LPLanFaxEnvInfo;
/****************************************************************************/
//OT_SCANNER_TCPIP_CONFIG (OBJ_SNMP)
typedef struct {
BYTE ipAddr[4];
BYTE mask[4];
BYTE gateway[4];
} ScannerTCPIPConfig;
/****************************************************************************/
//OT_SCANNER_TCP_DIAGS (OBJ_SNMP)
typedef struct {
TCHAR ipAddr[16];
TCHAR mask[16];
TCHAR nextHop[16];
DWORD cok;
DWORD cden;
DWORD cab;
DWORD ckill;
DWORD brec;
DWORD bsnt;
DWORD tbrec;
DWORD tbsnt;
DWORD srec;
DWORD serr;
DWORD siord;
DWORD soord;
DWORD probes;
DWORD sdisc;
DWORD ssent;
DWORD drec;
DWORD ddisc;
DWORD ddisc2;
DWORD dsent;
DWORD drec2;
DWORD iper;
DWORD ader;
DWORD uner;
DWORD dxmt;
DWORD dres;
DWORD drot;
DWORD dval;
DWORD ic01;
DWORD ic02;
DWORD ic03;
DWORD ic04;
DWORD ic05;
DWORD ic06;
DWORD ic07;
DWORD ic08;
DWORD ic09;
DWORD ic10;
DWORD ic11;
DWORD sn01;
DWORD sn02;
DWORD sn03;
DWORD sn04;
DWORD sn05;
DWORD sn06;
DWORD sn07;
DWORD sn08;
} ScannerTCPIPDiags;
#endif /* _PAL_OBJ_H */