Annotation of mstools/samples/printer/enumprt.h, revision 1.1

1.1     ! root        1: /******************************************************************************\
        !             2: *
        !             3: *                                  ENUMPRT.H
        !             4: *
        !             5: \******************************************************************************/
        !             6: 
        !             7: 
        !             8: 
        !             9: /******************************************************************************\
        !            10: *                             SYMBOLIC CONSTANTS
        !            11: \******************************************************************************/
        !            12: 
        !            13: #define MAX_ATTRIBUTES     4   // # of elements in gaAttributes
        !            14: #define MAX_PRIORITIES     4   // # of elements in gaPriorities
        !            15: #define MAX_STATUS         3   // # of elements in gaStatus
        !            16: #define MAX_FIELDS         15  // # of elements in gaFields
        !            17: #define MAX_ORIENTATION    2   // # of elements in gaOrientation
        !            18: #define MAX_PAPERSIZE      41  // # of elements in gaPaperSize
        !            19: #define MAX_DEFAULTSOURCE  16  // # of elements in gaDefaultSource
        !            20: #define MAX_PRINTQUALITY   4   // # of elements in gaPrintQuality
        !            21: #define MAX_COLOR          2   // # of elements in gaColor
        !            22: #define MAX_DUPLEX         3   // # of elements in gaDuplex
        !            23: 
        !            24: #define ERR_MOD_NAME       (LPCTSTR)"Error: PRINTER.EXE (ENUMPRT.C)"
        !            25: 
        !            26: #define BLANKS             "                     \t\t"
        !            27: 
        !            28: /******************************************************************************\
        !            29: *                                  TYPEDEFS
        !            30: \******************************************************************************/
        !            31: 
        !            32: typedef struct tagENUMPRTLOOKUP
        !            33: {
        !            34:   DWORD   dwValue;
        !            35:   LPCSTR  szValue;
        !            36: 
        !            37: } ENUMPRTLOOKUP;
        !            38: 
        !            39: 
        !            40: 
        !            41: /******************************************************************************\
        !            42: *                              GLOBAL VARIABLES
        !            43: \******************************************************************************/
        !            44: 
        !            45: HWND  ghwndEnumPrt;
        !            46: DWORD gdwEnumFlags;
        !            47: char  gszEnumName[BUFSIZE];
        !            48: 
        !            49: LPSTR gaEnumPrt[] =
        !            50: 
        !            51:       { "PRINTER_INFO_1"              ,
        !            52:         "  pDescription:      \t\t%s" ,
        !            53:         "  pName:             \t\t%s" ,
        !            54:         "  pComment:          \t%s"   ,
        !            55:         "PRINTER_INFO_2"              ,
        !            56:         "  pServerName:       \t%s"   ,  // 5
        !            57:         "  pPrinterName:      \t%s"   ,
        !            58:         "  pShareName:        \t%s"   ,
        !            59:         "  pPortName:         \t%s"   ,
        !            60:         "  pDriverName:       \t%s"   ,
        !            61:         "  pComment:          \t%s"   ,  // 10
        !            62:         "  pLocation:         \t%s"   ,
        !            63:         "  pDevMode           \t"     ,
        !            64:         "    dmDeviceName:    \t%s"   ,
        !            65:         "    dmSpecVersion:   \t%d"   ,
        !            66:         "    dmDriverVersion: \t%d"   ,  // 15
        !            67:         "    dmSize:          \t%d"   ,
        !            68:         "    dmDriverExtra:   \t%d"   ,
        !            69:         "    dmFields:        \t%s"   ,
        !            70:         "    dmOrientation:   \t%s"   ,
        !            71:         "    dmPaperSize:     \t%s"   ,  // 20
        !            72:         "    dmPaperLength:   \t%d"   ,
        !            73:         "    dmPaperWidth:    \t%d"   ,
        !            74:         "    dmScale:         \t%d"   ,
        !            75:         "    dmCopies:        \t%d"   ,
        !            76:         "    dmDefaultSource: \t%s"   ,  // 25
        !            77:         "    dmPrintQuality:  \t%s"   ,
        !            78:         "    dmColor:         \t%s"   ,
        !            79:         "    dmDuplex:        \t%s"   ,
        !            80:         "    dmYResolution:   \t"     ,
        !            81:         "    dmTTOption:      \t"     ,  // 30
        !            82:         "    dmCollate:       \t"     ,
        !            83:         "    dmFormName:      \t"     ,
        !            84:         "  pSepFile:          \t\t%s" ,
        !            85:         "  pPrintProcessor:   \t%s"   ,
        !            86:         "  pDatatype:         \t\t%s" ,  // 35
        !            87:         "  pParameters:       \t%s"   ,
        !            88:         "  Attributes:        \t\t"   ,
        !            89:         "  Priority:          \t\t%s" ,
        !            90:         "  Priority:          \t\t%ld",
        !            91:         "  DefaultPriority:   \t\t%ld",  // 40
        !            92:         "  StartTime:         \t\t%ld",
        !            93:         "  UntilTime:         \t\t%ld",
        !            94:         "  Status:            \t"     ,
        !            95:         "  cJobs:             \t\t%ld",
        !            96:         "  AveragePPM:        \t%ld"    };
        !            97: 
        !            98: ENUMPRTLOOKUP gaAttributes[] =
        !            99: 
        !           100:     { { PRINTER_ATTRIBUTE_QUEUED       , "PRINTER_ATTRIBUTE_QUEUED  " },
        !           101:       { PRINTER_ATTRIBUTE_DIRECT       , "PRINTER_ATTRIBUTE_DIRECT  " },
        !           102:       { PRINTER_ATTRIBUTE_DEFAULT      , "PRINTER_ATTRIBUTE_DEFAULT " },
        !           103:       { PRINTER_ATTRIBUTE_SHARED       , "PRINTER_ATTRIBUTE_SHARED  " } };
        !           104: 
        !           105: ENUMPRTLOOKUP gaPriorities[] =
        !           106: 
        !           107:     { { NO_PRIORITY                    , "NO_PRIORITY  " },
        !           108:       { MAX_PRIORITY                   , "MAX_PRIORITY " },
        !           109:       { MIN_PRIORITY                   , "MIN_PRIORITY " },
        !           110:       { DEF_PRIORITY                   , "DEF_PRIORITY " } };
        !           111: 
        !           112: ENUMPRTLOOKUP gaStatus[] =
        !           113: 
        !           114:     { { PRINTER_STATUS_PAUSED          , "PRINTER_STATUS_PAUSED "          },
        !           115:       { PRINTER_STATUS_ERROR           , "PRINTER_STATUS_ERROR  "          },
        !           116:       { PRINTER_STATUS_PENDING_DELETION, "PRINTER_STATUS_PENDING_DELETION "},
        !           117:       { 0                              , ""                                }};
        !           118: 
        !           119: ENUMPRTLOOKUP gaFields[] =
        !           120: 
        !           121:     { { DM_ORIENTATION  , "DM_ORIENTATION  " },
        !           122:       { DM_PAPERSIZE    , "DM_PAPERSIZE    " },
        !           123:       { DM_PAPERLENGTH  , "DM_PAPERLENGTH  " },
        !           124:       { DM_PAPERWIDTH   , "DM_PAPERWIDTH   " },
        !           125:       { DM_SCALE        , "DM_SCALE        " },
        !           126:       { DM_COPIES       , "DM_COPIES       " },
        !           127:       { DM_DEFAULTSOURCE, "DM_DEFAULTSOURCE" },
        !           128:       { DM_PRINTQUALITY , "DM_PRINTQUALITY " },
        !           129:       { DM_COLOR        , "DM_COLOR        " },
        !           130:       { DM_DUPLEX       , "DM_DUPLEX       " },
        !           131:       { DM_YRESOLUTION  , "DM_YRESOLUTION  " },
        !           132:       { DM_TTOPTION     , "DM_TTOPTION     " },
        !           133:       { DM_COLLATE      , "DM_COLLATE      " },
        !           134:       { DM_FORMNAME     , "DM_FORMNAME     " },
        !           135:       { 0               , "0               " } };
        !           136: 
        !           137: ENUMPRTLOOKUP gaOrientation[] =
        !           138: 
        !           139:     { { DMORIENT_PORTRAIT , "DMORIENT_PORTRAIT " },
        !           140:       { DMORIENT_LANDSCAPE, "DMORIENT_LANDSCAPE" } };
        !           141: 
        !           142: ENUMPRTLOOKUP gaPaperSize[] =
        !           143: 
        !           144:     { { DMPAPER_FIRST             , "DMPAPER_FIRST             " },
        !           145:       { DMPAPER_LETTER            , "DMPAPER_LETTER            " },
        !           146:       { DMPAPER_LETTERSMALL       , "DMPAPER_LETTERSMALL       " },
        !           147:       { DMPAPER_TABLOID           , "DMPAPER_TABLOID           " },
        !           148:       { DMPAPER_LEDGER            , "DMPAPER_LEDGER            " },
        !           149:       { DMPAPER_LEGAL             , "DMPAPER_LEGAL             " },
        !           150:       { DMPAPER_STATEMENT         , "DMPAPER_STATEMENT         " },
        !           151:       { DMPAPER_EXECUTIVE         , "DMPAPER_EXECUTIVE         " },
        !           152:       { DMPAPER_A3                , "DMPAPER_A3                " },
        !           153:       { DMPAPER_A4                , "DMPAPER_A4                " },
        !           154:       { DMPAPER_A4SMALL           , "DMPAPER_A4SMALL           " },
        !           155:       { DMPAPER_A5                , "DMPAPER_A5                " },
        !           156:       { DMPAPER_B4                , "DMPAPER_B4                " },
        !           157:       { DMPAPER_B5                , "DMPAPER_B5                " },
        !           158:       { DMPAPER_FOLIO             , "DMPAPER_FOLIO             " },
        !           159:       { DMPAPER_QUARTO            , "DMPAPER_QUARTO            " },
        !           160:       { DMPAPER_10X14             , "DMPAPER_10X14             " },
        !           161:       { DMPAPER_11X17             , "DMPAPER_11X17             " },
        !           162:       { DMPAPER_NOTE              , "DMPAPER_NOTE              " },
        !           163:       { DMPAPER_ENV_9             , "DMPAPER_ENV_9             " },
        !           164:       { DMPAPER_ENV_10            , "DMPAPER_ENV_10            " },
        !           165:       { DMPAPER_ENV_11            , "DMPAPER_ENV_11            " },
        !           166:       { DMPAPER_ENV_12            , "DMPAPER_ENV_12            " },
        !           167:       { DMPAPER_ENV_14            , "DMPAPER_ENV_14            " },
        !           168:       { DMPAPER_CSHEET            , "DMPAPER_CSHEET            " },
        !           169:       { DMPAPER_DSHEET            , "DMPAPER_DSHEET            " },
        !           170:       { DMPAPER_ESHEET            , "DMPAPER_ESHEET            " },
        !           171:       { DMPAPER_ENV_DL            , "DMPAPER_ENV_DL            " },
        !           172:       { DMPAPER_ENV_C5            , "DMPAPER_ENV_C5            " },
        !           173:       { DMPAPER_ENV_C3            , "DMPAPER_ENV_C3            " },
        !           174:       { DMPAPER_ENV_C4            , "DMPAPER_ENV_C4            " },
        !           175:       { DMPAPER_ENV_C6            , "DMPAPER_ENV_C6            " },
        !           176:       { DMPAPER_ENV_C65           , "DMPAPER_ENV_C65           " },
        !           177:       { DMPAPER_ENV_B4            , "DMPAPER_ENV_B4            " },
        !           178:       { DMPAPER_ENV_B5            , "DMPAPER_ENV_B5            " },
        !           179:       { DMPAPER_ENV_B6            , "DMPAPER_ENV_B6            " },
        !           180:       { DMPAPER_ENV_ITALY         , "DMPAPER_ENV_ITALY         " },
        !           181:       { DMPAPER_ENV_MONARCH       , "DMPAPER_ENV_MONARCH       " },
        !           182:       { DMPAPER_ENV_PERSONAL      , "DMPAPER_ENV_PERSONAL      " },
        !           183:       { DMPAPER_FANFOLD_STD_GERMAN, "DMPAPER_FANFOLD_STD_GERMAN" },
        !           184:       { DMPAPER_FANFOLD_LGL_GERMAN, "DMPAPER_FANFOLD_LGL_GERMAN" } };
        !           185: 
        !           186: ENUMPRTLOOKUP gaDefaultSource[] =
        !           187: 
        !           188:     { { DMBIN_FIRST        , "DMBIN_FIRST        " },
        !           189:       { DMBIN_UPPER        , "DMBIN_UPPER        " },
        !           190:       { DMBIN_ONLYONE      , "DMBIN_ONLYONE      " },
        !           191:       { DMBIN_LOWER        , "DMBIN_LOWER        " },
        !           192:       { DMBIN_MIDDLE       , "DMBIN_MIDDLE       " },
        !           193:       { DMBIN_MANUAL       , "DMBIN_MANUAL       " },
        !           194:       { DMBIN_ENVELOPE     , "DMBIN_ENVELOPE     " },
        !           195:       { DMBIN_ENVMANUAL    , "DMBIN_ENVMANUAL    " },
        !           196:       { DMBIN_AUTO         , "DMBIN_AUTO         " },
        !           197:       { DMBIN_TRACTOR      , "DMBIN_TRACTOR      " },
        !           198:       { DMBIN_SMALLFMT     , "DMBIN_SMALLFMT     " },
        !           199:       { DMBIN_LARGEFMT     , "DMBIN_LARGEFMT     " },
        !           200:       { DMBIN_LARGECAPACITY, "DMBIN_LARGECAPACITY" },
        !           201:       { DMBIN_CASSETTE     , "DMBIN_CASSETTE     " },
        !           202:       { DMBIN_LAST         , "DMBIN_LAST         " },
        !           203:       { DMBIN_USER         , "DMBIN_USER         " } };
        !           204: 
        !           205: ENUMPRTLOOKUP gaPrintQuality[] =
        !           206: 
        !           207:     { { (DWORD)DMRES_DRAFT , "DMRES_DRAFT " },
        !           208:       { (DWORD)DMRES_LOW   , "DMRES_LOW   " },
        !           209:       { (DWORD)DMRES_MEDIUM, "DMRES_MEDIUM" },
        !           210:       { (DWORD)DMRES_HIGH  , "DMRES_HIGH  " } };
        !           211: 
        !           212: ENUMPRTLOOKUP gaColor[] =
        !           213: 
        !           214:     { { DMCOLOR_MONOCHROME, "DMCOLOR_MONOCHROME" },
        !           215:       { DMCOLOR_COLOR     , "DMCOLOR_COLOR     " } };
        !           216: 
        !           217: ENUMPRTLOOKUP gaDuplex[] =
        !           218: 
        !           219:     { { DMDUP_SIMPLEX   , "DMDUP_SIMPLEX   " },
        !           220:       { DMDUP_VERTICAL  , "DMDUP_VERTICAL  " },
        !           221:       { DMDUP_HORIZONTAL, "DMDUP_HORIZONTAL" } };
        !           222: 
        !           223: char *gaDriverInfo[] =
        !           224: 
        !           225:     {   "DRIVER_INFO_1",
        !           226:         "  pName\t\t%s",
        !           227: 
        !           228:         "DRIVER_INFO_2",
        !           229:         "  cVersion\t%ld",
        !           230:         "  pName\t\t%s",
        !           231:         "  pEnvironment\t%s",
        !           232:         "  pDriverPath\t%s",
        !           233:         "  pDataFile\t%s",
        !           234:         "  pConfigFile\t%s" };
        !           235: 
        !           236: 
        !           237: 
        !           238: /******************************************************************************\
        !           239: *                              EXTERNAL VARIABLES
        !           240: \******************************************************************************/
        !           241: 
        !           242: extern HWND ghwndMain;
        !           243: 
        !           244: 
        !           245: 
        !           246: /******************************************************************************\
        !           247: *                                  MACROS
        !           248: \******************************************************************************/
        !           249: 
        !           250: #define outstr(fmt,arg)  wsprintf (buf,fmt,arg?arg:"(null)");           \
        !           251:                          SendDlgItemMessage (hwnd, DID_LISTBOX,         \
        !           252:                                              LB_INSERTSTRING, (UINT)-1, \
        !           253:                                              (LONG) buf);
        !           254: 
        !           255: #define outstr2(buf)     SendDlgItemMessage (hwnd, DID_LISTBOX,         \
        !           256:                                              LB_INSERTSTRING, (UINT)-1, \
        !           257:                                              (LONG) buf);
        !           258: 
        !           259: #define outstr3()        SendDlgItemMessage (hwnd, DID_LISTBOX,         \
        !           260:                                              LB_INSERTSTRING,           \
        !           261:                                              (UINT)-1, (LONG) buf);
        !           262: 
        !           263: #define outnum(fmt,arg)  wsprintf(buf,fmt,arg);                         \
        !           264:                          SendDlgItemMessage (hwnd, DID_LISTBOX,         \
        !           265:                                              LB_INSERTSTRING, (UINT)-1, \
        !           266:                                              (LONG) buf);
        !           267: 
        !           268: 
        !           269: 
        !           270: /******************************************************************************\
        !           271: *                            FUNCTION PROTOTYPES
        !           272: \******************************************************************************/
        !           273: 
        !           274: LRESULT CALLBACK EnumPrintersOptionsDlgProc (HWND, UINT, WPARAM, LPARAM);
        !           275: 
        !           276: BOOL DisplayEnumPrintersInfo   (HWND);
        !           277: void SetEnumPrintersDlgFields  (HWND, DWORD, LPPRINTER_INFO_1,
        !           278:                                 LPPRINTER_INFO_2);
        !           279: void ComplexEnumPrintersLine   (HWND, char *, ENUMPRTLOOKUP *, int, DWORD);
        !           280: BOOL DisplayPrinterDriversInfo (HWND);

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.