syntax53
Fresh Scripter
Registered: 2004-11-17
Posts: 33
Loc: Pennsylvania
|
I work at a school district and our users need to have network printers loaded onto computers based on the location of the computer. Teachers can move around the building (and even to other buildings) and need to have access to the closest printer. I posted this thread awhile ago to get an initial feeler for how to go about it. So the deployment was this week and I got the bugs ironed out. Below is the final script.
EDITED 5/1/2013 to include some extra options for the INI and moving the global declaration out of the function as suggested below.
First the UDF's I'm using:
;FROM http://www.kixtart.org/forums/ubbthreads.php?ubb=showflat&Number=118766
function GetDefaultPrinter()
$GetDefaultPrinter = join(split(readvalue("HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\Windows","Device"),',',1),'')
endfunction
;FROM http://www.kixtart.org/forums/ubbthreads.php?ubb=showflat&Number=202790#Post202790
Function IniArray($_fSrcFile, OPTIONAL $_aDataWrite)
Dim $_ ; temp var
Dim $_Fp ; file pointer
Dim $_I, $_J ; index pointers
Dim $_Sect ; Section Name
Dim $_aDat ; Data pair
Dim $_aSect[1,0], $_aData[1, 0] ; Section & Data Arrays
; Obtain a File Handle for Read or Write operations
; ============================================================
$_Fp = FreeFileHandle ; locate an available file handle
If Not $_Fp
Exit 1 ; none available - exit
EndIf
; WRITE: verify that we have properly formatted data
; ============================================================
If VarType($_aDataWrite) > 0 ; Write the array to the INI file and exit
If VarType($_aDataWrite) < 8192 ; data but not an array - exit!
Exit 87
EndIf
Del $_fSrcFile ; delete any pre-existing file
$_ = Open($_Fp, $_fSrcFile, 5) ; open the file for write/create
If @ERROR Exit @ERROR EndIf ; exit if error opening
; Write the section data. If no data exists in the section, do not write anything!
For $_I = 0 to UBound($_aDataWrite, 2)
$_Sect = $_aDataWrite[0, $_I] ; Section name to write
$_aData = $_aDataWrite[1, $_I] ; Data array
If UBound($_aData, 2) > -1 ; create Sect and write data if data is present
$_ = '[' + $_Sect + ']' + @CRLF ; section name
For $_J = 0 to UBound($_aData, 2) ; key/data pairs
If $_aData[1, $_J] ; only write keys that have non-null data
$_ = $_ + $_aData[0, $_J] + '=' + $_aData[1, $_J] + @CRLF
EndIf
Next
$_ = WriteLine($_Fp, $_) ; write the output line
If @ERROR Exit @ERROR EndIf ; exit if error writing
EndIf
Next
$_ = Close($_Fp) ; close the file
ReDim $_aData[1, 0] ; clear array
; exit 0 ; do not exit here to force a re-read of the freshly written data
EndIf
; READ: Load the ini file into an array
; ============================================================
$_I = -1 $_J = -1 ; Initialize index pointers
$_ = Open($_Fp, $_fSrcFile, 2) ; open the file for read
If @ERROR Exit @ERROR EndIf ; exit if error opening
Do ; loop through the file contents
$_ = Trim(ReadLine($_Fp)) ; remove leading/trailing spaces
If Left($_, 1) = '[' ; found a section
If $_I >= 0 ; process prior section data, if any
$_aSect[1, $_I] = $_aData
ReDim $_aData[1, 0]
$_J = -1
EndIf
$_I = $_I + 1 ; increment the section index
ReDim Preserve $_aSect[1, $_I]
$_aSect[0, $_I] = Split(SubStr($_, 2), ']')[0]
Else
If Not Left($_, 1) = ';' And Not Left($_, 1) = '#' And Len($_) > 2
$_aDat = Split($_, '=') ; break into array
$_J = $_J + 1 ; increment the data index
ReDim Preserve $_aData[1, $_J]
$_aData[0, $_J] = $_aDat[0] ; Store the data
$_aData[1, $_J] = $_aDat[1] ; Store the data
EndIf
EndIf
Until @ERROR ; done with input data
$_ = Close($_Fp) ; close the file
; process the last/only section
If $_I >= 0
$_aSect[1, $_I] = $_aData
EndIf
$IniArray = $_aSect ; return the array
Exit 0 ; exit success
EndFunction
Function ReadIniArray($_aIniFile, OPTIONAL $_Section, OPTIONAL $_Key)
; exit immediately if the data format is invalid
If VarType($_aIniFile) < 8192 ; data but not an array - exit!
Exit 87
EndIf
Dim $_aSectIdx[UBound($_aIniFile, 2)] ; Section Index Array
Dim $_I, $_J ; Index pointers
Dim $_aData ; Array of Key/Data pairs
; Create a section index array
For $_I = 0 to UBound($_aIniFile, 2)
$_aSectIdx[$_I] = $_aIniFile[0, $_I]
Next
; If the Section is null, return a delimited string of Sections [same as ReadProfileString(file)]
If Not $_Section
$ReadIniArray = Join($_aSectIdx, Chr(10))
Exit 0
EndIf
; Search the index for a section
$_I = aScan($_aSectIdx, $_Section)
If $_I < 0 Exit 2 EndIf ; section not found - Exit
$_aData = $_aIniFile[1, $_I] ; Extract the key/value array
; Create a Key index for the requested section
Dim $_aKeyIdx[UBound($_aData, 2)]
For $_J = 0 to UBound($_aData, 2)
$_aKeyIdx[$_J] = $_aData[0, $_J]
Next
; If the Key is null, return a delimited string of Keys [same as ReadProfileString(file, section)]
If Not $_Key
$ReadIniArray = Join($_aKeyIdx, Chr(10))
Exit 0
EndIf
; Search the index for a Key
$_J = aScan($_aKeyIdx, $_Key)
If $_J < 0 Exit 2 EndIf ; Key not found
$ReadIniArray = $_aData[1, $_J]
Exit 0
EndFunction
;Modified FROM http://www.kixtart.org/forums/ubbthreads.php?ubb=showflat&Number=203126#Post203126
function INISections($array)
$read = readiniarray($array)
if LEN($read) > 0
$INISections=split($read,chr(10))
else
$INISections = ""
endif
endfunction
function INIKeys($array,$section)
$read = readiniarray($array,$section)
if LEN($read) > 0
$INIKeys=split($read,chr(10))
else
$INIKeys = ""
endif
endfunction
;FROM http://www.kixtart.org/forums/ubbthreads.php?ubb=showflat&Number=84020
function mid($midstring,$midstart,optional $midend)
if $midend<0
$midend=abs($midend)
else
if $midend>len($midstring)-abs($Midstart) or $midend=""
$midend=0
endif
endif
select
case $midstart<0
$midstart=abs($midstart)
If $midend=0
$mid=left(right($midstring,len($midstring)),(len($midstring)-$midstart)+1)
else
$mid=left(right($midstring,($midstart+$midend)-1),$midend)
endif
case $midstart>0
if $midend=0
$mid= right(left($midstring,len($midstring)),(len($midstring)-$midstart)+1)
else
$mid=right(left($midstring,($midstart+$midend)-1),$midend)
endif
endselect
endfunction
And here is my script:
$debug = 0
IF NOT InStr(UCase(@PRODUCTTYPE), 'SERVER') AND NOT InStr(UCase(@PRODUCTTYPE), 'DOMAIN') ;DONT TOUCH SERVERS
$userid = Ucase(@USERID)
$workstation = Ucase(@WKSTA)
$domain = Ucase(@DOMAIN)
;IF $debug = 1 $workstation = "aj324-3" ENDIF
$school=Left($workstation, 2)
$netprint_ini = ""
SELECT
case $school = "AJ" OR $domain = "JUNIOR"
$netprint_ini = "script_netprint_JUNIOR.ini"
case $school = "AS" OR $domain = "SENIOR"
$netprint_ini = "script_netprint_SENIOR.ini"
case $school = "CB" OR $domain = "COPPER"
case $school = "HI" OR $domain = "HIGHLAND"
case $school = "MK" OR $domain = "MCKINLEY"
case $school = "OV" OR $domain = "OVERLOOK"
case $school = "RO" OR $domain = "ROSLYN"
case $school = "RW" OR $school = "RY" OR $school = "RE" OR $domain = "RYDAL"
case $school = "WH" OR $domain = "WILLOW_HILL"
case $school = "AA" OR $domain = "ADMIN" ;must be last
$netprint_ini = "script_netprint_ADMIN.ini"
ENDSELECT
IF NOT $netprint_ini = ""
SELECT
case EXIST(@ScriptDir + "\" + $netprint_ini)
IF $debug = 1 ? @Time + ": NP: INI found in script dir" ENDIF
$netprint_ini = @ScriptDir + "\" + $netprint_ini
case EXIST(@LSERVER + "\NETLOGON\" + $netprint_ini)
IF $debug = 1 ? @Time + ": NP: INI found at logon server" ENDIF
$netprint_ini = @LSERVER + "\NETLOGON\" + $netprint_ini
case EXIST(@LDRIVE + $netprint_ini)
IF $debug = 1 ? @Time + ": NP: INI found at logon drive" ENDIF
$netprint_ini = @LDRIVE + $netprint_ini
ENDSELECT
IF $debug = 1 ? @Time + ": NP: ini: " + $netprint_ini ENDIF
$network_printers = IniArray($netprint_ini)
IF NOT @ERROR = 0
IF $debug = 1 ? "Error opening file: " + @ERROR + ": " + @SERROR ENDIF
ELSE
$current_default_printer = GetDefaultPrinter
GLOBAL $prefix
GLOBAL $roomnumber
GLOBAL $beforedash
GLOBAL $afterdash
GLOBAL $pcnumber
$prefix = ""
$roomnumber = ""
$beforedash = ""
$afterdash = ""
$pcnumber = ""
$ret = DecipherComputerName($workstation)
IF $debug = 1
? @Time + ": NP: prefix: '" + $prefix + "'"
? @Time + ": NP: room: '" + $roomnumber + "'"
? @Time + ": NP: beforedash: '" + $beforedash + "'"
? @Time + ": NP: afterdash: '" + $afterdash + "'"
? @Time + ": NP: pcnum: '" + $pcnumber + "'"
ENDIF
GLOBAL $building_printers
GLOBAL $new_default_printer
$building_printers = 1
$new_default_printer = ""
$printers_added = 0
;[COMPUTERNAME\USERNAME]
IF $printers_added = 0
$section = $workstation + '\' + $userid
$printers_added = ProcessSection($network_printers, $section)
ENDIF
;[COMPUTERNAME-*\USERNAME]
IF $printers_added = 0
IF NOT $beforedash = ""
$section = $beforedash
ELSE
$section = $prefix + CSTR($roomnumber)
ENDIF
$section = $section + '-*\' + $userid
$printers_added = ProcessSection($network_printers, $section)
ENDIF
;[COMPUTERNAME]
IF $printers_added = 0
$section = $workstation
$printers_added = ProcessSection($network_printers, $section)
ENDIF
;[COMPUTERNAME-*]
IF $printers_added = 0
IF NOT $beforedash = ""
$section = $beforedash
ELSE
$section = $prefix + CSTR($roomnumber)
ENDIF
$section = $section + '-*'
$printers_added = ProcessSection($network_printers, $section)
ENDIF
IF $printers_added = 0
IF $debug = 1 ? @Time + ": NP: Iterating sections..." ENDIF
$sections = INISections($network_printers)
For Each $section in $sections
IF $printers_added = 0
; [PREFIX_LOWRM#-LOWPC# through PREFIX_HIGHRM#-HIGHPC#]
;OR [PREFIX-LOWPC# through PREFIX-HIGHPC#]
$t = INSTR($section, " through ")
IF $t > 0 AND NOT $pcnumber = "" AND $pcnumber = $afterdash AND (IsNumeric($roomnumber) = 1 OR $roomnumber = "")
IF $debug = 1 ? @Time + ": NP: Processing section '" + $section + "' ..." ENDIF
$section_prefix = ""
$room_low = ""
$room_high = ""
$pc_low = ""
$pc_high = ""
$dash = ""
For $i = 1 to $t
$char = MID($section, $i, 1)
SELECT
CASE $char = "*"
$pc_low = "0"
CASE $char = "-"
$dash = $char
CASE $char = " "
$i = 99999
CASE IsNumeric($char) = 1
IF $dash = ""
$room_low = $room_low + $char
ELSE
$pc_low = $pc_low + $char
ENDIF
CASE 1
IF $room_low = "" $section_prefix = $section_prefix + $char ENDIF
ENDSELECT
Next
IF $debug = 1 ? @Time + ": NP: 1st prefix: " + $section_prefix ENDIF
IF $section_prefix = $prefix AND NOT $pc_low = ""
$dash = ""
$section_prefix = ""
For $i = ($t+LEN(" through ")) to LEN($section)
$char = MID($section, $i, 1)
SELECT
CASE $char = "*"
$pc_high = "32768"
CASE $char = "-"
$dash = $char
CASE $char = " "
$i = 99999
CASE IsNumeric($char) = 1
IF $dash = ""
$room_high = $room_high + $char
ELSE
$pc_high = $pc_high + $char
ENDIF
CASE 1
IF $room_high = "" $section_prefix = $section_prefix + $char ENDIF
ENDSELECT
Next
IF $debug = 1 ? @Time + ": NP: 2nd prefix: " + $section_prefix ENDIF
IF $section_prefix = $prefix AND NOT $pc_high = ""
$room_low = VAL($room_low)
$room_high = VAL($room_high)
$pc_low = VAL($pc_low)
$pc_high = VAL($pc_high)
IF $debug = 1
? @Time + ": NP: room low: " + $room_low
? @Time + ": NP: room high: " + $room_high
? @Time + ": NP: pc low: " + $pc_low
? @Time + ": NP: pc high: " + $pc_high
ENDIF
IF VAL($pcnumber) >= $pc_low AND VAL($pcnumber) <= $pc_high
IF ((VAL($roomnumber) >= $room_low AND VAL($roomnumber) <= $room_high) OR ($roomnumer = "" AND $room_low = 0 AND $room_high = 0))
IF $debug = 1 ? @Time + ": NP: section matched." ENDIF
$printers_added = ProcessSection($network_printers, $section)
ELSE
IF $debug = 1 ? @Time + ": NP: Machine out of room number range." ENDIF
ENDIF
ELSE
IF $debug = 1 ? @Time + ": NP: Machine out of section's PC number range." ENDIF
ENDIF
ELSE
IF $debug = 1 ? @Time + ": NP: Section prefix doesn't match OR pc_high not found." ENDIF
ENDIF
ELSE
IF $debug = 1 ? @Time + ": NP: Section prefix doesn't match OR pc_low not found." ENDIF
ENDIF
ELSE
;[BEFOREDASH-PC1,PC2,PC3]
$c = INSTR($section, ",")
$d = INSTR($section, "-")
IF $d > 0 AND $c > $d
IF $debug = 1 ? @Time + ": NP: Processing section '" + $section + "' ..." ENDIF
$section_beforedash = MID($section, 1, $d-1)
IF $debug = 1 ? @Time + ": NP: section beforedash: '" + $section_beforedash + "'" ENDIF
IF $section_beforedash = $beforedash
$postfixes = SPLIT(MID($section, $d+1), ",")
For Each $section_afterdash in $postfixes
IF $printers_added = 0
IF $debug = 1 ? @Time + ": NP: section afterdash: '" + $section_afterdash + "'" ENDIF
IF $section_afterdash = $afterdash
IF $debug = 1 ? @Time + ": NP: section matched." ENDIF
$printers_added = ProcessSection($network_printers, $section)
ENDIF
ENDIF
Next
ELSE
IF $debug = 1 ? @Time + ": NP: Section before dash doesn't match." ENDIF
ENDIF
ENDIF
ENDIF
ENDIF
Next
ENDIF
IF $printers_added = 1
IF $building_printers = 1
IF ContainsNumbers($userid) < 2 AND INGROUP("Students") = 0 ;NON-STUDENTS
COLOR w/n
? " Adding Printers, please wait..."
IF NOT $debug = 1 COLOR n/n ENDIF
$ret = ProcessSection($network_printers, "BUILDING_PRINTERS", 1)
ENDIF
ENDIF
IF NOT $new_default_printer = ""
$ret = SETDEFAULTPRINTER($new_default_printer)
IF $debug = 1 ? @Time + ": NP: " + "SETDEFAULT( $new_default_printer ) -- RETURN: " + $ret ENDIF
ELSE
IF NOT $current_default_printer = ""
$ret = SETDEFAULTPRINTER($current_default_printer)
IF $debug = 1 ? @Time + ": NP: " + "SETDEFAULT( $current_default_printer ) -- RETURN: " + $ret ENDIF
ENDIF
ENDIF
ENDIF
ENDIF
ENDIF
ENDIF
function ProcessSection($iniarray, $section, OPTIONAL $ignoredefault)
$ProcessSection = 0
IF $debug = 1 ? @Time + ": NP: Processing section '" + $section + "' ..." ENDIF
$keylist = INIKeys($iniarray, $section)
IF UBOUND($keylist) >= 0
IF $debug = 1 ? @Time + ": NP: Section Found..." ENDIF
$ProcessSection = 1
For $i = 0 to UBOUND($keylist)
$value = ReadIniArray($iniarray, $section, $keylist[$i])
IF $keylist[$i] = "printer1" AND LEFT($value, 2) = "\\" AND NOT $ignoredefault = 1
$new_default_printer = $value
ENDIF
IF $keylist[$i] = "building_printers" AND $value = "false"
IF $debug = 1 ? @Time + ": NP: building_printers=false Found..." ENDIF
$building_printers = 0
ENDIF
IF LEFT($keylist[$i], 7) = "printer" AND LEFT($value, 2) = "\\"
$ret = ADDPRINTERCONNECTION($value) ;
IF $debug = 1 ? @Time + ": NP: " + "ADDPRINTER( $value ) -- RETURN: " + $ret ENDIF
ENDIF
Next
ENDIF
endfunction
;This takes a computer name like AS123-4 and breaks it down into variables
;$prefix is characters from the start of the string until the first number OR the first dash
;$roomnumber is the first sequence of numbers before the dash
;$beforedash is everything before the dash
;$afterdash is everything after the dash
;$pcnumber is the numbers after the dash unless there are letters in the mix
;$pcnumber would be blank on AS123-B4 and on AS123-4B5 $pcnumber would stop after the 4
function DecipherComputerName($pcname)
$dash = ""
For $i = 1 to LEN($pcname)
$char = MID($pcname, $i, 1)
SELECT
CASE $char = "-"
$dash = "-"
CASE IsNumeric($char) = 1
IF $dash = ""
$roomnumber = $roomnumber + $char
ELSE
$pcnumber = $pcnumber + $char
ENDIF
CASE 1
SELECT
CASE $dash = "" AND $roomnumber = ""
$prefix = $prefix + $char
CASE $dash = "" AND NOT $roomnumber = ""
$roomnumber = $roomnumber + $char
CASE $dash = "-"
;$i = LEN($pcname)+1
ENDSELECT
ENDSELECT
IF $dash = ""
$beforedash = $beforedash + $char
ELSE
IF NOT $char = "-"
$afterdash = $afterdash + $char
ENDIF
ENDIF
Next
endfunction
;this just counts the number of numbers in a string
;our student logons are all numbers so this is basically
;another way to detect a student logon
function ContainsNumbers($teststr)
$ContainsNumbers = 0
FOR $pos = 1 TO LEN($teststr)
$char = SUBSTR($teststr, $pos, 1)
SELECT
case $char = "0"
$ContainsNumbers = $ContainsNumbers+1
case $char = "1"
$ContainsNumbers = $ContainsNumbers+1
case $char = "2"
$ContainsNumbers = $ContainsNumbers+1
case $char = "3"
$ContainsNumbers = $ContainsNumbers+1
case $char = "4"
$ContainsNumbers = $ContainsNumbers+1
case $char = "5"
$ContainsNumbers = $ContainsNumbers+1
case $char = "6"
$ContainsNumbers = $ContainsNumbers+1
case $char = "7"
$ContainsNumbers = $ContainsNumbers+1
case $char = "8"
$ContainsNumbers = $ContainsNumbers+1
case $char = "9"
$ContainsNumbers = $ContainsNumbers+1
ENDSELECT
NEXT
endfunction
And here is a sample of the INI file I made up
; ========================================================
; FORMAT OF FILE
; ========================================================
;
; [computername-1]
; printer1=\\server\printer name ;printer1 = Default Printer. If you don't want to set (or change) their default printer then start with printer2.
; printer2=\\server\printer name ;OPTIONAL: Extra network printers to add for all users (students included). Add more with printer3, printer4, etc.
; building_printers=false ;OPTIONAL: With this flag it will not add any printers from the [BUILDING_PRINTERS] section (applies to non-students only)
;
; [computername-1\username] ;User Name Override -- This user will only read this section and not the regular section for the computer
; printer1=\\server\printer name
;
; [computername-*] ;Printer Settings apply to all machines with the prefix (* must be preceeded by the first dash)
; printer1=\\server\mono printer 1 ;NOTE: You can override this for a single machine by specifying the actual computer name in another section.
; printer2=\\server\mono printer 2
; printer3=\\server\color printer
;
; [BEFOREDASH-PC1,PC2,PC3] ;Match beforedash to after dash options. e.g. AJGUID-A,B,D or AJLIB-CIRC,OFFICE1,OFFICE2
;
; [ABC100-1 through ABC120-1] ;Range such as [AJ100-1 through AJ120-1] or [AJLIB-1 through AJLIB-15] or [AJP14-* through AJP18-*].
;
; The script checks for priority in the most specific to least:
; [computername\username] > [computername-*\username] > [computername] > [computername-*] > [ABC100-1 through ABC120-1]
;
; ========================================================
[BUILDING_PRINTERS]
;Printers that get added to all NON-Students unless building_printers=false is specified.
printer1=\\AJH2\Library HPM551 (Color)
printer2=\\AJH2\Library HPP3010#1 (Mono)
printer3=\\AJH2\Library HPP3010#2 (Mono)
printer4=\\AJH2\RICOH Copier Guidance
printer5=\\AJH2\RICOH Copier Library
printer6=\\AJH2\RICOH Copier Mail Rm
printer7=\\AJH2\RICOH Special Ed
printer8=\\AJH2\Rm 116 Office
printer9=\\AJH2\Rm 136 Learning Center
printer10=\\AJH2\Rm 215 Office
printer11=\\AJH2\Rm 224 DE5100 (Color)
printer12=\\AJH2\Rm 224 DE5300 (Mono)
printer13=\\AJH2\Rm 230 DE5130cdn (Color)
printer14=\\AJH2\Rm 230 DE5350dn (Mono)
printer15=\\AJH2\Rm 242 Soc Studies Office
printer16=\\AJH2\Rm 253 HP 4050 (Mono)
printer17=\\AJH2\Rm 310 Office
printer18=\\AJH2\Rm 324 DE5100 (Color)
printer19=\\AJH2\Rm 324 DE5200 (Mono)
printer20=\\AJH2\Rm 342 English Office
printer21=\\AJH2\Rm C58 Classroom
printer22=\\AJH2\Rm C58 DE3010cn (Color)
printer23=\\AJH2\Rm P18 DE5350dn (Mono)
printer24=\\AJH2\Rm S102B Science Office
;RANGES
;=================
[AJ108-1 through AJ126-1]
printer1=\\ajh2\Rm 116 Office
[AJ136-*]
printer1=\\ajh2\Rm 136 Learning Center
[AJ128-1 through AJ157-1]
printer1=\\ajh2\Rm 136 Learning Center
[AJ208-1 through AJ227-1]
printer1=\\ajh2\Rm 215 Office
[AJ215-*]
printer1=\\ajh2\Rm 215 Office
[AJ228-1 through AJ265-1]
printer1=\\ajh2\Rm 242 Soc Studies Office
[AJ310-*]
printer1=\\ajh2\Rm 310 Office
[AJ308-1 through AJ329-1]
printer1=\\ajh2\Rm 310 Office
[AJ324-*]
building_printers=false
printer1=\\ajh2\Rm 324 DE5200 (Mono)
printer2=\\AJH2\Rm 324 DE5100 (Color)
[AJ330-1 through AJ363-1]
printer1=\\ajh2\Rm 342 English Office
[AJ351-*]
printer1=\\ajh2\Rm 351 DE2330dn (Mono)
[AJC51-1 through AJC60-1]
printer1=\\ajh2\Rm C58 Classroom
[AJC58-*]
printer1=\\ajh2\Rm C58 Classroom
printer2=\\AJH2\Rm C58 DE3010cn (Color)
[AJGUID-1 through AJGUID-2]
building_printers=false
printer1=\\ajh2\RICOH Copier Guidance
printer2=\\asd11\AJ Guid Dell 2330dn
printer3=\\asd11\AJ Guid HP 1300n
printer4=\\AJH2\RICOH Copier Mail Rm
[AJGUID-C,B,J]
building_printers=false
printer1=\\asd11\AJ Guid HP 1300n
printer2=\\ajh2\RICOH Copier Guidance
printer3=\\asd11\AJ Guid Dell 2330dn
printer4=\\AJH2\RICOH Copier Mail Rm
[AJGUID-F,G,H]
building_printers=false
printer1=\\asd11\AJ Guid Dell 2330dn
printer2=\\ajh2\RICOH Copier Guidance
printer3=\\asd11\AJ Guid HP 1300n
printer4=\\AJH2\RICOH Copier Mail Rm
[AJHEALTH-*]
printer1=\\asd11\JR Health Suite Dell 2330dn
[AJLIB-1 through AJLIB-15]
building_printers=false
printer1=\\AJH2\Library HPP3010#1 (Mono)
printer2=\\AJH2\Library HPP3010#2 (Mono)
printer3=\\AJH2\Library HPM551 (Color)
[AJLIB-16 through AJLIB-29]
building_printers=false
printer1=\\AJH2\Library HPP3010#2 (Mono)
printer2=\\AJH2\Library HPP3010#1 (Mono)
printer3=\\AJH2\Library HPM551 (Color)
[AJLIB-30 through AJLIB-33]
;teacher computers in back
printer1=\\AJH2\Library HPP3010#2 (Mono)
[AJLIB-CIRC,OFFICE1,OFFICE2]
building_printers=false
printer1=\\AJH2\Library HPP3010#1 (Mono)
printer2=\\AJH2\Library HPP3010#2 (Mono)
printer3=\\AJH2\Library HPM551 (Color)
printer4=\\AJH2\Library Lab DE2330
[AJM2-1 through AJM5-1]
printer1=\\ajh2\Rm C58 Classroom
[AJP14-* through AJP18-*]
printer1=\\ajh2\Rm P18 DE5350dn (Mono)
[AJS6-1 through AJS106-1]
printer1=\\ajh2\Rm S102B Science Office
;SPECIFIC MACHINES
;=================
[AJ111-1]
;guidance (has local)
building_printers=true
[AJ114-1]
;guidance (has local)
building_printers=true
[AJ210-1]
;reading chair (has local)
building_printers=true
[AJ216-1]
;guidance (has local)
building_printers=true
[AJ253-1]
;special ed room with printer in back
printer1=\\ajh2\Rm 253 HP 4050 (Mono)
[AJ316-1]
;guidance (has local)
building_printers=true
[AJ359-2]
;second computer in speech room
printer1=\\ajh2\Rm 342 English Office
[AJATTENDANCE]
printer1=\\asd11\AJ Records Dell 2330dn
[AJC59-1]
;art room (has local printer)
building_printers=true
[AJC100-1]
printer1=\\ajh2\Rm 116 Office
[AJC100-6]
printer1=\\ajh2\Rm 116 Office
[AJC300-1]
printer1=\\ajh2\Rm 215 Office
[AJRECEP]
printer1=\\asd11\AJ Reception
[AJRECORDS]
printer1=\\asd11\AJ Records Dell 2330dn
[AJS3-1]
;ISS - has local
building_printers=true
[AJS102B-1]
printer1=\\AJH2\Rm S102B Science Office
Edited by syntax53 (2013-05-01 03:20 PM)
|