PrinterAudit Script v2.0 The PrinterAudit script is a small effective script to
help you audit your printer servers. The script can remotely view and
report on printers that exist on any Windows NT4, 2000 or 2003 print server.
It is extremely helpful for printer migrations, consolidations, and for cleaning
up orphaned print queues. By viewing the reports that PrinterAudit
generates, you have the following information available:
- A list of all printers on a print server with driver
& port information.
- A mapping of users to printers, allows you to easily
find out which printers users are printing to.
- Page and Job count information so you can see which
printers are heavily used.
- Ping tests so you can determine if printers are still
online.
- Locate unused printer queues by ping tests & job
counts.
- Works against clustered print servers.
PrinterAudit is FREE to download
and use!
If you use it and like it, all I ask is that you
send me a note to share your thanks.
Contact:

Requirements
PrinterAudit is written entirely in VB Script and requires one Microsoft
authored DLL to operate. It will run on any Windows XP, Windows 2000,
or Windows 2003 computers. You can report on Windows NT4.0 print servers
as long as WMI is installed.
The script relies on print events that are stored in the
"System" event log of the print server. It is recommended that your system log
is at least 8 megabytes (8192kb) to gather a larger history of print events.
If you have more then 500 print queues on a server; you
may need to tweak the MaxRPCSize registry entry to remotely report on printers.
For more information, see the troubleshooting section below.
Installation
The script was written entirely in VB Script and uses the
PrnAdmin.dll available from Microsoft as part of the Resource Kit.
The VB Script along with the PrnAdmin.dll file is
downloadable in the following ZIP file. The script is not encoded and
you are free to make any changes you like to it, although you can not
resell it.
PrinterAudit.zip
Once downloaded, save both of the files in the
same directory on your computer.
If you prefer, you can view the source code here:
PrinterAudit.txt
Usage
The script is executed via the command prompt. To run, navigate to the directory
where the script is located and type:
cscript printeraudit.vbe /s:SERVER
Where SERVER is the name of the server you want to audit. The script will begin by dumping the print events from the event log,
and then will scan each printer on the print server by pinging it; and searching
for all print jobs in the event log.
The output is placed in a subfolder called "OUTPUT" with
the following files for each server:
Filename |
Description |
Sample File
(html) |
_SERVER_PrintEvents.txt |
A text file containing all the print
events from the event log of the source server. |
|
SERVER_Printers.csv |
A comma-seperated variable file that
contains the following fields:
Printer, Share Name, Comment, Location, Printer Drver, Port, IP Address,
Ping Test, First & Last User ID to Print, Job Dates, Job & Page Count,
Average Jobs/Day |
SAMPLE |
SERVER_Users.csv |
A comma-seperated variable file that
contains the following fields:
Printer, User ID, First & Last Job Date, Total Job & Page Count, Average
Jobs/Day, Full Name & Description (from domain) |
SAMPLE |
Command-line options:
Option |
Description |
/? |
Help |
/S:Server |
Audit the server specified. |
/I:serverlistfile.txt |
Audit all the print servers listed in
"serverlistfile.txt". You can specify any file name you like. Servers
must be listed on per line. Any line prefixed with a semicolon (;) will
be ignored. |
/NP |
No Ping Mode. This will skip the ping
check; by disabling the ping check it will allow the script to run a
little bit faster. |
The script (on average) only takes a couple of minutes to
run per server. If you have a large event log and hundreds of printers, it may
take up to 30 minutes to run per server.
TroubleShooting
PROBLEM: |
No events are generated, the _SERVER_PrintEvents.txt
log file is empty. |
RESOLUTION: |
Make sure "DUMPEL.EXE" is in the path.
Make sure you have administrative rights to the server you are reporting
against. |
PROBLEM: |
Unable to list printers error. |
RESOLUTION: |
Make sure you have administrative rights to the
server you are reporting against. If you
have a large number of printers (> 300) you may need to tweak the
MaxRPCSize registry key.
Add the following registry entry below, or use this
registry file.
Navigate to Key: HKEY_Local_Machine\System\Current Control
Set\Control\Print
Add DWORD named "MaxRPCSize" with a value of 500000 HEX (5242880
decimal)
Then stop & start the "Spooler" or "Printer
Spooler" service. |
Still need help?
Contact:

|