Can't find the information you are looking for here? Then leave a message over on our WinBatch Tech Support Forum.
Keywords: printer control extender
Version 10000 Dec 1, 1998 Initial public release Version 10001 pAddPrtConn and pDelPrtConn now accept the "server" parameter in the format "SERVER" or "\\SERVER". If there is no default printer already installed, pSetDefPrt will fail. Use pSetDefPrtEx instead. On failure, pSetDefPrt and pSetDefPrtEx will return a negative error code, not necessarily -1. Version 10002 Fixed pDelPrtConn. Version 10003 If there is no default printer already set, pAddPrinter and pAddPrtConn will now set the newly-added printer as the default printer. Version 10004 Added new request # to pGetDefPrtInf: Request Returns Example ------- ------- ------- 4 Printer share UNC \\SERVER\LASER4 Under Windows NT, if the default printer is controlled by a remote server, this will return the UNC of the print share on the remote server. If the default printer is controlled locally, it will return a blank string (""). Under Windows 95/98, this request # is identical to request #3, and will return the printer port to which the default printer is mapped. Changed the format of the list returned by pGetPrtList(1) to: printer-name|port-name|driver-name|printer-share-UNC "printer-share-UNC" is the same value that's returned by pGetDefPrtInf(4). Increased the maximum list length that can be returned by pGetPrtList from 4K to 64K. Version 10005 New functions: pGetPrtInfo(s:printer-name, i:request) Gets information about a printer. "printer-name" can specify a local printer, or a network printer UNC. "request" determines the information to be returned, and can be one of the following: Request Meaning ------- ------- 1 * (s) Server name, or "" if local printer. 2 (s) Printer name. 3 (s) Share name, or "" if not shared. 4 (s) Port name(s), separated with commas if more than one port. 5 (s) Driver name. 6 (s) Comment. 7 (s) Location. 8 (s) File name used to create the separator page. 9 (s) Print processor. 10 (s) Data type used to record the print job. 11 (s) Default print-processor parameters. 12 (i) Printer attributes -- one or more of the following bits: 1 PRINTER_ATTRIBUTE_QUEUED 2 PRINTER_ATTRIBUTE_DIRECT 4 PRINTER_ATTRIBUTE_DEFAULT 8 PRINTER_ATTRIBUTE_SHARED 16 PRINTER_ATTRIBUTE_NETWORK 32 PRINTER_ATTRIBUTE_HIDDEN 64 PRINTER_ATTRIBUTE_LOCAL 128 PRINTER_ATTRIBUTE_ENABLE_DEVQ 256 PRINTER_ATTRIBUTE_KEEPPRINTEDJOBS 512 PRINTER_ATTRIBUTE_DO_COMPLETE_FIRST 1024 PRINTER_ATTRIBUTE_WORK_OFFLINE 2048 PRINTER_ATTRIBUTE_ENABLE_BIDI 4096 PRINTER_ATTRIBUTE_RAW_ONLY 8192 PRINTER_ATTRIBUTE_PUBLISHED 13 (i) Priority value that the spooler uses to route print jobs. 14 (i) Default priority value assigned to each print job. 15 (i) Earliest time the printer will print a job (specified as minutes elapsed since 12:00 AM GMT) 16 (i) Latest time the printer will print a job (specified as minutes elapsed since 12:00 AM GMT) 17 * (i) Printer status -- one or more of the following bits: 1 PRINTER_STATUS_PAUSED 2 PRINTER_STATUS_ERROR 4 PRINTER_STATUS_PENDING_DELETION 8 PRINTER_STATUS_PAPER_JAM 16 PRINTER_STATUS_PAPER_OUT 32 PRINTER_STATUS_MANUAL_FEED 64 PRINTER_STATUS_PAPER_PROBLEM 128 PRINTER_STATUS_OFFLINE 256 PRINTER_STATUS_IO_ACTIVE 512 PRINTER_STATUS_BUSY 1024 PRINTER_STATUS_PRINTING 2048 PRINTER_STATUS_OUTPUT_BIN_FULL 4096 PRINTER_STATUS_NOT_AVAILABLE 8192 PRINTER_STATUS_WAITING 16384 PRINTER_STATUS_PROCESSING 32768 PRINTER_STATUS_INITIALIZING 65536 PRINTER_STATUS_WARMING_UP 131072 PRINTER_STATUS_TONER_LOW 262144 PRINTER_STATUS_NO_TONER 524288 PRINTER_STATUS_PAGE_PUNT 1048576 PRINTER_STATUS_USER_INTERVENTION 2097152 PRINTER_STATUS_OUT_OF_MEMORY 4194304 PRINTER_STATUS_DOOR_OPEN 8388608 PRINTER_STATUS_SERVER_UNKNOWN 16777216 PRINTER_STATUS_POWER_SAVE 18 * (i) Number of print jobs queued for the printer. 19 * (i) Average pages per minute that have been printed on the printer. * These items cannot be changed using pSetPrtInfo. Returns a string or integer value, as indicated. pSetPrtInfo(s:printer-name, i:request, s/i:value) Sets information for a printer. "value" specifies the new value to be set for the item. See pGetPrtInfo for additional parameter information. Note that items marked with a (*) are non-writable and cannot be changed using this function. Returns 1 on success; 0 if a non-writable item was specified. Version 31000 Jan 1, 2001 The Printer Control extender has been updated to a new format to allow more descriptive function names and additional parameters. This version of the extender requires WinBatch 2001A or newer to run. It will not work on WinBatch 2000C or older. In addition, so as not to affect existing scripts using a previous version of this extender, the extender DLL has been renamed to include a 34I in the DLL name instead of a 32I. Old and new versions of this extender can *usually* co-exist side by side. To use the new extender with old scripts and with WinBatch 2001A or newer you will need to change the AddExtender line in the script to reflect the new DLL name. e.g. AddExtender("wwprt32i.dll") should become AddExtender("wwprt34i.dll") Version 32000 Feb 27, 2001 Version number change for tracking purposes for 2001 release. Version 32001 Mar 6, 2001 pGetPrtList no longer adds a tab to the end of the list. Version 34000 Fixed problem with pGetPrtInfo and pSetPrtInfo returning "access denied" errors under Windows 2000. Version 36000 pGetPrtAttrib and pSetPrtAttrib now return WIL errors if an error occurs. Version 38001 Nov 13, 2002 Added an optional "mode" parameter to pGetPrtAttrib and pSetPrtAttrib: pGetPrtAttrib(s:attrib [, i:mode]) pSetPrtAttrib(s:attrib, i:value [, i:mode]) In Windows 2000 and Windows XP, "mode" can be set to 1 to specify global printer settings, or 2 to specify per-user printer settings. It can also be set to 0 to specify standard behavior as in previous Windows versions. In other Windows versions, it is ignored and treated as 0. Version 38002 Nov 14, 2002 Fixed problem with pGetPrtAttrib and pSetPrtAttrib returning "access denied" errors under Windows 2000 and XP. Version 39000 Nov 18, 2002 If you call pGetPrtAttrib with "mode" == 2, and no user-level device mode settings are found, it returns the global-level device mode settings (the same as mode 1 would have). If you call pSetPrtAttrib with "mode" == 2, and no user-level device mode settings are found, it copies the global-level settings (mode 1) to the user-level settings then applies the desired change. Version 39001 Dec 17, 2002 Adjusting pPrtSetAttrib to requiest a higher level of security that some machines seem to desire. Version 39002 Dec 26, 2002 New function: pMediaTypes(s:printer-name, i:request) (Windows XP only) Returns a list of available media types for a printer. "printer-name" can specify a printer, or "" for the default printer. The format of the list depends upon "request": Request Meaning ------- ------- 0 Media-type names 1 Media types and names, in the form: type|name The return value is a tab-delimited list of items. Added new attributes for pGetPrtAttrib and pSetPrtAttrib (Windows 95/98/Me/2000/XP): DitherType Specifies how dithering is to be done. This can be one of the following predefined values, or a driver-defined value >= 256: 1 No dithering 2 Dithering with a coarse brush 3 Dithering with a fine brush 4 Line art dithering 5 Error diffusion dithering (Windows 95/98/Me) 10 Device does gray scaling (256+) Device-specific dithering types MediaType Specifies the type of media being printed on. This can be one of the following predefined values, or a driver-defined value >= 256: 1 Plain paper 2 Transparent film 3 Glossy paper (256+) Device-specific media types The return value will be 0 if not supported by the device driver. To determine the appropriate media type, you can use pMediaTypes() under Windows XP, or you can set the media type manually using the printer configuration dialog, and then use pGetPrtAttrib to find out what the value was set to. Version 39003 (Test version) Improved pSetDefPrt under Windows 2000/XP. Version 39004 July 08, 2003 Added new request # to pGetPrtInfo: Request Meaning ------- ------- 20 * (i) Number of print jobs queued for the printer (alternate method). Version 39006 June 28, 2003 First release of the 44I version of this extender Fixed problem with pGetPrtInfo (request 1) erroneously returning a non-blank string in some situations. Version 39007 (Yest Version) New functions: pGetPublish(s:printer-name) (Windows 2000/XP only) Gets the published status of a printer's data in the directory service. "printer-name" can specify a local printer, or a network printer UNC. Returns one of the following status codes: Status Name Meaning ------ ---- ------- 1 DSPRINT_PUBLISH The printer is published. 4 DSPRINT_UNPUBLISH The printer is not published. -2147483648 DSPRINT_PENDING Indicates that the system is attempting to complete a publish or unpublish operation. pSetPublish(s:printer-name, i:action) (Windows 2000/XP only) Publishes or unpublishes a printer's data in the directory service. "printer-name" can specify a local printer, or a network printer UNC. "action" specifies the action to perform, and can be one of the following: Action Name Meaning ------ ---- ------- 1 DSPRINT_PUBLISH Publishes the printer's data in the DS. 2 DSPRINT_UPDATE Updates the printer's published data in the DS. 4 DSPRINT_UNPUBLISH Removes the printer's published data from the DS. 8 DSPRINT_REPUBLISH The DS data for the printer is unpublished and then published again, refreshing all properties in the published printer Re-publishing also changes the GUID of the published printer. Returns 1 on success; 2 on possible success after the action completes in the background. Version 39008 (Test Version) pSetDefPrt and pSetDefPrtEx are no longer case-sensitive. Version 39009 July 11, 2005 Fixed problem with pGetPrtInfo requests 1 and 3 not returning blank strings when they should have.
Article ID: W14189 Filename: !!NEWSFLASH!!.txt
File Created: 2011:09:16:11:40:26
Last Updated: 2011:09:16:11:40:26