1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248224922502251225222532254225522562257225822592260226122622263226422652266226722682269227022712272227322742275227622772278227922802281228222832284228522862287228822892290229122922293229422952296229722982299230023012302230323042305230623072308230923102311231223132314231523162317231823192320232123222323232423252326232723282329233023312332233323342335233623372338233923402341234223432344234523462347234823492350235123522353235423552356235723582359236023612362236323642365236623672368236923702371237223732374237523762377237823792380238123822383238423852386238723882389239023912392239323942395239623972398239924002401240224032404240524062407240824092410241124122413241424152416241724182419242024212422242324242425242624272428242924302431243224332434243524362437243824392440244124422443244424452446244724482449245024512452245324542455245624572458245924602461246224632464246524662467246824692470247124722473247424752476247724782479248024812482248324842485248624872488248924902491249224932494249524962497249824992500250125022503250425052506250725082509251025112512251325142515251625172518251925202521252225232524252525262527252825292530253125322533253425352536253725382539254025412542254325442545254625472548254925502551255225532554255525562557255825592560256125622563256425652566256725682569257025712572257325742575257625772578257925802581258225832584258525862587258825892590259125922593259425952596259725982599260026012602260326042605260626072608260926102611261226132614261526162617261826192620262126222623262426252626262726282629263026312632263326342635263626372638263926402641264226432644264526462647264826492650265126522653265426552656265726582659266026612662266326642665266626672668266926702671267226732674267526762677267826792680268126822683268426852686268726882689269026912692269326942695269626972698269927002701270227032704270527062707270827092710271127122713271427152716271727182719272027212722272327242725272627272728272927302731273227332734273527362737273827392740274127422743274427452746274727482749275027512752275327542755275627572758275927602761276227632764276527662767276827692770277127722773277427752776277727782779278027812782278327842785278627872788278927902791279227932794279527962797279827992800280128022803280428052806280728082809281028112812281328142815281628172818281928202821282228232824282528262827282828292830283128322833283428352836283728382839284028412842284328442845284628472848284928502851285228532854285528562857285828592860 |
- /*++
- Copyright (c) 1990-1998 Microsoft Corporation
- Module Name:
- WinSpool.h
- Abstract:
- Header file for Print APIs
- Revision History:
- --*/
- #ifndef _WINSPOOL_
- #define _WINSPOOL_
- #ifdef _WINUSER_
- #include <prsht.h>
- #endif
- #ifdef __cplusplus
- extern "C" {
- #endif
- typedef struct _PRINTER_INFO_1A {
- DWORD Flags;
- LPSTR pDescription;
- LPSTR pName;
- LPSTR pComment;
- } PRINTER_INFO_1A, *PPRINTER_INFO_1A, *LPPRINTER_INFO_1A;
- typedef struct _PRINTER_INFO_1W {
- DWORD Flags;
- LPWSTR pDescription;
- LPWSTR pName;
- LPWSTR pComment;
- } PRINTER_INFO_1W, *PPRINTER_INFO_1W, *LPPRINTER_INFO_1W;
- #ifdef UNICODE
- typedef PRINTER_INFO_1W PRINTER_INFO_1;
- typedef PPRINTER_INFO_1W PPRINTER_INFO_1;
- typedef LPPRINTER_INFO_1W LPPRINTER_INFO_1;
- #else
- typedef PRINTER_INFO_1A PRINTER_INFO_1;
- typedef PPRINTER_INFO_1A PPRINTER_INFO_1;
- typedef LPPRINTER_INFO_1A LPPRINTER_INFO_1;
- #endif // UNICODE
- typedef struct _PRINTER_INFO_2A {
- LPSTR pServerName;
- LPSTR pPrinterName;
- LPSTR pShareName;
- LPSTR pPortName;
- LPSTR pDriverName;
- LPSTR pComment;
- LPSTR pLocation;
- LPDEVMODEA pDevMode;
- LPSTR pSepFile;
- LPSTR pPrintProcessor;
- LPSTR pDatatype;
- LPSTR pParameters;
- PSECURITY_DESCRIPTOR pSecurityDescriptor;
- DWORD Attributes;
- DWORD Priority;
- DWORD DefaultPriority;
- DWORD StartTime;
- DWORD UntilTime;
- DWORD Status;
- DWORD cJobs;
- DWORD AveragePPM;
- } PRINTER_INFO_2A, *PPRINTER_INFO_2A, *LPPRINTER_INFO_2A;
- typedef struct _PRINTER_INFO_2W {
- LPWSTR pServerName;
- LPWSTR pPrinterName;
- LPWSTR pShareName;
- LPWSTR pPortName;
- LPWSTR pDriverName;
- LPWSTR pComment;
- LPWSTR pLocation;
- LPDEVMODEW pDevMode;
- LPWSTR pSepFile;
- LPWSTR pPrintProcessor;
- LPWSTR pDatatype;
- LPWSTR pParameters;
- PSECURITY_DESCRIPTOR pSecurityDescriptor;
- DWORD Attributes;
- DWORD Priority;
- DWORD DefaultPriority;
- DWORD StartTime;
- DWORD UntilTime;
- DWORD Status;
- DWORD cJobs;
- DWORD AveragePPM;
- } PRINTER_INFO_2W, *PPRINTER_INFO_2W, *LPPRINTER_INFO_2W;
- #ifdef UNICODE
- typedef PRINTER_INFO_2W PRINTER_INFO_2;
- typedef PPRINTER_INFO_2W PPRINTER_INFO_2;
- typedef LPPRINTER_INFO_2W LPPRINTER_INFO_2;
- #else
- typedef PRINTER_INFO_2A PRINTER_INFO_2;
- typedef PPRINTER_INFO_2A PPRINTER_INFO_2;
- typedef LPPRINTER_INFO_2A LPPRINTER_INFO_2;
- #endif // UNICODE
- typedef struct _PRINTER_INFO_3 {
- PSECURITY_DESCRIPTOR pSecurityDescriptor;
- } PRINTER_INFO_3, *PPRINTER_INFO_3, *LPPRINTER_INFO_3;
- typedef struct _PRINTER_INFO_4A {
- LPSTR pPrinterName;
- LPSTR pServerName;
- DWORD Attributes;
- } PRINTER_INFO_4A, *PPRINTER_INFO_4A, *LPPRINTER_INFO_4A;
- typedef struct _PRINTER_INFO_4W {
- LPWSTR pPrinterName;
- LPWSTR pServerName;
- DWORD Attributes;
- } PRINTER_INFO_4W, *PPRINTER_INFO_4W, *LPPRINTER_INFO_4W;
- #ifdef UNICODE
- typedef PRINTER_INFO_4W PRINTER_INFO_4;
- typedef PPRINTER_INFO_4W PPRINTER_INFO_4;
- typedef LPPRINTER_INFO_4W LPPRINTER_INFO_4;
- #else
- typedef PRINTER_INFO_4A PRINTER_INFO_4;
- typedef PPRINTER_INFO_4A PPRINTER_INFO_4;
- typedef LPPRINTER_INFO_4A LPPRINTER_INFO_4;
- #endif // UNICODE
- typedef struct _PRINTER_INFO_5A {
- LPSTR pPrinterName;
- LPSTR pPortName;
- DWORD Attributes;
- DWORD DeviceNotSelectedTimeout;
- DWORD TransmissionRetryTimeout;
- } PRINTER_INFO_5A, *PPRINTER_INFO_5A, *LPPRINTER_INFO_5A;
- typedef struct _PRINTER_INFO_5W {
- LPWSTR pPrinterName;
- LPWSTR pPortName;
- DWORD Attributes;
- DWORD DeviceNotSelectedTimeout;
- DWORD TransmissionRetryTimeout;
- } PRINTER_INFO_5W, *PPRINTER_INFO_5W, *LPPRINTER_INFO_5W;
- #ifdef UNICODE
- typedef PRINTER_INFO_5W PRINTER_INFO_5;
- typedef PPRINTER_INFO_5W PPRINTER_INFO_5;
- typedef LPPRINTER_INFO_5W LPPRINTER_INFO_5;
- #else
- typedef PRINTER_INFO_5A PRINTER_INFO_5;
- typedef PPRINTER_INFO_5A PPRINTER_INFO_5;
- typedef LPPRINTER_INFO_5A LPPRINTER_INFO_5;
- #endif // UNICODE
- typedef struct _PRINTER_INFO_6 {
- DWORD dwStatus;
- } PRINTER_INFO_6, *PPRINTER_INFO_6, *LPPRINTER_INFO_6;
- typedef struct _PRINTER_INFO_7A {
- LPSTR pszObjectGUID;
- DWORD dwAction;
- } PRINTER_INFO_7A, *PPRINTER_INFO_7A, *LPPRINTER_INFO_7A;
- typedef struct _PRINTER_INFO_7W {
- LPWSTR pszObjectGUID;
- DWORD dwAction;
- } PRINTER_INFO_7W, *PPRINTER_INFO_7W, *LPPRINTER_INFO_7W;
- #ifdef UNICODE
- typedef PRINTER_INFO_7W PRINTER_INFO_7;
- typedef PPRINTER_INFO_7W PPRINTER_INFO_7;
- typedef LPPRINTER_INFO_7W LPPRINTER_INFO_7;
- #else
- typedef PRINTER_INFO_7A PRINTER_INFO_7;
- typedef PPRINTER_INFO_7A PPRINTER_INFO_7;
- typedef LPPRINTER_INFO_7A LPPRINTER_INFO_7;
- #endif // UNICODE
- #define DSPRINT_PUBLISH 0x00000001
- #define DSPRINT_UPDATE 0x00000002
- #define DSPRINT_UNPUBLISH 0x00000004
- #define DSPRINT_REPUBLISH 0x00000008
- #define DSPRINT_PENDING 0x80000000
- typedef struct _PRINTER_INFO_8A {
- LPDEVMODEA pDevMode;
- } PRINTER_INFO_8A, *PPRINTER_INFO_8A, *LPPRINTER_INFO_8A;
- typedef struct _PRINTER_INFO_8W {
- LPDEVMODEW pDevMode;
- } PRINTER_INFO_8W, *PPRINTER_INFO_8W, *LPPRINTER_INFO_8W;
- #ifdef UNICODE
- typedef PRINTER_INFO_8W PRINTER_INFO_8;
- typedef PPRINTER_INFO_8W PPRINTER_INFO_8;
- typedef LPPRINTER_INFO_8W LPPRINTER_INFO_8;
- #else
- typedef PRINTER_INFO_8A PRINTER_INFO_8;
- typedef PPRINTER_INFO_8A PPRINTER_INFO_8;
- typedef LPPRINTER_INFO_8A LPPRINTER_INFO_8;
- #endif // UNICODE
- typedef struct _PRINTER_INFO_9A {
- LPDEVMODEA pDevMode;
- } PRINTER_INFO_9A, *PPRINTER_INFO_9A, *LPPRINTER_INFO_9A;
- typedef struct _PRINTER_INFO_9W {
- LPDEVMODEW pDevMode;
- } PRINTER_INFO_9W, *PPRINTER_INFO_9W, *LPPRINTER_INFO_9W;
- #ifdef UNICODE
- typedef PRINTER_INFO_9W PRINTER_INFO_9;
- typedef PPRINTER_INFO_9W PPRINTER_INFO_9;
- typedef LPPRINTER_INFO_9W LPPRINTER_INFO_9;
- #else
- typedef PRINTER_INFO_9A PRINTER_INFO_9;
- typedef PPRINTER_INFO_9A PPRINTER_INFO_9;
- typedef LPPRINTER_INFO_9A LPPRINTER_INFO_9;
- #endif // UNICODE
- #define PRINTER_CONTROL_PAUSE 1
- #define PRINTER_CONTROL_RESUME 2
- #define PRINTER_CONTROL_PURGE 3
- #define PRINTER_CONTROL_SET_STATUS 4
- #define PRINTER_STATUS_PAUSED 0x00000001
- #define PRINTER_STATUS_ERROR 0x00000002
- #define PRINTER_STATUS_PENDING_DELETION 0x00000004
- #define PRINTER_STATUS_PAPER_JAM 0x00000008
- #define PRINTER_STATUS_PAPER_OUT 0x00000010
- #define PRINTER_STATUS_MANUAL_FEED 0x00000020
- #define PRINTER_STATUS_PAPER_PROBLEM 0x00000040
- #define PRINTER_STATUS_OFFLINE 0x00000080
- #define PRINTER_STATUS_IO_ACTIVE 0x00000100
- #define PRINTER_STATUS_BUSY 0x00000200
- #define PRINTER_STATUS_PRINTING 0x00000400
- #define PRINTER_STATUS_OUTPUT_BIN_FULL 0x00000800
- #define PRINTER_STATUS_NOT_AVAILABLE 0x00001000
- #define PRINTER_STATUS_WAITING 0x00002000
- #define PRINTER_STATUS_PROCESSING 0x00004000
- #define PRINTER_STATUS_INITIALIZING 0x00008000
- #define PRINTER_STATUS_WARMING_UP 0x00010000
- #define PRINTER_STATUS_TONER_LOW 0x00020000
- #define PRINTER_STATUS_NO_TONER 0x00040000
- #define PRINTER_STATUS_PAGE_PUNT 0x00080000
- #define PRINTER_STATUS_USER_INTERVENTION 0x00100000
- #define PRINTER_STATUS_OUT_OF_MEMORY 0x00200000
- #define PRINTER_STATUS_DOOR_OPEN 0x00400000
- #define PRINTER_STATUS_SERVER_UNKNOWN 0x00800000
- #define PRINTER_STATUS_POWER_SAVE 0x01000000
- #define PRINTER_ATTRIBUTE_QUEUED 0x00000001
- #define PRINTER_ATTRIBUTE_DIRECT 0x00000002
- #define PRINTER_ATTRIBUTE_DEFAULT 0x00000004
- #define PRINTER_ATTRIBUTE_SHARED 0x00000008
- #define PRINTER_ATTRIBUTE_NETWORK 0x00000010
- #define PRINTER_ATTRIBUTE_HIDDEN 0x00000020
- #define PRINTER_ATTRIBUTE_LOCAL 0x00000040
- #define PRINTER_ATTRIBUTE_ENABLE_DEVQ 0x00000080
- #define PRINTER_ATTRIBUTE_KEEPPRINTEDJOBS 0x00000100
- #define PRINTER_ATTRIBUTE_DO_COMPLETE_FIRST 0x00000200
- #define PRINTER_ATTRIBUTE_WORK_OFFLINE 0x00000400
- #define PRINTER_ATTRIBUTE_ENABLE_BIDI 0x00000800
- #define PRINTER_ATTRIBUTE_RAW_ONLY 0x00001000
- #define PRINTER_ATTRIBUTE_PUBLISHED 0x00002000
- #define PRINTER_ATTRIBUTE_FAX 0x00004000
- #define NO_PRIORITY 0
- #define MAX_PRIORITY 99
- #define MIN_PRIORITY 1
- #define DEF_PRIORITY 1
- typedef struct _JOB_INFO_1A {
- DWORD JobId;
- LPSTR pPrinterName;
- LPSTR pMachineName;
- LPSTR pUserName;
- LPSTR pDocument;
- LPSTR pDatatype;
- LPSTR pStatus;
- DWORD Status;
- DWORD Priority;
- DWORD Position;
- DWORD TotalPages;
- DWORD PagesPrinted;
- SYSTEMTIME Submitted;
- } JOB_INFO_1A, *PJOB_INFO_1A, *LPJOB_INFO_1A;
- typedef struct _JOB_INFO_1W {
- DWORD JobId;
- LPWSTR pPrinterName;
- LPWSTR pMachineName;
- LPWSTR pUserName;
- LPWSTR pDocument;
- LPWSTR pDatatype;
- LPWSTR pStatus;
- DWORD Status;
- DWORD Priority;
- DWORD Position;
- DWORD TotalPages;
- DWORD PagesPrinted;
- SYSTEMTIME Submitted;
- } JOB_INFO_1W, *PJOB_INFO_1W, *LPJOB_INFO_1W;
- #ifdef UNICODE
- typedef JOB_INFO_1W JOB_INFO_1;
- typedef PJOB_INFO_1W PJOB_INFO_1;
- typedef LPJOB_INFO_1W LPJOB_INFO_1;
- #else
- typedef JOB_INFO_1A JOB_INFO_1;
- typedef PJOB_INFO_1A PJOB_INFO_1;
- typedef LPJOB_INFO_1A LPJOB_INFO_1;
- #endif // UNICODE
- typedef struct _JOB_INFO_2A {
- DWORD JobId;
- LPSTR pPrinterName;
- LPSTR pMachineName;
- LPSTR pUserName;
- LPSTR pDocument;
- LPSTR pNotifyName;
- LPSTR pDatatype;
- LPSTR pPrintProcessor;
- LPSTR pParameters;
- LPSTR pDriverName;
- LPDEVMODEA pDevMode;
- LPSTR pStatus;
- PSECURITY_DESCRIPTOR pSecurityDescriptor;
- DWORD Status;
- DWORD Priority;
- DWORD Position;
- DWORD StartTime;
- DWORD UntilTime;
- DWORD TotalPages;
- DWORD Size;
- SYSTEMTIME Submitted; // Time the job was spooled
- DWORD Time; // How many miliseconds the job has been printing
- DWORD PagesPrinted;
- } JOB_INFO_2A, *PJOB_INFO_2A, *LPJOB_INFO_2A;
- typedef struct _JOB_INFO_2W {
- DWORD JobId;
- LPWSTR pPrinterName;
- LPWSTR pMachineName;
- LPWSTR pUserName;
- LPWSTR pDocument;
- LPWSTR pNotifyName;
- LPWSTR pDatatype;
- LPWSTR pPrintProcessor;
- LPWSTR pParameters;
- LPWSTR pDriverName;
- LPDEVMODEW pDevMode;
- LPWSTR pStatus;
- PSECURITY_DESCRIPTOR pSecurityDescriptor;
- DWORD Status;
- DWORD Priority;
- DWORD Position;
- DWORD StartTime;
- DWORD UntilTime;
- DWORD TotalPages;
- DWORD Size;
- SYSTEMTIME Submitted; // Time the job was spooled
- DWORD Time; // How many miliseconds the job has been printing
- DWORD PagesPrinted;
- } JOB_INFO_2W, *PJOB_INFO_2W, *LPJOB_INFO_2W;
- #ifdef UNICODE
- typedef JOB_INFO_2W JOB_INFO_2;
- typedef PJOB_INFO_2W PJOB_INFO_2;
- typedef LPJOB_INFO_2W LPJOB_INFO_2;
- #else
- typedef JOB_INFO_2A JOB_INFO_2;
- typedef PJOB_INFO_2A PJOB_INFO_2;
- typedef LPJOB_INFO_2A LPJOB_INFO_2;
- #endif // UNICODE
- typedef struct _JOB_INFO_3 {
- DWORD JobId;
- DWORD NextJobId;
- DWORD Reserved;
- } JOB_INFO_3, *PJOB_INFO_3, *LPJOB_INFO_3;
- #define JOB_CONTROL_PAUSE 1
- #define JOB_CONTROL_RESUME 2
- #define JOB_CONTROL_CANCEL 3
- #define JOB_CONTROL_RESTART 4
- #define JOB_CONTROL_DELETE 5
- #define JOB_CONTROL_SENT_TO_PRINTER 6
- #define JOB_CONTROL_LAST_PAGE_EJECTED 7
- #define JOB_STATUS_PAUSED 0x00000001
- #define JOB_STATUS_ERROR 0x00000002
- #define JOB_STATUS_DELETING 0x00000004
- #define JOB_STATUS_SPOOLING 0x00000008
- #define JOB_STATUS_PRINTING 0x00000010
- #define JOB_STATUS_OFFLINE 0x00000020
- #define JOB_STATUS_PAPEROUT 0x00000040
- #define JOB_STATUS_PRINTED 0x00000080
- #define JOB_STATUS_DELETED 0x00000100
- #define JOB_STATUS_BLOCKED_DEVQ 0x00000200
- #define JOB_STATUS_USER_INTERVENTION 0x00000400
- #define JOB_STATUS_RESTART 0x00000800
- #define JOB_STATUS_COMPLETE 0x00001000
- #define JOB_POSITION_UNSPECIFIED 0
- typedef struct _ADDJOB_INFO_1A {
- LPSTR Path;
- DWORD JobId;
- } ADDJOB_INFO_1A, *PADDJOB_INFO_1A, *LPADDJOB_INFO_1A;
- typedef struct _ADDJOB_INFO_1W {
- LPWSTR Path;
- DWORD JobId;
- } ADDJOB_INFO_1W, *PADDJOB_INFO_1W, *LPADDJOB_INFO_1W;
- #ifdef UNICODE
- typedef ADDJOB_INFO_1W ADDJOB_INFO_1;
- typedef PADDJOB_INFO_1W PADDJOB_INFO_1;
- typedef LPADDJOB_INFO_1W LPADDJOB_INFO_1;
- #else
- typedef ADDJOB_INFO_1A ADDJOB_INFO_1;
- typedef PADDJOB_INFO_1A PADDJOB_INFO_1;
- typedef LPADDJOB_INFO_1A LPADDJOB_INFO_1;
- #endif // UNICODE
- typedef struct _DRIVER_INFO_1A {
- LPSTR pName; // QMS 810
- } DRIVER_INFO_1A, *PDRIVER_INFO_1A, *LPDRIVER_INFO_1A;
- typedef struct _DRIVER_INFO_1W {
- LPWSTR pName; // QMS 810
- } DRIVER_INFO_1W, *PDRIVER_INFO_1W, *LPDRIVER_INFO_1W;
- #ifdef UNICODE
- typedef DRIVER_INFO_1W DRIVER_INFO_1;
- typedef PDRIVER_INFO_1W PDRIVER_INFO_1;
- typedef LPDRIVER_INFO_1W LPDRIVER_INFO_1;
- #else
- typedef DRIVER_INFO_1A DRIVER_INFO_1;
- typedef PDRIVER_INFO_1A PDRIVER_INFO_1;
- typedef LPDRIVER_INFO_1A LPDRIVER_INFO_1;
- #endif // UNICODE
- typedef struct _DRIVER_INFO_2A {
- DWORD cVersion;
- LPSTR pName; // QMS 810
- LPSTR pEnvironment; // Win32 x86
- LPSTR pDriverPath; // c:\drivers\pscript.dll
- LPSTR pDataFile; // c:\drivers\QMS810.PPD
- LPSTR pConfigFile; // c:\drivers\PSCRPTUI.DLL
- } DRIVER_INFO_2A, *PDRIVER_INFO_2A, *LPDRIVER_INFO_2A;
- typedef struct _DRIVER_INFO_2W {
- DWORD cVersion;
- LPWSTR pName; // QMS 810
- LPWSTR pEnvironment; // Win32 x86
- LPWSTR pDriverPath; // c:\drivers\pscript.dll
- LPWSTR pDataFile; // c:\drivers\QMS810.PPD
- LPWSTR pConfigFile; // c:\drivers\PSCRPTUI.DLL
- } DRIVER_INFO_2W, *PDRIVER_INFO_2W, *LPDRIVER_INFO_2W;
- #ifdef UNICODE
- typedef DRIVER_INFO_2W DRIVER_INFO_2;
- typedef PDRIVER_INFO_2W PDRIVER_INFO_2;
- typedef LPDRIVER_INFO_2W LPDRIVER_INFO_2;
- #else
- typedef DRIVER_INFO_2A DRIVER_INFO_2;
- typedef PDRIVER_INFO_2A PDRIVER_INFO_2;
- typedef LPDRIVER_INFO_2A LPDRIVER_INFO_2;
- #endif // UNICODE
- typedef struct _DRIVER_INFO_3A {
- DWORD cVersion;
- LPSTR pName; // QMS 810
- LPSTR pEnvironment; // Win32 x86
- LPSTR pDriverPath; // c:\drivers\pscript.dll
- LPSTR pDataFile; // c:\drivers\QMS810.PPD
- LPSTR pConfigFile; // c:\drivers\PSCRPTUI.DLL
- LPSTR pHelpFile; // c:\drivers\PSCRPTUI.HLP
- LPSTR pDependentFiles; // PSCRIPT.DLL\0QMS810.PPD\0PSCRIPTUI.DLL\0PSCRIPTUI.HLP\0PSTEST.TXT\0\0
- LPSTR pMonitorName; // "PJL monitor"
- LPSTR pDefaultDataType; // "EMF"
- } DRIVER_INFO_3A, *PDRIVER_INFO_3A, *LPDRIVER_INFO_3A;
- typedef struct _DRIVER_INFO_3W {
- DWORD cVersion;
- LPWSTR pName; // QMS 810
- LPWSTR pEnvironment; // Win32 x86
- LPWSTR pDriverPath; // c:\drivers\pscript.dll
- LPWSTR pDataFile; // c:\drivers\QMS810.PPD
- LPWSTR pConfigFile; // c:\drivers\PSCRPTUI.DLL
- LPWSTR pHelpFile; // c:\drivers\PSCRPTUI.HLP
- LPWSTR pDependentFiles; // PSCRIPT.DLL\0QMS810.PPD\0PSCRIPTUI.DLL\0PSCRIPTUI.HLP\0PSTEST.TXT\0\0
- LPWSTR pMonitorName; // "PJL monitor"
- LPWSTR pDefaultDataType; // "EMF"
- } DRIVER_INFO_3W, *PDRIVER_INFO_3W, *LPDRIVER_INFO_3W;
- #ifdef UNICODE
- typedef DRIVER_INFO_3W DRIVER_INFO_3;
- typedef PDRIVER_INFO_3W PDRIVER_INFO_3;
- typedef LPDRIVER_INFO_3W LPDRIVER_INFO_3;
- #else
- typedef DRIVER_INFO_3A DRIVER_INFO_3;
- typedef PDRIVER_INFO_3A PDRIVER_INFO_3;
- typedef LPDRIVER_INFO_3A LPDRIVER_INFO_3;
- #endif // UNICODE
- typedef struct _DRIVER_INFO_4A {
- DWORD cVersion;
- LPSTR pName; // QMS 810
- LPSTR pEnvironment; // Win32 x86
- LPSTR pDriverPath; // c:\drivers\pscript.dll
- LPSTR pDataFile; // c:\drivers\QMS810.PPD
- LPSTR pConfigFile; // c:\drivers\PSCRPTUI.DLL
- LPSTR pHelpFile; // c:\drivers\PSCRPTUI.HLP
- LPSTR pDependentFiles; // PSCRIPT.DLL\0QMS810.PPD\0PSCRIPTUI.DLL\0PSCRIPTUI.HLP\0PSTEST.TXT\0\0
- LPSTR pMonitorName; // "PJL monitor"
- LPSTR pDefaultDataType; // "EMF"
- LPSTR pszzPreviousNames; // "OldName1\0OldName2\0\0
- } DRIVER_INFO_4A, *PDRIVER_INFO_4A, *LPDRIVER_INFO_4A;
- typedef struct _DRIVER_INFO_4W {
- DWORD cVersion;
- LPWSTR pName; // QMS 810
- LPWSTR pEnvironment; // Win32 x86
- LPWSTR pDriverPath; // c:\drivers\pscript.dll
- LPWSTR pDataFile; // c:\drivers\QMS810.PPD
- LPWSTR pConfigFile; // c:\drivers\PSCRPTUI.DLL
- LPWSTR pHelpFile; // c:\drivers\PSCRPTUI.HLP
- LPWSTR pDependentFiles; // PSCRIPT.DLL\0QMS810.PPD\0PSCRIPTUI.DLL\0PSCRIPTUI.HLP\0PSTEST.TXT\0\0
- LPWSTR pMonitorName; // "PJL monitor"
- LPWSTR pDefaultDataType; // "EMF"
- LPWSTR pszzPreviousNames; // "OldName1\0OldName2\0\0
- } DRIVER_INFO_4W, *PDRIVER_INFO_4W, *LPDRIVER_INFO_4W;
- #ifdef UNICODE
- typedef DRIVER_INFO_4W DRIVER_INFO_4;
- typedef PDRIVER_INFO_4W PDRIVER_INFO_4;
- typedef LPDRIVER_INFO_4W LPDRIVER_INFO_4;
- #else
- typedef DRIVER_INFO_4A DRIVER_INFO_4;
- typedef PDRIVER_INFO_4A PDRIVER_INFO_4;
- typedef LPDRIVER_INFO_4A LPDRIVER_INFO_4;
- #endif // UNICODE
- typedef struct _DRIVER_INFO_5A {
- DWORD cVersion;
- LPSTR pName; // QMS 810
- LPSTR pEnvironment; // Win32 x86
- LPSTR pDriverPath; // c:\drivers\pscript.dll
- LPSTR pDataFile; // c:\drivers\QMS810.PPD
- LPSTR pConfigFile; // c:\drivers\PSCRPTUI.DLL
- DWORD dwDriverAttributes; // driver attributes (like UMPD/KMPD)
- DWORD dwConfigVersion; // version number of the config file since reboot
- DWORD dwDriverVersion; // version number of the driver file since reboot
- } DRIVER_INFO_5A, *PDRIVER_INFO_5A, *LPDRIVER_INFO_5A;
- typedef struct _DRIVER_INFO_5W {
- DWORD cVersion;
- LPWSTR pName; // QMS 810
- LPWSTR pEnvironment; // Win32 x86
- LPWSTR pDriverPath; // c:\drivers\pscript.dll
- LPWSTR pDataFile; // c:\drivers\QMS810.PPD
- LPWSTR pConfigFile; // c:\drivers\PSCRPTUI.DLL
- DWORD dwDriverAttributes; // driver attributes (like UMPD/KMPD)
- DWORD dwConfigVersion; // version number of the config file since reboot
- DWORD dwDriverVersion; // version number of the driver file since reboot
- } DRIVER_INFO_5W, *PDRIVER_INFO_5W, *LPDRIVER_INFO_5W;
- #ifdef UNICODE
- typedef DRIVER_INFO_5W DRIVER_INFO_5;
- typedef PDRIVER_INFO_5W PDRIVER_INFO_5;
- typedef LPDRIVER_INFO_5W LPDRIVER_INFO_5;
- #else
- typedef DRIVER_INFO_5A DRIVER_INFO_5;
- typedef PDRIVER_INFO_5A PDRIVER_INFO_5;
- typedef LPDRIVER_INFO_5A LPDRIVER_INFO_5;
- #endif // UNICODE
- typedef struct _DRIVER_INFO_6A {
- DWORD cVersion;
- LPSTR pName; // QMS 810
- LPSTR pEnvironment; // Win32 x86
- LPSTR pDriverPath; // c:\drivers\pscript.dll
- LPSTR pDataFile; // c:\drivers\QMS810.PPD
- LPSTR pConfigFile; // c:\drivers\PSCRPTUI.DLL
- LPSTR pHelpFile; // c:\drivers\PSCRPTUI.HLP
- LPSTR pDependentFiles; // PSCRIPT.DLL\0QMS810.PPD\0PSCRIPTUI.DLL\0PSCRIPTUI.HLP\0PSTEST.TXT\0\0
- LPSTR pMonitorName; // "PJL monitor"
- LPSTR pDefaultDataType; // "EMF"
- LPSTR pszzPreviousNames; // "OldName1\0OldName2\0\0
- FILETIME ftDriverDate;
- DWORDLONG dwlDriverVersion;
- LPSTR pszMfgName;
- LPSTR pszOEMUrl;
- LPSTR pszHardwareID;
- LPSTR pszProvider;
- } DRIVER_INFO_6A, *PDRIVER_INFO_6A, *LPDRIVER_INFO_6A;
- typedef struct _DRIVER_INFO_6W {
- DWORD cVersion;
- LPWSTR pName; // QMS 810
- LPWSTR pEnvironment; // Win32 x86
- LPWSTR pDriverPath; // c:\drivers\pscript.dll
- LPWSTR pDataFile; // c:\drivers\QMS810.PPD
- LPWSTR pConfigFile; // c:\drivers\PSCRPTUI.DLL
- LPWSTR pHelpFile; // c:\drivers\PSCRPTUI.HLP
- LPWSTR pDependentFiles; // PSCRIPT.DLL\0QMS810.PPD\0PSCRIPTUI.DLL\0PSCRIPTUI.HLP\0PSTEST.TXT\0\0
- LPWSTR pMonitorName; // "PJL monitor"
- LPWSTR pDefaultDataType; // "EMF"
- LPWSTR pszzPreviousNames; // "OldName1\0OldName2\0\0
- FILETIME ftDriverDate;
- DWORDLONG dwlDriverVersion;
- LPWSTR pszMfgName;
- LPWSTR pszOEMUrl;
- LPWSTR pszHardwareID;
- LPWSTR pszProvider;
- } DRIVER_INFO_6W, *PDRIVER_INFO_6W, *LPDRIVER_INFO_6W;
- #ifdef UNICODE
- typedef DRIVER_INFO_6W DRIVER_INFO_6;
- typedef PDRIVER_INFO_6W PDRIVER_INFO_6;
- typedef LPDRIVER_INFO_6W LPDRIVER_INFO_6;
- #else
- typedef DRIVER_INFO_6A DRIVER_INFO_6;
- typedef PDRIVER_INFO_6A PDRIVER_INFO_6;
- typedef LPDRIVER_INFO_6A LPDRIVER_INFO_6;
- #endif // UNICODE
- // FLAGS for dwDriverAttributes
- #define DRIVER_KERNELMODE 0x00000001
- #define DRIVER_USERMODE 0x00000002
- // FLAGS for DeletePrinterDriverEx.
- #define DPD_DELETE_UNUSED_FILES 0x00000001
- #define DPD_DELETE_SPECIFIC_VERSION 0x00000002
- #define DPD_DELETE_ALL_FILES 0x00000004
- // FLAGS for AddPrinterDriverEx.
- #define APD_STRICT_UPGRADE 0x00000001
- #define APD_STRICT_DOWNGRADE 0x00000002
- #define APD_COPY_ALL_FILES 0x00000004
- #define APD_COPY_NEW_FILES 0x00000008
- #define APD_COPY_FROM_DIRECTORY 0x00000010
- // String for EnumPrinterDrivers. Used by Windows Update
- typedef struct _DOC_INFO_1A {
- LPSTR pDocName;
- LPSTR pOutputFile;
- LPSTR pDatatype;
- } DOC_INFO_1A, *PDOC_INFO_1A, *LPDOC_INFO_1A;
- typedef struct _DOC_INFO_1W {
- LPWSTR pDocName;
- LPWSTR pOutputFile;
- LPWSTR pDatatype;
- } DOC_INFO_1W, *PDOC_INFO_1W, *LPDOC_INFO_1W;
- #ifdef UNICODE
- typedef DOC_INFO_1W DOC_INFO_1;
- typedef PDOC_INFO_1W PDOC_INFO_1;
- typedef LPDOC_INFO_1W LPDOC_INFO_1;
- #else
- typedef DOC_INFO_1A DOC_INFO_1;
- typedef PDOC_INFO_1A PDOC_INFO_1;
- typedef LPDOC_INFO_1A LPDOC_INFO_1;
- #endif // UNICODE
- typedef struct _FORM_INFO_1A {
- DWORD Flags;
- LPSTR pName;
- SIZEL Size;
- RECTL ImageableArea;
- } FORM_INFO_1A, *PFORM_INFO_1A, *LPFORM_INFO_1A;
- typedef struct _FORM_INFO_1W {
- DWORD Flags;
- LPWSTR pName;
- SIZEL Size;
- RECTL ImageableArea;
- } FORM_INFO_1W, *PFORM_INFO_1W, *LPFORM_INFO_1W;
- #ifdef UNICODE
- typedef FORM_INFO_1W FORM_INFO_1;
- typedef PFORM_INFO_1W PFORM_INFO_1;
- typedef LPFORM_INFO_1W LPFORM_INFO_1;
- #else
- typedef FORM_INFO_1A FORM_INFO_1;
- typedef PFORM_INFO_1A PFORM_INFO_1;
- typedef LPFORM_INFO_1A LPFORM_INFO_1;
- #endif // UNICODE
- typedef struct _DOC_INFO_2A {
- LPSTR pDocName;
- LPSTR pOutputFile;
- LPSTR pDatatype;
- DWORD dwMode;
- DWORD JobId;
- } DOC_INFO_2A, *PDOC_INFO_2A, *LPDOC_INFO_2A;
- typedef struct _DOC_INFO_2W {
- LPWSTR pDocName;
- LPWSTR pOutputFile;
- LPWSTR pDatatype;
- DWORD dwMode;
- DWORD JobId;
- } DOC_INFO_2W, *PDOC_INFO_2W, *LPDOC_INFO_2W;
- #ifdef UNICODE
- typedef DOC_INFO_2W DOC_INFO_2;
- typedef PDOC_INFO_2W PDOC_INFO_2;
- typedef LPDOC_INFO_2W LPDOC_INFO_2;
- #else
- typedef DOC_INFO_2A DOC_INFO_2;
- typedef PDOC_INFO_2A PDOC_INFO_2;
- typedef LPDOC_INFO_2A LPDOC_INFO_2;
- #endif // UNICODE
- #define DI_CHANNEL 1 // start direct read/write channel,
- #define DI_READ_SPOOL_JOB 3
- typedef struct _DOC_INFO_3A {
- LPSTR pDocName;
- LPSTR pOutputFile;
- LPSTR pDatatype;
- DWORD dwFlags;
- } DOC_INFO_3A, *PDOC_INFO_3A, *LPDOC_INFO_3A;
- typedef struct _DOC_INFO_3W {
- LPWSTR pDocName;
- LPWSTR pOutputFile;
- LPWSTR pDatatype;
- DWORD dwFlags;
- } DOC_INFO_3W, *PDOC_INFO_3W, *LPDOC_INFO_3W;
- #ifdef UNICODE
- typedef DOC_INFO_3W DOC_INFO_3;
- typedef PDOC_INFO_3W PDOC_INFO_3;
- typedef LPDOC_INFO_3W LPDOC_INFO_3;
- #else
- typedef DOC_INFO_3A DOC_INFO_3;
- typedef PDOC_INFO_3A PDOC_INFO_3;
- typedef LPDOC_INFO_3A LPDOC_INFO_3;
- #endif // UNICODE
- #define DI_MEMORYMAP_WRITE 0x00000001
- #define FORM_USER 0x00000000
- #define FORM_BUILTIN 0x00000001
- #define FORM_PRINTER 0x00000002
- typedef struct _PRINTPROCESSOR_INFO_1A {
- LPSTR pName;
- } PRINTPROCESSOR_INFO_1A, *PPRINTPROCESSOR_INFO_1A, *LPPRINTPROCESSOR_INFO_1A;
- typedef struct _PRINTPROCESSOR_INFO_1W {
- LPWSTR pName;
- } PRINTPROCESSOR_INFO_1W, *PPRINTPROCESSOR_INFO_1W, *LPPRINTPROCESSOR_INFO_1W;
- #ifdef UNICODE
- typedef PRINTPROCESSOR_INFO_1W PRINTPROCESSOR_INFO_1;
- typedef PPRINTPROCESSOR_INFO_1W PPRINTPROCESSOR_INFO_1;
- typedef LPPRINTPROCESSOR_INFO_1W LPPRINTPROCESSOR_INFO_1;
- #else
- typedef PRINTPROCESSOR_INFO_1A PRINTPROCESSOR_INFO_1;
- typedef PPRINTPROCESSOR_INFO_1A PPRINTPROCESSOR_INFO_1;
- typedef LPPRINTPROCESSOR_INFO_1A LPPRINTPROCESSOR_INFO_1;
- #endif // UNICODE
- typedef struct _PRINTPROCESSOR_CAPS_1 {
- DWORD dwLevel;
- DWORD dwNupOptions;
- DWORD dwPageOrderFlags;
- DWORD dwNumberOfCopies;
- } PRINTPROCESSOR_CAPS_1, *PPRINTPROCESSOR_CAPS_1;
- #define NORMAL_PRINT 0x00000000
- #define REVERSE_PRINT 0x00000001
- typedef struct _PORT_INFO_1A {
- LPSTR pName;
- } PORT_INFO_1A, *PPORT_INFO_1A, *LPPORT_INFO_1A;
- typedef struct _PORT_INFO_1W {
- LPWSTR pName;
- } PORT_INFO_1W, *PPORT_INFO_1W, *LPPORT_INFO_1W;
- #ifdef UNICODE
- typedef PORT_INFO_1W PORT_INFO_1;
- typedef PPORT_INFO_1W PPORT_INFO_1;
- typedef LPPORT_INFO_1W LPPORT_INFO_1;
- #else
- typedef PORT_INFO_1A PORT_INFO_1;
- typedef PPORT_INFO_1A PPORT_INFO_1;
- typedef LPPORT_INFO_1A LPPORT_INFO_1;
- #endif // UNICODE
- typedef struct _PORT_INFO_2A {
- LPSTR pPortName;
- LPSTR pMonitorName;
- LPSTR pDescription;
- DWORD fPortType;
- DWORD Reserved;
- } PORT_INFO_2A, *PPORT_INFO_2A, *LPPORT_INFO_2A;
- typedef struct _PORT_INFO_2W {
- LPWSTR pPortName;
- LPWSTR pMonitorName;
- LPWSTR pDescription;
- DWORD fPortType;
- DWORD Reserved;
- } PORT_INFO_2W, *PPORT_INFO_2W, *LPPORT_INFO_2W;
- #ifdef UNICODE
- typedef PORT_INFO_2W PORT_INFO_2;
- typedef PPORT_INFO_2W PPORT_INFO_2;
- typedef LPPORT_INFO_2W LPPORT_INFO_2;
- #else
- typedef PORT_INFO_2A PORT_INFO_2;
- typedef PPORT_INFO_2A PPORT_INFO_2;
- typedef LPPORT_INFO_2A LPPORT_INFO_2;
- #endif // UNICODE
- #define PORT_TYPE_WRITE 0x0001
- #define PORT_TYPE_READ 0x0002
- #define PORT_TYPE_REDIRECTED 0x0004
- #define PORT_TYPE_NET_ATTACHED 0x0008
- typedef struct _PORT_INFO_3A {
- DWORD dwStatus;
- LPSTR pszStatus;
- DWORD dwSeverity;
- } PORT_INFO_3A, *PPORT_INFO_3A, *LPPORT_INFO_3A;
- typedef struct _PORT_INFO_3W {
- DWORD dwStatus;
- LPWSTR pszStatus;
- DWORD dwSeverity;
- } PORT_INFO_3W, *PPORT_INFO_3W, *LPPORT_INFO_3W;
- #ifdef UNICODE
- typedef PORT_INFO_3W PORT_INFO_3;
- typedef PPORT_INFO_3W PPORT_INFO_3;
- typedef LPPORT_INFO_3W LPPORT_INFO_3;
- #else
- typedef PORT_INFO_3A PORT_INFO_3;
- typedef PPORT_INFO_3A PPORT_INFO_3;
- typedef LPPORT_INFO_3A LPPORT_INFO_3;
- #endif // UNICODE
- #define PORT_STATUS_TYPE_ERROR 1
- #define PORT_STATUS_TYPE_WARNING 2
- #define PORT_STATUS_TYPE_INFO 3
- #define PORT_STATUS_OFFLINE 1
- #define PORT_STATUS_PAPER_JAM 2
- #define PORT_STATUS_PAPER_OUT 3
- #define PORT_STATUS_OUTPUT_BIN_FULL 4
- #define PORT_STATUS_PAPER_PROBLEM 5
- #define PORT_STATUS_NO_TONER 6
- #define PORT_STATUS_DOOR_OPEN 7
- #define PORT_STATUS_USER_INTERVENTION 8
- #define PORT_STATUS_OUT_OF_MEMORY 9
- #define PORT_STATUS_TONER_LOW 10
- #define PORT_STATUS_WARMING_UP 11
- #define PORT_STATUS_POWER_SAVE 12
- typedef struct _MONITOR_INFO_1A{
- LPSTR pName;
- } MONITOR_INFO_1A, *PMONITOR_INFO_1A, *LPMONITOR_INFO_1A;
- typedef struct _MONITOR_INFO_1W{
- LPWSTR pName;
- } MONITOR_INFO_1W, *PMONITOR_INFO_1W, *LPMONITOR_INFO_1W;
- #ifdef UNICODE
- typedef MONITOR_INFO_1W MONITOR_INFO_1;
- typedef PMONITOR_INFO_1W PMONITOR_INFO_1;
- typedef LPMONITOR_INFO_1W LPMONITOR_INFO_1;
- #else
- typedef MONITOR_INFO_1A MONITOR_INFO_1;
- typedef PMONITOR_INFO_1A PMONITOR_INFO_1;
- typedef LPMONITOR_INFO_1A LPMONITOR_INFO_1;
- #endif // UNICODE
- typedef struct _MONITOR_INFO_2A{
- LPSTR pName;
- LPSTR pEnvironment;
- LPSTR pDLLName;
- } MONITOR_INFO_2A, *PMONITOR_INFO_2A, *LPMONITOR_INFO_2A;
- typedef struct _MONITOR_INFO_2W{
- LPWSTR pName;
- LPWSTR pEnvironment;
- LPWSTR pDLLName;
- } MONITOR_INFO_2W, *PMONITOR_INFO_2W, *LPMONITOR_INFO_2W;
- #ifdef UNICODE
- typedef MONITOR_INFO_2W MONITOR_INFO_2;
- typedef PMONITOR_INFO_2W PMONITOR_INFO_2;
- typedef LPMONITOR_INFO_2W LPMONITOR_INFO_2;
- #else
- typedef MONITOR_INFO_2A MONITOR_INFO_2;
- typedef PMONITOR_INFO_2A PMONITOR_INFO_2;
- typedef LPMONITOR_INFO_2A LPMONITOR_INFO_2;
- #endif // UNICODE
- typedef struct _DATATYPES_INFO_1A{
- LPSTR pName;
- } DATATYPES_INFO_1A, *PDATATYPES_INFO_1A, *LPDATATYPES_INFO_1A;
- typedef struct _DATATYPES_INFO_1W{
- LPWSTR pName;
- } DATATYPES_INFO_1W, *PDATATYPES_INFO_1W, *LPDATATYPES_INFO_1W;
- #ifdef UNICODE
- typedef DATATYPES_INFO_1W DATATYPES_INFO_1;
- typedef PDATATYPES_INFO_1W PDATATYPES_INFO_1;
- typedef LPDATATYPES_INFO_1W LPDATATYPES_INFO_1;
- #else
- typedef DATATYPES_INFO_1A DATATYPES_INFO_1;
- typedef PDATATYPES_INFO_1A PDATATYPES_INFO_1;
- typedef LPDATATYPES_INFO_1A LPDATATYPES_INFO_1;
- #endif // UNICODE
- typedef struct _PRINTER_DEFAULTSA{
- LPSTR pDatatype;
- LPDEVMODEA pDevMode;
- ACCESS_MASK DesiredAccess;
- } PRINTER_DEFAULTSA, *PPRINTER_DEFAULTSA, *LPPRINTER_DEFAULTSA;
- typedef struct _PRINTER_DEFAULTSW{
- LPWSTR pDatatype;
- LPDEVMODEW pDevMode;
- ACCESS_MASK DesiredAccess;
- } PRINTER_DEFAULTSW, *PPRINTER_DEFAULTSW, *LPPRINTER_DEFAULTSW;
- #ifdef UNICODE
- typedef PRINTER_DEFAULTSW PRINTER_DEFAULTS;
- typedef PPRINTER_DEFAULTSW PPRINTER_DEFAULTS;
- typedef LPPRINTER_DEFAULTSW LPPRINTER_DEFAULTS;
- #else
- typedef PRINTER_DEFAULTSA PRINTER_DEFAULTS;
- typedef PPRINTER_DEFAULTSA PPRINTER_DEFAULTS;
- typedef LPPRINTER_DEFAULTSA LPPRINTER_DEFAULTS;
- #endif // UNICODE
- typedef struct _PRINTER_ENUM_VALUESA {
- LPSTR pValueName;
- DWORD cbValueName;
- DWORD dwType;
- LPBYTE pData;
- DWORD cbData;
- } PRINTER_ENUM_VALUESA, *PPRINTER_ENUM_VALUESA, *LPPRINTER_ENUM_VALUESA;
- typedef struct _PRINTER_ENUM_VALUESW {
- LPWSTR pValueName;
- DWORD cbValueName;
- DWORD dwType;
- LPBYTE pData;
- DWORD cbData;
- } PRINTER_ENUM_VALUESW, *PPRINTER_ENUM_VALUESW, *LPPRINTER_ENUM_VALUESW;
- #ifdef UNICODE
- typedef PRINTER_ENUM_VALUESW PRINTER_ENUM_VALUES;
- typedef PPRINTER_ENUM_VALUESW PPRINTER_ENUM_VALUES;
- typedef LPPRINTER_ENUM_VALUESW LPPRINTER_ENUM_VALUES;
- #else
- typedef PRINTER_ENUM_VALUESA PRINTER_ENUM_VALUES;
- typedef PPRINTER_ENUM_VALUESA PPRINTER_ENUM_VALUES;
- typedef LPPRINTER_ENUM_VALUESA LPPRINTER_ENUM_VALUES;
- #endif // UNICODE
- BOOL
- WINAPI
- EnumPrintersA(
- IN DWORD Flags,
- IN LPSTR Name,
- IN DWORD Level,
- OUT LPBYTE pPrinterEnum,
- IN DWORD cbBuf,
- OUT LPDWORD pcbNeeded,
- OUT LPDWORD pcReturned
- );
- BOOL
- WINAPI
- EnumPrintersW(
- IN DWORD Flags,
- IN LPWSTR Name,
- IN DWORD Level,
- OUT LPBYTE pPrinterEnum,
- IN DWORD cbBuf,
- OUT LPDWORD pcbNeeded,
- OUT LPDWORD pcReturned
- );
- #ifdef UNICODE
- #define EnumPrinters EnumPrintersW
- #else
- #define EnumPrinters EnumPrintersA
- #endif // !UNICODE
- #define PRINTER_ENUM_DEFAULT 0x00000001
- #define PRINTER_ENUM_LOCAL 0x00000002
- #define PRINTER_ENUM_CONNECTIONS 0x00000004
- #define PRINTER_ENUM_FAVORITE 0x00000004
- #define PRINTER_ENUM_NAME 0x00000008
- #define PRINTER_ENUM_REMOTE 0x00000010
- #define PRINTER_ENUM_SHARED 0x00000020
- #define PRINTER_ENUM_NETWORK 0x00000040
- #define PRINTER_ENUM_EXPAND 0x00004000
- #define PRINTER_ENUM_CONTAINER 0x00008000
- #define PRINTER_ENUM_ICONMASK 0x00ff0000
- #define PRINTER_ENUM_ICON1 0x00010000
- #define PRINTER_ENUM_ICON2 0x00020000
- #define PRINTER_ENUM_ICON3 0x00040000
- #define PRINTER_ENUM_ICON4 0x00080000
- #define PRINTER_ENUM_ICON5 0x00100000
- #define PRINTER_ENUM_ICON6 0x00200000
- #define PRINTER_ENUM_ICON7 0x00400000
- #define PRINTER_ENUM_ICON8 0x00800000
- #define PRINTER_ENUM_HIDE 0x01000000
- #define SPOOL_FILE_PERSISTENT 0x00000001
- #define SPOOL_FILE_TEMPORARY 0x00000002
- BOOL
- WINAPI
- OpenPrinterA(
- IN LPSTR pPrinterName,
- OUT LPHANDLE phPrinter,
- IN LPPRINTER_DEFAULTSA pDefault
- );
- BOOL
- WINAPI
- OpenPrinterW(
- IN LPWSTR pPrinterName,
- OUT LPHANDLE phPrinter,
- IN LPPRINTER_DEFAULTSW pDefault
- );
- #ifdef UNICODE
- #define OpenPrinter OpenPrinterW
- #else
- #define OpenPrinter OpenPrinterA
- #endif // !UNICODE
- BOOL
- WINAPI
- ResetPrinterA(
- IN HANDLE hPrinter,
- IN LPPRINTER_DEFAULTSA pDefault
- );
- BOOL
- WINAPI
- ResetPrinterW(
- IN HANDLE hPrinter,
- IN LPPRINTER_DEFAULTSW pDefault
- );
- #ifdef UNICODE
- #define ResetPrinter ResetPrinterW
- #else
- #define ResetPrinter ResetPrinterA
- #endif // !UNICODE
- BOOL
- WINAPI
- SetJobA(
- IN HANDLE hPrinter,
- IN DWORD JobId,
- IN DWORD Level,
- IN LPBYTE pJob,
- IN DWORD Command
- );
- BOOL
- WINAPI
- SetJobW(
- IN HANDLE hPrinter,
- IN DWORD JobId,
- IN DWORD Level,
- IN LPBYTE pJob,
- IN DWORD Command
- );
- #ifdef UNICODE
- #define SetJob SetJobW
- #else
- #define SetJob SetJobA
- #endif // !UNICODE
- BOOL
- WINAPI
- GetJobA(
- IN HANDLE hPrinter,
- IN DWORD JobId,
- IN DWORD Level,
- OUT LPBYTE pJob,
- IN DWORD cbBuf,
- OUT LPDWORD pcbNeeded
- );
- BOOL
- WINAPI
- GetJobW(
- IN HANDLE hPrinter,
- IN DWORD JobId,
- IN DWORD Level,
- OUT LPBYTE pJob,
- IN DWORD cbBuf,
- OUT LPDWORD pcbNeeded
- );
- #ifdef UNICODE
- #define GetJob GetJobW
- #else
- #define GetJob GetJobA
- #endif // !UNICODE
- BOOL
- WINAPI
- EnumJobsA(
- IN HANDLE hPrinter,
- IN DWORD FirstJob,
- IN DWORD NoJobs,
- IN DWORD Level,
- OUT LPBYTE pJob,
- IN DWORD cbBuf,
- OUT LPDWORD pcbNeeded,
- OUT LPDWORD pcReturned
- );
- BOOL
- WINAPI
- EnumJobsW(
- IN HANDLE hPrinter,
- IN DWORD FirstJob,
- IN DWORD NoJobs,
- IN DWORD Level,
- OUT LPBYTE pJob,
- IN DWORD cbBuf,
- OUT LPDWORD pcbNeeded,
- OUT LPDWORD pcReturned
- );
- #ifdef UNICODE
- #define EnumJobs EnumJobsW
- #else
- #define EnumJobs EnumJobsA
- #endif // !UNICODE
- HANDLE
- WINAPI
- AddPrinterA(
- IN LPSTR pName,
- IN DWORD Level,
- IN LPBYTE pPrinter
- );
- HANDLE
- WINAPI
- AddPrinterW(
- IN LPWSTR pName,
- IN DWORD Level,
- IN LPBYTE pPrinter
- );
- #ifdef UNICODE
- #define AddPrinter AddPrinterW
- #else
- #define AddPrinter AddPrinterA
- #endif // !UNICODE
- BOOL
- WINAPI
- DeletePrinter(
- IN OUT HANDLE hPrinter
- );
- BOOL
- WINAPI
- SetPrinterA(
- IN HANDLE hPrinter,
- IN DWORD Level,
- IN LPBYTE pPrinter,
- IN DWORD Command
- );
- BOOL
- WINAPI
- SetPrinterW(
- IN HANDLE hPrinter,
- IN DWORD Level,
- IN LPBYTE pPrinter,
- IN DWORD Command
- );
- #ifdef UNICODE
- #define SetPrinter SetPrinterW
- #else
- #define SetPrinter SetPrinterA
- #endif // !UNICODE
- BOOL
- WINAPI
- GetPrinterA(
- IN HANDLE hPrinter,
- IN DWORD Level,
- OUT LPBYTE pPrinter,
- IN DWORD cbBuf,
- OUT LPDWORD pcbNeeded
- );
- BOOL
- WINAPI
- GetPrinterW(
- IN HANDLE hPrinter,
- IN DWORD Level,
- OUT LPBYTE pPrinter,
- IN DWORD cbBuf,
- OUT LPDWORD pcbNeeded
- );
- #ifdef UNICODE
- #define GetPrinter GetPrinterW
- #else
- #define GetPrinter GetPrinterA
- #endif // !UNICODE
- BOOL
- WINAPI
- AddPrinterDriverA(
- IN LPSTR pName,
- IN DWORD Level,
- OUT LPBYTE pDriverInfo
- );
- BOOL
- WINAPI
- AddPrinterDriverW(
- IN LPWSTR pName,
- IN DWORD Level,
- OUT LPBYTE pDriverInfo
- );
- #ifdef UNICODE
- #define AddPrinterDriver AddPrinterDriverW
- #else
- #define AddPrinterDriver AddPrinterDriverA
- #endif // !UNICODE
- BOOL
- WINAPI
- AddPrinterDriverExA(
- IN LPSTR pName,
- IN DWORD Level,
- IN OUT LPBYTE pDriverInfo,
- IN DWORD dwFileCopyFlags
- );
- BOOL
- WINAPI
- AddPrinterDriverExW(
- IN LPWSTR pName,
- IN DWORD Level,
- IN OUT LPBYTE pDriverInfo,
- IN DWORD dwFileCopyFlags
- );
- #ifdef UNICODE
- #define AddPrinterDriverEx AddPrinterDriverExW
- #else
- #define AddPrinterDriverEx AddPrinterDriverExA
- #endif // !UNICODE
- BOOL
- WINAPI
- EnumPrinterDriversA(
- IN LPSTR pName,
- IN LPSTR pEnvironment,
- IN DWORD Level,
- OUT LPBYTE pDriverInfo,
- IN DWORD cbBuf,
- OUT LPDWORD pcbNeeded,
- OUT LPDWORD pcReturned
- );
- BOOL
- WINAPI
- EnumPrinterDriversW(
- IN LPWSTR pName,
- IN LPWSTR pEnvironment,
- IN DWORD Level,
- OUT LPBYTE pDriverInfo,
- IN DWORD cbBuf,
- OUT LPDWORD pcbNeeded,
- OUT LPDWORD pcReturned
- );
- #ifdef UNICODE
- #define EnumPrinterDrivers EnumPrinterDriversW
- #else
- #define EnumPrinterDrivers EnumPrinterDriversA
- #endif // !UNICODE
- BOOL
- WINAPI
- GetPrinterDriverA(
- IN HANDLE hPrinter,
- IN LPSTR pEnvironment,
- IN DWORD Level,
- OUT LPBYTE pDriverInfo,
- IN DWORD cbBuf,
- OUT LPDWORD pcbNeeded
- );
- BOOL
- WINAPI
- GetPrinterDriverW(
- IN HANDLE hPrinter,
- IN LPWSTR pEnvironment,
- IN DWORD Level,
- OUT LPBYTE pDriverInfo,
- IN DWORD cbBuf,
- OUT LPDWORD pcbNeeded
- );
- #ifdef UNICODE
- #define GetPrinterDriver GetPrinterDriverW
- #else
- #define GetPrinterDriver GetPrinterDriverA
- #endif // !UNICODE
- BOOL
- WINAPI
- GetPrinterDriverDirectoryA(
- IN LPSTR pName,
- IN LPSTR pEnvironment,
- IN DWORD Level,
- OUT LPBYTE pDriverDirectory,
- IN DWORD cbBuf,
- OUT LPDWORD pcbNeeded
- );
- BOOL
- WINAPI
- GetPrinterDriverDirectoryW(
- IN LPWSTR pName,
- IN LPWSTR pEnvironment,
- IN DWORD Level,
- OUT LPBYTE pDriverDirectory,
- IN DWORD cbBuf,
- OUT LPDWORD pcbNeeded
- );
- #ifdef UNICODE
- #define GetPrinterDriverDirectory GetPrinterDriverDirectoryW
- #else
- #define GetPrinterDriverDirectory GetPrinterDriverDirectoryA
- #endif // !UNICODE
- BOOL
- WINAPI
- DeletePrinterDriverA(
- IN LPSTR pName,
- IN LPSTR pEnvironment,
- IN LPSTR pDriverName
- );
- BOOL
- WINAPI
- DeletePrinterDriverW(
- IN LPWSTR pName,
- IN LPWSTR pEnvironment,
- IN LPWSTR pDriverName
- );
- #ifdef UNICODE
- #define DeletePrinterDriver DeletePrinterDriverW
- #else
- #define DeletePrinterDriver DeletePrinterDriverA
- #endif // !UNICODE
- BOOL
- WINAPI
- DeletePrinterDriverExA(
- IN LPSTR pName,
- IN LPSTR pEnvironment,
- IN LPSTR pDriverName,
- IN DWORD dwDeleteFlag,
- IN DWORD dwVersionFlag
- );
- BOOL
- WINAPI
- DeletePrinterDriverExW(
- IN LPWSTR pName,
- IN LPWSTR pEnvironment,
- IN LPWSTR pDriverName,
- IN DWORD dwDeleteFlag,
- IN DWORD dwVersionFlag
- );
- #ifdef UNICODE
- #define DeletePrinterDriverEx DeletePrinterDriverExW
- #else
- #define DeletePrinterDriverEx DeletePrinterDriverExA
- #endif // !UNICODE
- BOOL
- WINAPI
- AddPrintProcessorA(
- IN LPSTR pName,
- IN LPSTR pEnvironment,
- IN LPSTR pPathName,
- IN LPSTR pPrintProcessorName
- );
- BOOL
- WINAPI
- AddPrintProcessorW(
- IN LPWSTR pName,
- IN LPWSTR pEnvironment,
- IN LPWSTR pPathName,
- IN LPWSTR pPrintProcessorName
- );
- #ifdef UNICODE
- #define AddPrintProcessor AddPrintProcessorW
- #else
- #define AddPrintProcessor AddPrintProcessorA
- #endif // !UNICODE
- BOOL
- WINAPI
- EnumPrintProcessorsA(
- IN LPSTR pName,
- IN LPSTR pEnvironment,
- IN DWORD Level,
- OUT LPBYTE pPrintProcessorInfo,
- IN DWORD cbBuf,
- OUT LPDWORD pcbNeeded,
- OUT LPDWORD pcReturned
- );
- BOOL
- WINAPI
- EnumPrintProcessorsW(
- IN LPWSTR pName,
- IN LPWSTR pEnvironment,
- IN DWORD Level,
- OUT LPBYTE pPrintProcessorInfo,
- IN DWORD cbBuf,
- OUT LPDWORD pcbNeeded,
- OUT LPDWORD pcReturned
- );
- #ifdef UNICODE
- #define EnumPrintProcessors EnumPrintProcessorsW
- #else
- #define EnumPrintProcessors EnumPrintProcessorsA
- #endif // !UNICODE
- BOOL
- WINAPI
- GetPrintProcessorDirectoryA(
- IN LPSTR pName,
- IN LPSTR pEnvironment,
- IN DWORD Level,
- OUT LPBYTE pPrintProcessorInfo,
- IN DWORD cbBuf,
- OUT LPDWORD pcbNeeded
- );
- BOOL
- WINAPI
- GetPrintProcessorDirectoryW(
- IN LPWSTR pName,
- IN LPWSTR pEnvironment,
- IN DWORD Level,
- OUT LPBYTE pPrintProcessorInfo,
- IN DWORD cbBuf,
- OUT LPDWORD pcbNeeded
- );
- #ifdef UNICODE
- #define GetPrintProcessorDirectory GetPrintProcessorDirectoryW
- #else
- #define GetPrintProcessorDirectory GetPrintProcessorDirectoryA
- #endif // !UNICODE
- BOOL
- WINAPI
- EnumPrintProcessorDatatypesA(
- IN LPSTR pName,
- IN LPSTR pPrintProcessorName,
- IN DWORD Level,
- OUT LPBYTE pDatatypes,
- IN DWORD cbBuf,
- OUT LPDWORD pcbNeeded,
- OUT LPDWORD pcReturned
- );
- BOOL
- WINAPI
- EnumPrintProcessorDatatypesW(
- IN LPWSTR pName,
- IN LPWSTR pPrintProcessorName,
- IN DWORD Level,
- OUT LPBYTE pDatatypes,
- IN DWORD cbBuf,
- OUT LPDWORD pcbNeeded,
- OUT LPDWORD pcReturned
- );
- #ifdef UNICODE
- #define EnumPrintProcessorDatatypes EnumPrintProcessorDatatypesW
- #else
- #define EnumPrintProcessorDatatypes EnumPrintProcessorDatatypesA
- #endif // !UNICODE
- BOOL
- WINAPI
- DeletePrintProcessorA(
- IN LPSTR pName,
- IN LPSTR pEnvironment,
- IN LPSTR pPrintProcessorName
- );
- BOOL
- WINAPI
- DeletePrintProcessorW(
- IN LPWSTR pName,
- IN LPWSTR pEnvironment,
- IN LPWSTR pPrintProcessorName
- );
- #ifdef UNICODE
- #define DeletePrintProcessor DeletePrintProcessorW
- #else
- #define DeletePrintProcessor DeletePrintProcessorA
- #endif // !UNICODE
- DWORD
- WINAPI
- StartDocPrinterA(
- IN HANDLE hPrinter,
- IN DWORD Level,
- IN LPBYTE pDocInfo
- );
- DWORD
- WINAPI
- StartDocPrinterW(
- IN HANDLE hPrinter,
- IN DWORD Level,
- IN LPBYTE pDocInfo
- );
- #ifdef UNICODE
- #define StartDocPrinter StartDocPrinterW
- #else
- #define StartDocPrinter StartDocPrinterA
- #endif // !UNICODE
- BOOL
- WINAPI
- StartPagePrinter(
- IN HANDLE hPrinter
- );
- BOOL
- WINAPI
- WritePrinter(
- IN HANDLE hPrinter,
- IN LPVOID pBuf,
- IN DWORD cbBuf,
- OUT LPDWORD pcWritten
- );
- BOOL
- WINAPI
- FlushPrinter(
- IN HANDLE hPrinter,
- IN LPVOID pBuf,
- IN DWORD cbBuf,
- OUT LPDWORD pcWritten,
- IN DWORD cSleep
- );
- BOOL
- WINAPI
- EndPagePrinter(
- IN HANDLE hPrinter
- );
- BOOL
- WINAPI
- AbortPrinter(
- IN HANDLE hPrinter
- );
- BOOL
- WINAPI
- ReadPrinter(
- IN HANDLE hPrinter,
- OUT LPVOID pBuf,
- IN DWORD cbBuf,
- OUT LPDWORD pNoBytesRead
- );
- BOOL
- WINAPI
- EndDocPrinter(
- IN HANDLE hPrinter
- );
- BOOL
- WINAPI
- AddJobA(
- IN HANDLE hPrinter,
- IN DWORD Level,
- OUT LPBYTE pData,
- IN DWORD cbBuf,
- OUT LPDWORD pcbNeeded
- );
- BOOL
- WINAPI
- AddJobW(
- IN HANDLE hPrinter,
- IN DWORD Level,
- OUT LPBYTE pData,
- IN DWORD cbBuf,
- OUT LPDWORD pcbNeeded
- );
- #ifdef UNICODE
- #define AddJob AddJobW
- #else
- #define AddJob AddJobA
- #endif // !UNICODE
- BOOL
- WINAPI
- ScheduleJob(
- IN HANDLE hPrinter,
- IN DWORD JobId
- );
- BOOL
- WINAPI
- PrinterProperties(
- IN HWND hWnd,
- IN HANDLE hPrinter
- );
- LONG
- WINAPI
- DocumentPropertiesA(
- IN HWND hWnd,
- IN HANDLE hPrinter,
- IN LPSTR pDeviceName,
- OUT PDEVMODEA pDevModeOutput,
- IN PDEVMODEA pDevModeInput,
- IN DWORD fMode
- );
- LONG
- WINAPI
- DocumentPropertiesW(
- IN HWND hWnd,
- IN HANDLE hPrinter,
- IN LPWSTR pDeviceName,
- OUT PDEVMODEW pDevModeOutput,
- IN PDEVMODEW pDevModeInput,
- IN DWORD fMode
- );
- #ifdef UNICODE
- #define DocumentProperties DocumentPropertiesW
- #else
- #define DocumentProperties DocumentPropertiesA
- #endif // !UNICODE
- LONG
- WINAPI
- AdvancedDocumentPropertiesA(
- IN HWND hWnd,
- IN HANDLE hPrinter,
- IN LPSTR pDeviceName,
- OUT PDEVMODEA pDevModeOutput,
- IN PDEVMODEA pDevModeInput
- );
- LONG
- WINAPI
- AdvancedDocumentPropertiesW(
- IN HWND hWnd,
- IN HANDLE hPrinter,
- IN LPWSTR pDeviceName,
- OUT PDEVMODEW pDevModeOutput,
- IN PDEVMODEW pDevModeInput
- );
- #ifdef UNICODE
- #define AdvancedDocumentProperties AdvancedDocumentPropertiesW
- #else
- #define AdvancedDocumentProperties AdvancedDocumentPropertiesA
- #endif // !UNICODE
- LONG
- ExtDeviceMode(
- IN HWND hWnd,
- IN HANDLE hInst,
- OUT LPDEVMODEA pDevModeOutput,
- IN LPSTR pDeviceName,
- IN LPSTR pPort,
- IN LPDEVMODEA pDevModeInput,
- IN LPSTR pProfile,
- OUT DWORD fMode
- );
- DWORD
- WINAPI
- GetPrinterDataA(
- IN HANDLE hPrinter,
- IN LPSTR pValueName,
- OUT LPDWORD pType,
- OUT LPBYTE pData,
- IN DWORD nSize,
- OUT LPDWORD pcbNeeded
- );
- DWORD
- WINAPI
- GetPrinterDataW(
- IN HANDLE hPrinter,
- IN LPWSTR pValueName,
- OUT LPDWORD pType,
- OUT LPBYTE pData,
- IN DWORD nSize,
- OUT LPDWORD pcbNeeded
- );
- #ifdef UNICODE
- #define GetPrinterData GetPrinterDataW
- #else
- #define GetPrinterData GetPrinterDataA
- #endif // !UNICODE
- DWORD
- WINAPI
- GetPrinterDataExA(
- IN HANDLE hPrinter,
- IN LPCSTR pKeyName,
- IN LPCSTR pValueName,
- OUT LPDWORD pType,
- OUT LPBYTE pData,
- IN DWORD nSize,
- OUT LPDWORD pcbNeeded
- );
- DWORD
- WINAPI
- GetPrinterDataExW(
- IN HANDLE hPrinter,
- IN LPCWSTR pKeyName,
- IN LPCWSTR pValueName,
- OUT LPDWORD pType,
- OUT LPBYTE pData,
- IN DWORD nSize,
- OUT LPDWORD pcbNeeded
- );
- #ifdef UNICODE
- #define GetPrinterDataEx GetPrinterDataExW
- #else
- #define GetPrinterDataEx GetPrinterDataExA
- #endif // !UNICODE
- DWORD
- WINAPI
- EnumPrinterDataA(
- IN HANDLE hPrinter,
- IN DWORD dwIndex,
- OUT LPSTR pValueName,
- IN DWORD cbValueName,
- OUT LPDWORD pcbValueName,
- OUT LPDWORD pType,
- OUT LPBYTE pData,
- IN DWORD cbData,
- OUT LPDWORD pcbData
- );
- DWORD
- WINAPI
- EnumPrinterDataW(
- IN HANDLE hPrinter,
- IN DWORD dwIndex,
- OUT LPWSTR pValueName,
- IN DWORD cbValueName,
- OUT LPDWORD pcbValueName,
- OUT LPDWORD pType,
- OUT LPBYTE pData,
- IN DWORD cbData,
- OUT LPDWORD pcbData
- );
- #ifdef UNICODE
- #define EnumPrinterData EnumPrinterDataW
- #else
- #define EnumPrinterData EnumPrinterDataA
- #endif // !UNICODE
- DWORD
- WINAPI
- EnumPrinterDataExA(
- IN HANDLE hPrinter,
- IN LPCSTR pKeyName,
- OUT LPBYTE pEnumValues,
- IN DWORD cbEnumValues,
- OUT LPDWORD pcbEnumValues,
- OUT LPDWORD pnEnumValues
- );
- DWORD
- WINAPI
- EnumPrinterDataExW(
- IN HANDLE hPrinter,
- IN LPCWSTR pKeyName,
- OUT LPBYTE pEnumValues,
- IN DWORD cbEnumValues,
- OUT LPDWORD pcbEnumValues,
- OUT LPDWORD pnEnumValues
- );
- #ifdef UNICODE
- #define EnumPrinterDataEx EnumPrinterDataExW
- #else
- #define EnumPrinterDataEx EnumPrinterDataExA
- #endif // !UNICODE
- DWORD
- WINAPI
- EnumPrinterKeyA(
- IN HANDLE hPrinter,
- IN LPCSTR pKeyName,
- OUT LPSTR pSubkey,
- IN DWORD cbSubkey,
- OUT LPDWORD pcbSubkey
- );
- DWORD
- WINAPI
- EnumPrinterKeyW(
- IN HANDLE hPrinter,
- IN LPCWSTR pKeyName,
- OUT LPWSTR pSubkey,
- IN DWORD cbSubkey,
- OUT LPDWORD pcbSubkey
- );
- #ifdef UNICODE
- #define EnumPrinterKey EnumPrinterKeyW
- #else
- #define EnumPrinterKey EnumPrinterKeyA
- #endif // !UNICODE
- DWORD
- WINAPI
- SetPrinterDataA(
- IN HANDLE hPrinter,
- IN LPSTR pValueName,
- IN DWORD Type,
- IN LPBYTE pData,
- IN DWORD cbData
- );
- DWORD
- WINAPI
- SetPrinterDataW(
- IN HANDLE hPrinter,
- IN LPWSTR pValueName,
- IN DWORD Type,
- IN LPBYTE pData,
- IN DWORD cbData
- );
- #ifdef UNICODE
- #define SetPrinterData SetPrinterDataW
- #else
- #define SetPrinterData SetPrinterDataA
- #endif // !UNICODE
- DWORD
- WINAPI
- SetPrinterDataExA(
- IN HANDLE hPrinter,
- IN LPCSTR pKeyName,
- IN LPCSTR pValueName,
- IN DWORD Type,
- IN LPBYTE pData,
- IN DWORD cbData
- );
- DWORD
- WINAPI
- SetPrinterDataExW(
- IN HANDLE hPrinter,
- IN LPCWSTR pKeyName,
- IN LPCWSTR pValueName,
- IN DWORD Type,
- IN LPBYTE pData,
- IN DWORD cbData
- );
- #ifdef UNICODE
- #define SetPrinterDataEx SetPrinterDataExW
- #else
- #define SetPrinterDataEx SetPrinterDataExA
- #endif // !UNICODE
- DWORD
- WINAPI
- DeletePrinterDataA(
- IN HANDLE hPrinter,
- IN LPSTR pValueName
- );
- DWORD
- WINAPI
- DeletePrinterDataW(
- IN HANDLE hPrinter,
- IN LPWSTR pValueName
- );
- #ifdef UNICODE
- #define DeletePrinterData DeletePrinterDataW
- #else
- #define DeletePrinterData DeletePrinterDataA
- #endif // !UNICODE
- DWORD
- WINAPI
- DeletePrinterDataExA(
- IN HANDLE hPrinter,
- IN LPCSTR pKeyName,
- IN LPCSTR pValueName
- );
- DWORD
- WINAPI
- DeletePrinterDataExW(
- IN HANDLE hPrinter,
- IN LPCWSTR pKeyName,
- IN LPCWSTR pValueName
- );
- #ifdef UNICODE
- #define DeletePrinterDataEx DeletePrinterDataExW
- #else
- #define DeletePrinterDataEx DeletePrinterDataExA
- #endif // !UNICODE
- DWORD
- WINAPI
- DeletePrinterKeyA(
- IN HANDLE hPrinter,
- IN LPCSTR pKeyName
- );
- DWORD
- WINAPI
- DeletePrinterKeyW(
- IN HANDLE hPrinter,
- IN LPCWSTR pKeyName
- );
- #ifdef UNICODE
- #define DeletePrinterKey DeletePrinterKeyW
- #else
- #define DeletePrinterKey DeletePrinterKeyA
- #endif // !UNICODE
- #define PRINTER_NOTIFY_TYPE 0x00
- #define JOB_NOTIFY_TYPE 0x01
- #define PRINTER_NOTIFY_FIELD_SERVER_NAME 0x00
- #define PRINTER_NOTIFY_FIELD_PRINTER_NAME 0x01
- #define PRINTER_NOTIFY_FIELD_SHARE_NAME 0x02
- #define PRINTER_NOTIFY_FIELD_PORT_NAME 0x03
- #define PRINTER_NOTIFY_FIELD_DRIVER_NAME 0x04
- #define PRINTER_NOTIFY_FIELD_COMMENT 0x05
- #define PRINTER_NOTIFY_FIELD_LOCATION 0x06
- #define PRINTER_NOTIFY_FIELD_DEVMODE 0x07
- #define PRINTER_NOTIFY_FIELD_SEPFILE 0x08
- #define PRINTER_NOTIFY_FIELD_PRINT_PROCESSOR 0x09
- #define PRINTER_NOTIFY_FIELD_PARAMETERS 0x0A
- #define PRINTER_NOTIFY_FIELD_DATATYPE 0x0B
- #define PRINTER_NOTIFY_FIELD_SECURITY_DESCRIPTOR 0x0C
- #define PRINTER_NOTIFY_FIELD_ATTRIBUTES 0x0D
- #define PRINTER_NOTIFY_FIELD_PRIORITY 0x0E
- #define PRINTER_NOTIFY_FIELD_DEFAULT_PRIORITY 0x0F
- #define PRINTER_NOTIFY_FIELD_START_TIME 0x10
- #define PRINTER_NOTIFY_FIELD_UNTIL_TIME 0x11
- #define PRINTER_NOTIFY_FIELD_STATUS 0x12
- #define PRINTER_NOTIFY_FIELD_STATUS_STRING 0x13
- #define PRINTER_NOTIFY_FIELD_CJOBS 0x14
- #define PRINTER_NOTIFY_FIELD_AVERAGE_PPM 0x15
- #define PRINTER_NOTIFY_FIELD_TOTAL_PAGES 0x16
- #define PRINTER_NOTIFY_FIELD_PAGES_PRINTED 0x17
- #define PRINTER_NOTIFY_FIELD_TOTAL_BYTES 0x18
- #define PRINTER_NOTIFY_FIELD_BYTES_PRINTED 0x19
- #define PRINTER_NOTIFY_FIELD_OBJECT_GUID 0x1A
- #define JOB_NOTIFY_FIELD_PRINTER_NAME 0x00
- #define JOB_NOTIFY_FIELD_MACHINE_NAME 0x01
- #define JOB_NOTIFY_FIELD_PORT_NAME 0x02
- #define JOB_NOTIFY_FIELD_USER_NAME 0x03
- #define JOB_NOTIFY_FIELD_NOTIFY_NAME 0x04
- #define JOB_NOTIFY_FIELD_DATATYPE 0x05
- #define JOB_NOTIFY_FIELD_PRINT_PROCESSOR 0x06
- #define JOB_NOTIFY_FIELD_PARAMETERS 0x07
- #define JOB_NOTIFY_FIELD_DRIVER_NAME 0x08
- #define JOB_NOTIFY_FIELD_DEVMODE 0x09
- #define JOB_NOTIFY_FIELD_STATUS 0x0A
- #define JOB_NOTIFY_FIELD_STATUS_STRING 0x0B
- #define JOB_NOTIFY_FIELD_SECURITY_DESCRIPTOR 0x0C
- #define JOB_NOTIFY_FIELD_DOCUMENT 0x0D
- #define JOB_NOTIFY_FIELD_PRIORITY 0x0E
- #define JOB_NOTIFY_FIELD_POSITION 0x0F
- #define JOB_NOTIFY_FIELD_SUBMITTED 0x10
- #define JOB_NOTIFY_FIELD_START_TIME 0x11
- #define JOB_NOTIFY_FIELD_UNTIL_TIME 0x12
- #define JOB_NOTIFY_FIELD_TIME 0x13
- #define JOB_NOTIFY_FIELD_TOTAL_PAGES 0x14
- #define JOB_NOTIFY_FIELD_PAGES_PRINTED 0x15
- #define JOB_NOTIFY_FIELD_TOTAL_BYTES 0x16
- #define JOB_NOTIFY_FIELD_BYTES_PRINTED 0x17
- typedef struct _PRINTER_NOTIFY_OPTIONS_TYPE {
- WORD Type;
- WORD Reserved0;
- DWORD Reserved1;
- DWORD Reserved2;
- DWORD Count;
- PWORD pFields;
- } PRINTER_NOTIFY_OPTIONS_TYPE, *PPRINTER_NOTIFY_OPTIONS_TYPE, *LPPRINTER_NOTIFY_OPTIONS_TYPE;
- #define PRINTER_NOTIFY_OPTIONS_REFRESH 0x01
- typedef struct _PRINTER_NOTIFY_OPTIONS {
- DWORD Version;
- DWORD Flags;
- DWORD Count;
- PPRINTER_NOTIFY_OPTIONS_TYPE pTypes;
- } PRINTER_NOTIFY_OPTIONS, *PPRINTER_NOTIFY_OPTIONS, *LPPRINTER_NOTIFY_OPTIONS;
- #define PRINTER_NOTIFY_INFO_DISCARDED 0x01
- typedef struct _PRINTER_NOTIFY_INFO_DATA {
- WORD Type;
- WORD Field;
- DWORD Reserved;
- DWORD Id;
- union {
- DWORD adwData[2];
- struct {
- DWORD cbBuf;
- LPVOID pBuf;
- } Data;
- } NotifyData;
- } PRINTER_NOTIFY_INFO_DATA, *PPRINTER_NOTIFY_INFO_DATA, *LPPRINTER_NOTIFY_INFO_DATA;
- typedef struct _PRINTER_NOTIFY_INFO {
- DWORD Version;
- DWORD Flags;
- DWORD Count;
- PRINTER_NOTIFY_INFO_DATA aData[1];
- } PRINTER_NOTIFY_INFO, *PPRINTER_NOTIFY_INFO, *LPPRINTER_NOTIFY_INFO;
- typedef struct _BINARY_CONTAINER{
- DWORD cbBuf;
- LPBYTE pData;
- } BINARY_CONTAINER, *PBINARY_CONTAINER;
- typedef struct _BIDI_DATA{
- DWORD dwBidiType;
- union {
- BOOL bData;
- LONG iData;
- LPWSTR sData;
- FLOAT fData;
- BINARY_CONTAINER biData;
- }u;
- } BIDI_DATA, *PBIDI_DATA, *LPBIDI_DATA;
- typedef struct _BIDI_REQUEST_DATA{
- DWORD dwReqNumber;
- LPWSTR pSchema;
- BIDI_DATA data;
- } BIDI_REQUEST_DATA , *PBIDI_REQUEST_DATA , *LPBIDI_REQUEST_DATA;
- typedef struct _BIDI_REQUEST_CONTAINER{
- DWORD Version;
- DWORD Flags;
- DWORD Count;
- BIDI_REQUEST_DATA aData[ 1 ];
- }BIDI_REQUEST_CONTAINER, *PBIDI_REQUEST_CONTAINER, *LPBIDI_REQUEST_CONTAINER;
- typedef struct _BIDI_RESPONSE_DATA{
- DWORD dwResult;
- DWORD dwReqNumber;
- LPWSTR pSchema;
- BIDI_DATA data;
- } BIDI_RESPONSE_DATA, *PBIDI_RESPONSE_DATA, *LPBIDI_RESPONSE_DATA;
- typedef struct _BIDI_RESPONSE_CONTAINER{
- DWORD Version;
- DWORD Flags;
- DWORD Count;
- BIDI_RESPONSE_DATA aData[ 1 ];
- } BIDI_RESPONSE_CONTAINER, *PBIDI_RESPONSE_CONTAINER, *LPBIDI_RESPONSE_CONTAINER;
- #define BIDI_ACTION_ENUM_SCHEMA L"EnumSchema"
- #define BIDI_ACTION_GET L"Get"
- #define BIDI_ACTION_SET L"Set"
- #define BIDI_ACTION_GET_ALL L"GetAll"
- typedef enum {
- BIDI_NULL = 0,
- BIDI_INT = 1,
- BIDI_FLOAT = 2,
- BIDI_BOOL = 3,
- BIDI_STRING = 4,
- BIDI_TEXT = 5,
- BIDI_ENUM = 6,
- BIDI_BLOB = 7
- } BIDI_TYPE;
- #define BIDI_ACCESS_ADMINISTRATOR 0x1
- #define BIDI_ACCESS_USER 0x2
- /*
- Error code for bidi apis
- */
- #define ERROR_BIDI_STATUS_OK 0
- #define ERROR_BIDI_NOT_SUPPORTED ERROR_NOT_SUPPORTED
- #define ERROR_BIDI_ERROR_BASE 13000
- #define ERROR_BIDI_STATUS_WARNING (ERROR_BIDI_ERROR_BASE + 1)
- #define ERROR_BIDI_SCHEMA_READ_ONLY (ERROR_BIDI_ERROR_BASE + 2)
- #define ERROR_BIDI_SERVER_OFFLINE (ERROR_BIDI_ERROR_BASE + 3)
- #define ERROR_BIDI_DEVICE_OFFLINE (ERROR_BIDI_ERROR_BASE + 4)
- #define ERROR_BIDI_SCHEMA_NOT_SUPPORTED (ERROR_BIDI_ERROR_BASE + 5)
- DWORD
- WINAPI
- WaitForPrinterChange(
- IN HANDLE hPrinter,
- IN DWORD Flags
- );
- HANDLE
- WINAPI
- FindFirstPrinterChangeNotification(
- IN HANDLE hPrinter,
- IN DWORD fdwFlags,
- IN DWORD fdwOptions,
- IN LPVOID pPrinterNotifyOptions
- );
- BOOL
- WINAPI
- FindNextPrinterChangeNotification(
- IN HANDLE hChange,
- OUT PDWORD pdwChange,
- IN LPVOID pvReserved,
- OUT LPVOID *ppPrinterNotifyInfo
- );
- BOOL
- WINAPI
- FreePrinterNotifyInfo(
- IN PPRINTER_NOTIFY_INFO pPrinterNotifyInfo
- );
- BOOL
- WINAPI
- FindClosePrinterChangeNotification(
- IN HANDLE hChange
- );
- #define PRINTER_CHANGE_ADD_PRINTER 0x00000001
- #define PRINTER_CHANGE_SET_PRINTER 0x00000002
- #define PRINTER_CHANGE_DELETE_PRINTER 0x00000004
- #define PRINTER_CHANGE_FAILED_CONNECTION_PRINTER 0x00000008
- #define PRINTER_CHANGE_PRINTER 0x000000FF
- #define PRINTER_CHANGE_ADD_JOB 0x00000100
- #define PRINTER_CHANGE_SET_JOB 0x00000200
- #define PRINTER_CHANGE_DELETE_JOB 0x00000400
- #define PRINTER_CHANGE_WRITE_JOB 0x00000800
- #define PRINTER_CHANGE_JOB 0x0000FF00
- #define PRINTER_CHANGE_ADD_FORM 0x00010000
- #define PRINTER_CHANGE_SET_FORM 0x00020000
- #define PRINTER_CHANGE_DELETE_FORM 0x00040000
- #define PRINTER_CHANGE_FORM 0x00070000
- #define PRINTER_CHANGE_ADD_PORT 0x00100000
- #define PRINTER_CHANGE_CONFIGURE_PORT 0x00200000
- #define PRINTER_CHANGE_DELETE_PORT 0x00400000
- #define PRINTER_CHANGE_PORT 0x00700000
- #define PRINTER_CHANGE_ADD_PRINT_PROCESSOR 0x01000000
- #define PRINTER_CHANGE_DELETE_PRINT_PROCESSOR 0x04000000
- #define PRINTER_CHANGE_PRINT_PROCESSOR 0x07000000
- #define PRINTER_CHANGE_ADD_PRINTER_DRIVER 0x10000000
- #define PRINTER_CHANGE_SET_PRINTER_DRIVER 0x20000000
- #define PRINTER_CHANGE_DELETE_PRINTER_DRIVER 0x40000000
- #define PRINTER_CHANGE_PRINTER_DRIVER 0x70000000
- #define PRINTER_CHANGE_TIMEOUT 0x80000000
- #define PRINTER_CHANGE_ALL 0x7777FFFF
- DWORD
- WINAPI
- PrinterMessageBoxA(
- IN HANDLE hPrinter,
- IN DWORD Error,
- IN HWND hWnd,
- IN LPSTR pText,
- IN LPSTR pCaption,
- IN DWORD dwType
- );
- DWORD
- WINAPI
- PrinterMessageBoxW(
- IN HANDLE hPrinter,
- IN DWORD Error,
- IN HWND hWnd,
- IN LPWSTR pText,
- IN LPWSTR pCaption,
- IN DWORD dwType
- );
- #ifdef UNICODE
- #define PrinterMessageBox PrinterMessageBoxW
- #else
- #define PrinterMessageBox PrinterMessageBoxA
- #endif // !UNICODE
- #define PRINTER_ERROR_INFORMATION 0x80000000
- #define PRINTER_ERROR_WARNING 0x40000000
- #define PRINTER_ERROR_SEVERE 0x20000000
- #define PRINTER_ERROR_OUTOFPAPER 0x00000001
- #define PRINTER_ERROR_JAM 0x00000002
- #define PRINTER_ERROR_OUTOFTONER 0x00000004
- BOOL
- WINAPI
- ClosePrinter(
- IN HANDLE hPrinter
- );
- BOOL
- WINAPI
- AddFormA(
- IN HANDLE hPrinter,
- IN DWORD Level,
- IN LPBYTE pForm
- );
- BOOL
- WINAPI
- AddFormW(
- IN HANDLE hPrinter,
- IN DWORD Level,
- IN LPBYTE pForm
- );
- #ifdef UNICODE
- #define AddForm AddFormW
- #else
- #define AddForm AddFormA
- #endif // !UNICODE
- BOOL
- WINAPI
- DeleteFormA(
- IN HANDLE hPrinter,
- IN LPSTR pFormName
- );
- BOOL
- WINAPI
- DeleteFormW(
- IN HANDLE hPrinter,
- IN LPWSTR pFormName
- );
- #ifdef UNICODE
- #define DeleteForm DeleteFormW
- #else
- #define DeleteForm DeleteFormA
- #endif // !UNICODE
- BOOL
- WINAPI
- GetFormA(
- IN HANDLE hPrinter,
- IN LPSTR pFormName,
- IN DWORD Level,
- OUT LPBYTE pForm,
- IN DWORD cbBuf,
- OUT LPDWORD pcbNeeded
- );
- BOOL
- WINAPI
- GetFormW(
- IN HANDLE hPrinter,
- IN LPWSTR pFormName,
- IN DWORD Level,
- OUT LPBYTE pForm,
- IN DWORD cbBuf,
- OUT LPDWORD pcbNeeded
- );
- #ifdef UNICODE
- #define GetForm GetFormW
- #else
- #define GetForm GetFormA
- #endif // !UNICODE
- BOOL
- WINAPI
- SetFormA(
- IN HANDLE hPrinter,
- IN LPSTR pFormName,
- IN DWORD Level,
- IN LPBYTE pForm
- );
- BOOL
- WINAPI
- SetFormW(
- IN HANDLE hPrinter,
- IN LPWSTR pFormName,
- IN DWORD Level,
- IN LPBYTE pForm
- );
- #ifdef UNICODE
- #define SetForm SetFormW
- #else
- #define SetForm SetFormA
- #endif // !UNICODE
- BOOL
- WINAPI
- EnumFormsA(
- IN HANDLE hPrinter,
- IN DWORD Level,
- OUT LPBYTE pForm,
- IN DWORD cbBuf,
- OUT LPDWORD pcbNeeded,
- OUT LPDWORD pcReturned
- );
- BOOL
- WINAPI
- EnumFormsW(
- IN HANDLE hPrinter,
- IN DWORD Level,
- OUT LPBYTE pForm,
- IN DWORD cbBuf,
- OUT LPDWORD pcbNeeded,
- OUT LPDWORD pcReturned
- );
- #ifdef UNICODE
- #define EnumForms EnumFormsW
- #else
- #define EnumForms EnumFormsA
- #endif // !UNICODE
- BOOL
- WINAPI
- EnumMonitorsA(
- IN LPSTR pName,
- IN DWORD Level,
- OUT LPBYTE pMonitors,
- IN DWORD cbBuf,
- OUT LPDWORD pcbNeeded,
- OUT LPDWORD pcReturned
- );
- BOOL
- WINAPI
- EnumMonitorsW(
- IN LPWSTR pName,
- IN DWORD Level,
- OUT LPBYTE pMonitors,
- IN DWORD cbBuf,
- OUT LPDWORD pcbNeeded,
- OUT LPDWORD pcReturned
- );
- #ifdef UNICODE
- #define EnumMonitors EnumMonitorsW
- #else
- #define EnumMonitors EnumMonitorsA
- #endif // !UNICODE
- BOOL
- WINAPI
- AddMonitorA(
- IN LPSTR pName,
- IN DWORD Level,
- IN LPBYTE pMonitors
- );
- BOOL
- WINAPI
- AddMonitorW(
- IN LPWSTR pName,
- IN DWORD Level,
- IN LPBYTE pMonitors
- );
- #ifdef UNICODE
- #define AddMonitor AddMonitorW
- #else
- #define AddMonitor AddMonitorA
- #endif // !UNICODE
- BOOL
- WINAPI
- DeleteMonitorA(
- IN LPSTR pName,
- IN LPSTR pEnvironment,
- IN LPSTR pMonitorName
- );
- BOOL
- WINAPI
- DeleteMonitorW(
- IN LPWSTR pName,
- IN LPWSTR pEnvironment,
- IN LPWSTR pMonitorName
- );
- #ifdef UNICODE
- #define DeleteMonitor DeleteMonitorW
- #else
- #define DeleteMonitor DeleteMonitorA
- #endif // !UNICODE
- BOOL
- WINAPI
- EnumPortsA(
- IN LPSTR pName,
- IN DWORD Level,
- OUT LPBYTE pPorts,
- IN DWORD cbBuf,
- OUT LPDWORD pcbNeeded,
- OUT LPDWORD pcReturned
- );
- BOOL
- WINAPI
- EnumPortsW(
- IN LPWSTR pName,
- IN DWORD Level,
- OUT LPBYTE pPorts,
- IN DWORD cbBuf,
- OUT LPDWORD pcbNeeded,
- OUT LPDWORD pcReturned
- );
- #ifdef UNICODE
- #define EnumPorts EnumPortsW
- #else
- #define EnumPorts EnumPortsA
- #endif // !UNICODE
- BOOL
- WINAPI
- AddPortA(
- IN LPSTR pName,
- IN HWND hWnd,
- IN LPSTR pMonitorName
- );
- BOOL
- WINAPI
- AddPortW(
- IN LPWSTR pName,
- IN HWND hWnd,
- IN LPWSTR pMonitorName
- );
- #ifdef UNICODE
- #define AddPort AddPortW
- #else
- #define AddPort AddPortA
- #endif // !UNICODE
- BOOL
- WINAPI
- ConfigurePortA(
- IN LPSTR pName,
- IN HWND hWnd,
- IN LPSTR pPortName
- );
- BOOL
- WINAPI
- ConfigurePortW(
- IN LPWSTR pName,
- IN HWND hWnd,
- IN LPWSTR pPortName
- );
- #ifdef UNICODE
- #define ConfigurePort ConfigurePortW
- #else
- #define ConfigurePort ConfigurePortA
- #endif // !UNICODE
- BOOL
- WINAPI
- DeletePortA(
- IN LPSTR pName,
- IN HWND hWnd,
- IN LPSTR pPortName
- );
- BOOL
- WINAPI
- DeletePortW(
- IN LPWSTR pName,
- IN HWND hWnd,
- IN LPWSTR pPortName
- );
- #ifdef UNICODE
- #define DeletePort DeletePortW
- #else
- #define DeletePort DeletePortA
- #endif // !UNICODE
- BOOL
- WINAPI
- XcvDataW(
- IN HANDLE hXcv,
- IN PCWSTR pszDataName,
- IN PBYTE pInputData,
- IN DWORD cbInputData,
- OUT PBYTE pOutputData,
- IN DWORD cbOutputData,
- OUT PDWORD pcbOutputNeeded,
- OUT PDWORD pdwStatus
- );
- #define XcvData XcvDataW
- BOOL
- WINAPI
- GetDefaultPrinterA(
- IN LPSTR pszBuffer,
- IN LPDWORD pcchBuffer
- );
- BOOL
- WINAPI
- GetDefaultPrinterW(
- IN LPWSTR pszBuffer,
- IN LPDWORD pcchBuffer
- );
- #ifdef UNICODE
- #define GetDefaultPrinter GetDefaultPrinterW
- #else
- #define GetDefaultPrinter GetDefaultPrinterA
- #endif // !UNICODE
- BOOL
- WINAPI
- SetDefaultPrinterA(
- IN LPCSTR pszPrinter
- );
- BOOL
- WINAPI
- SetDefaultPrinterW(
- IN LPCWSTR pszPrinter
- );
- #ifdef UNICODE
- #define SetDefaultPrinter SetDefaultPrinterW
- #else
- #define SetDefaultPrinter SetDefaultPrinterA
- #endif // !UNICODE
- BOOL
- WINAPI
- SetPortA(
- IN LPSTR pName,
- IN LPSTR pPortName,
- IN DWORD dwLevel,
- IN LPBYTE pPortInfo
- );
- BOOL
- WINAPI
- SetPortW(
- IN LPWSTR pName,
- IN LPWSTR pPortName,
- IN DWORD dwLevel,
- IN LPBYTE pPortInfo
- );
- #ifdef UNICODE
- #define SetPort SetPortW
- #else
- #define SetPort SetPortA
- #endif // !UNICODE
- BOOL
- WINAPI
- AddPrinterConnectionA(
- IN LPSTR pName
- );
- BOOL
- WINAPI
- AddPrinterConnectionW(
- IN LPWSTR pName
- );
- #ifdef UNICODE
- #define AddPrinterConnection AddPrinterConnectionW
- #else
- #define AddPrinterConnection AddPrinterConnectionA
- #endif // !UNICODE
- BOOL
- WINAPI
- DeletePrinterConnectionA(
- IN LPSTR pName
- );
- BOOL
- WINAPI
- DeletePrinterConnectionW(
- IN LPWSTR pName
- );
- #ifdef UNICODE
- #define DeletePrinterConnection DeletePrinterConnectionW
- #else
- #define DeletePrinterConnection DeletePrinterConnectionA
- #endif // !UNICODE
- HANDLE
- WINAPI
- ConnectToPrinterDlg(
- IN HWND hwnd,
- IN DWORD Flags
- );
- typedef struct _PROVIDOR_INFO_1A{
- LPSTR pName;
- LPSTR pEnvironment;
- LPSTR pDLLName;
- } PROVIDOR_INFO_1A, *PPROVIDOR_INFO_1A, *LPPROVIDOR_INFO_1A;
- typedef struct _PROVIDOR_INFO_1W{
- LPWSTR pName;
- LPWSTR pEnvironment;
- LPWSTR pDLLName;
- } PROVIDOR_INFO_1W, *PPROVIDOR_INFO_1W, *LPPROVIDOR_INFO_1W;
- #ifdef UNICODE
- typedef PROVIDOR_INFO_1W PROVIDOR_INFO_1;
- typedef PPROVIDOR_INFO_1W PPROVIDOR_INFO_1;
- typedef LPPROVIDOR_INFO_1W LPPROVIDOR_INFO_1;
- #else
- typedef PROVIDOR_INFO_1A PROVIDOR_INFO_1;
- typedef PPROVIDOR_INFO_1A PPROVIDOR_INFO_1;
- typedef LPPROVIDOR_INFO_1A LPPROVIDOR_INFO_1;
- #endif // UNICODE
- typedef struct _PROVIDOR_INFO_2A{
- LPSTR pOrder;
- } PROVIDOR_INFO_2A, *PPROVIDOR_INFO_2A, *LPPROVIDOR_INFO_2A;
- typedef struct _PROVIDOR_INFO_2W{
- LPWSTR pOrder;
- } PROVIDOR_INFO_2W, *PPROVIDOR_INFO_2W, *LPPROVIDOR_INFO_2W;
- #ifdef UNICODE
- typedef PROVIDOR_INFO_2W PROVIDOR_INFO_2;
- typedef PPROVIDOR_INFO_2W PPROVIDOR_INFO_2;
- typedef LPPROVIDOR_INFO_2W LPPROVIDOR_INFO_2;
- #else
- typedef PROVIDOR_INFO_2A PROVIDOR_INFO_2;
- typedef PPROVIDOR_INFO_2A PPROVIDOR_INFO_2;
- typedef LPPROVIDOR_INFO_2A LPPROVIDOR_INFO_2;
- #endif // UNICODE
- BOOL
- WINAPI
- AddPrintProvidorA(
- IN LPSTR pName,
- IN DWORD level,
- IN LPBYTE pProvidorInfo
- );
- BOOL
- WINAPI
- AddPrintProvidorW(
- IN LPWSTR pName,
- IN DWORD level,
- IN LPBYTE pProvidorInfo
- );
- #ifdef UNICODE
- #define AddPrintProvidor AddPrintProvidorW
- #else
- #define AddPrintProvidor AddPrintProvidorA
- #endif // !UNICODE
- BOOL
- WINAPI
- DeletePrintProvidorA(
- IN LPSTR pName,
- IN LPSTR pEnvironment,
- IN LPSTR pPrintProvidorName
- );
- BOOL
- WINAPI
- DeletePrintProvidorW(
- IN LPWSTR pName,
- IN LPWSTR pEnvironment,
- IN LPWSTR pPrintProvidorName
- );
- #ifdef UNICODE
- #define DeletePrintProvidor DeletePrintProvidorW
- #else
- #define DeletePrintProvidor DeletePrintProvidorA
- #endif // !UNICODE
- BOOL
- WINAPI
- IsValidDevmodeA(
- IN PDEVMODEA pDevmode,
- IN size_t DevmodeSize
- );
- BOOL
- WINAPI
- IsValidDevmodeW(
- IN PDEVMODEW pDevmode,
- IN size_t DevmodeSize
- );
- #ifdef UNICODE
- #define IsValidDevmode IsValidDevmodeW
- #else
- #define IsValidDevmode IsValidDevmodeA
- #endif // !UNICODE
- /*
- * SetPrinterData and GetPrinterData Server Handle Key values
- */
- #define SPLREG_DEFAULT_SPOOL_DIRECTORY TEXT("DefaultSpoolDirectory")
- #define SPLREG_PORT_THREAD_PRIORITY_DEFAULT TEXT("PortThreadPriorityDefault")
- #define SPLREG_PORT_THREAD_PRIORITY TEXT("PortThreadPriority")
- #define SPLREG_SCHEDULER_THREAD_PRIORITY_DEFAULT TEXT("SchedulerThreadPriorityDefault")
- #define SPLREG_SCHEDULER_THREAD_PRIORITY TEXT("SchedulerThreadPriority")
- #define SPLREG_BEEP_ENABLED TEXT("BeepEnabled")
- #define SPLREG_NET_POPUP TEXT("NetPopup")
- #define SPLREG_RETRY_POPUP TEXT("RetryPopup")
- #define SPLREG_NET_POPUP_TO_COMPUTER TEXT("NetPopupToComputer")
- #define SPLREG_EVENT_LOG TEXT("EventLog")
- #define SPLREG_MAJOR_VERSION TEXT("MajorVersion")
- #define SPLREG_MINOR_VERSION TEXT("MinorVersion")
- #define SPLREG_ARCHITECTURE TEXT("Architecture")
- #define SPLREG_OS_VERSION TEXT("OSVersion")
- #define SPLREG_OS_VERSIONEX TEXT("OSVersionEx")
- #define SPLREG_DS_PRESENT TEXT("DsPresent")
- #define SPLREG_DS_PRESENT_FOR_USER TEXT("DsPresentForUser")
- #define SPLREG_REMOTE_FAX TEXT("RemoteFax")
- #define SPLREG_RESTART_JOB_ON_POOL_ERROR TEXT("RestartJobOnPoolError")
- #define SPLREG_RESTART_JOB_ON_POOL_ENABLED TEXT("RestartJobOnPoolEnabled")
- #define SPLREG_DNS_MACHINE_NAME TEXT("DNSMachineName")
- #define SPLREG_ALLOW_USER_MANAGEFORMS TEXT("AllowUserManageForms")
- #define SERVER_ACCESS_ADMINISTER 0x00000001
- #define SERVER_ACCESS_ENUMERATE 0x00000002
- #define PRINTER_ACCESS_ADMINISTER 0x00000004
- #define PRINTER_ACCESS_USE 0x00000008
- #define JOB_ACCESS_ADMINISTER 0x00000010
- #define JOB_ACCESS_READ 0x00000020
- /*
- * Access rights for print servers
- */
- #define SERVER_ALL_ACCESS (STANDARD_RIGHTS_REQUIRED |\
- SERVER_ACCESS_ADMINISTER |\
- SERVER_ACCESS_ENUMERATE)
- #define SERVER_READ (STANDARD_RIGHTS_READ |\
- SERVER_ACCESS_ENUMERATE)
- #define SERVER_WRITE (STANDARD_RIGHTS_WRITE |\
- SERVER_ACCESS_ADMINISTER |\
- SERVER_ACCESS_ENUMERATE)
- #define SERVER_EXECUTE (STANDARD_RIGHTS_EXECUTE |\
- SERVER_ACCESS_ENUMERATE)
- /*
- * Access rights for printers
- */
- #define PRINTER_ALL_ACCESS (STANDARD_RIGHTS_REQUIRED |\
- PRINTER_ACCESS_ADMINISTER |\
- PRINTER_ACCESS_USE)
- #define PRINTER_READ (STANDARD_RIGHTS_READ |\
- PRINTER_ACCESS_USE)
- #define PRINTER_WRITE (STANDARD_RIGHTS_WRITE |\
- PRINTER_ACCESS_USE)
- #define PRINTER_EXECUTE (STANDARD_RIGHTS_EXECUTE |\
- PRINTER_ACCESS_USE)
- /*
- * Access rights for jobs
- */
- #define JOB_ALL_ACCESS (STANDARD_RIGHTS_REQUIRED |\
- JOB_ACCESS_ADMINISTER |\
- JOB_ACCESS_READ)
- #define JOB_READ (STANDARD_RIGHTS_READ |\
- JOB_ACCESS_READ)
- #define JOB_WRITE (STANDARD_RIGHTS_WRITE |\
- JOB_ACCESS_ADMINISTER)
- #define JOB_EXECUTE (STANDARD_RIGHTS_EXECUTE |\
- JOB_ACCESS_ADMINISTER)
- /*
- * DS Print-Queue property tables
- */
- // Predefined Registry Keys used by Set/GetPrinterDataEx
- #define SPLDS_SPOOLER_KEY TEXT("DsSpooler")
- #define SPLDS_DRIVER_KEY TEXT("DsDriver")
- #define SPLDS_USER_KEY TEXT("DsUser")
- // DS Print-Queue properties
- #define SPLDS_ASSET_NUMBER TEXT("assetNumber")
- #define SPLDS_BYTES_PER_MINUTE TEXT("bytesPerMinute")
- #define SPLDS_DESCRIPTION TEXT("description")
- #define SPLDS_DRIVER_NAME TEXT("driverName")
- #define SPLDS_DRIVER_VERSION TEXT("driverVersion")
- #define SPLDS_LOCATION TEXT("location")
- #define SPLDS_PORT_NAME TEXT("portName")
- #define SPLDS_PRINT_ATTRIBUTES TEXT("printAttributes")
- #define SPLDS_PRINT_BIN_NAMES TEXT("printBinNames")
- #define SPLDS_PRINT_COLLATE TEXT("printCollate")
- #define SPLDS_PRINT_COLOR TEXT("printColor")
- #define SPLDS_PRINT_DUPLEX_SUPPORTED TEXT("printDuplexSupported")
- #define SPLDS_PRINT_END_TIME TEXT("printEndTime")
- #define SPLDS_PRINTER_CLASS TEXT("printQueue")
- #define SPLDS_PRINTER_NAME TEXT("printerName")
- #define SPLDS_PRINT_KEEP_PRINTED_JOBS TEXT("printKeepPrintedJobs")
- #define SPLDS_PRINT_LANGUAGE TEXT("printLanguage")
- #define SPLDS_PRINT_MAC_ADDRESS TEXT("printMACAddress")
- #define SPLDS_PRINT_MAX_X_EXTENT TEXT("printMaxXExtent")
- #define SPLDS_PRINT_MAX_Y_EXTENT TEXT("printMaxYExtent")
- #define SPLDS_PRINT_MAX_RESOLUTION_SUPPORTED TEXT("printMaxResolutionSupported")
- #define SPLDS_PRINT_MEDIA_READY TEXT("printMediaReady")
- #define SPLDS_PRINT_MEDIA_SUPPORTED TEXT("printMediaSupported")
- #define SPLDS_PRINT_MEMORY TEXT("printMemory")
- #define SPLDS_PRINT_MIN_X_EXTENT TEXT("printMinXExtent")
- #define SPLDS_PRINT_MIN_Y_EXTENT TEXT("printMinYExtent")
- #define SPLDS_PRINT_NETWORK_ADDRESS TEXT("printNetworkAddress")
- #define SPLDS_PRINT_NOTIFY TEXT("printNotify")
- #define SPLDS_PRINT_NUMBER_UP TEXT("printNumberUp")
- #define SPLDS_PRINT_ORIENTATIONS_SUPPORTED TEXT("printOrientationsSupported")
- #define SPLDS_PRINT_OWNER TEXT("printOwner")
- #define SPLDS_PRINT_PAGES_PER_MINUTE TEXT("printPagesPerMinute")
- #define SPLDS_PRINT_RATE TEXT("printRate")
- #define SPLDS_PRINT_RATE_UNIT TEXT("printRateUnit")
- #define SPLDS_PRINT_SEPARATOR_FILE TEXT("printSeparatorFile")
- #define SPLDS_PRINT_SHARE_NAME TEXT("printShareName")
- #define SPLDS_PRINT_SPOOLING TEXT("printSpooling")
- #define SPLDS_PRINT_STAPLING_SUPPORTED TEXT("printStaplingSupported")
- #define SPLDS_PRINT_START_TIME TEXT("printStartTime")
- #define SPLDS_PRINT_STATUS TEXT("printStatus")
- #define SPLDS_PRIORITY TEXT("priority")
- #define SPLDS_SERVER_NAME TEXT("serverName")
- #define SPLDS_SHORT_SERVER_NAME TEXT("shortServerName")
- #define SPLDS_UNC_NAME TEXT("uNCName")
- #define SPLDS_URL TEXT("url")
- #define SPLDS_FLAGS TEXT("flags")
- #define SPLDS_VERSION_NUMBER TEXT("versionNumber")
- /*
- -- Additional Print-Queue properties --
- These properties are not defined in the default Directory Services Schema,
- but should be used when extending the Schema so a consistent interface is maintained.
- */
- #define SPLDS_PRINTER_NAME_ALIASES TEXT("printerNameAliases") // MULTI_SZ
- #define SPLDS_PRINTER_LOCATIONS TEXT("printerLocations") // MULTI_SZ
- #define SPLDS_PRINTER_MODEL TEXT("printerModel") // SZ
- #ifdef __cplusplus
- }
- #endif
- #endif // _WINSPOOL_
|