IF $VISTA32="YES" OR $VISTA64="YES"
$IPPRINTERKEY='$REMOTEPC\$HKLM\SYSTEM\CURRENTCONTROLSET\CONTROL\PRINT\MONITORS\STANDARD TCP/IP PORT\PORTS\' +$PORT
ELSE
$IPPRINTERKEY='$REMOTEPC\$HKLM\SYSTEM\CURRENTCONTROLSET\CONTROL\PRINT\MONITORS\STANDARD TCP/IP PORT\PORTS\IP_' +$PORT
ENDIF
? "IPPRINTERKEY: " $IPPRINTERKEY
IF KEYEXIST($IPPRINTERKEY)
$=DELTREE($IPPRINTERKEY)
ENDIF
IF $VISTA32="YES" OR $VISTA64="YES"
IF NOT KEYEXIST($IPPRINTERKEY)
$=ADDKEY($IPPRINTERKEY)
$=WRITEVALUE($IPPRINTERKEY,"Double Spool","00000001","REG_DWORD")
$=WRITEVALUE($IPPRINTERKEY,"HostName","$PORT", "REG_SZ")
$=WRITEVALUE($IPPRINTERKEY,"HWAddress","","REG_SZ")
$=WRITEVALUE($IPPRINTERKEY,"IPAddress","","REG_SZ")
$=WRITEVALUE($IPPRINTERKEY,"SNMP Community","public","REG_SZ")
$=WRITEVALUE($IPPRINTERKEY,"SNMP Index","00000001","REG_DWORD")
$=WRITEVALUE($IPPRINTERKEY,"VERSION","00000002","REG_DWORD")
ENDIF
ELSE
IF NOT KEYEXIST($IPPRINTERKEY)
$=ADDKEY($IPPRINTERKEY)
$=WRITEVALUE($IPPRINTERKEY,"Double Spool","00000001","REG_DWORD")
$=WRITEVALUE($IPPRINTERKEY,"HostName","", "REG_SZ")
$=WRITEVALUE($IPPRINTERKEY,"HWAddress","","REG_SZ")
$=WRITEVALUE($IPPRINTERKEY,"IPAddress","$PORT","REG_SZ")
$=WRITEVALUE($IPPRINTERKEY,"SNMP Community","public","REG_SZ")
$=WRITEVALUE($IPPRINTERKEY,"SNMP Index","00000001","REG_DWORD")
$=WRITEVALUE($IPPRINTERKEY,"VERSION","00000001","REG_DWORD")
ENDIF
ENDIF
FOR EACH $SPOOLER IN $SERVICES
IF $VISTA32="YES" OR $VISTA64="YES"
SHELL '%COMSPEC% /C C:\NETWORK\ELEVATE.CMD NET START "Print Spooler" >NUL'
ELSE
$=EXECUTE('$$=$$SPOOLER.STARTSERVICE()')
ENDIF
NEXT
$OBJECTS=GETOBJECT("WINMGMTS:{IMPERSONATIONLEVEL=IMPERSONATE}!"+$REMOTEPC+"\ROOT\CIMV2")
IF NOT @ERROR=0
EXIT -4
ENDIF
$SERVICES=$OBJECTS.EXECQUERY('Select * from Win32_Service WHERE Name = "Spooler"')
FOR EACH $SPOOLER IN $SERVICES
IF $VISTA32="YES" OR $VISTA64="YES"
SHELL '%COMSPEC% /C C:\NETWORK\ELEVATE.CMD NET STOP "Print Spooler" >NUL'
ELSE
$=EXECUTE('$$=$$SPOOLER.STOPSERVICE()')
ENDIF
NEXT
IF $VISTA32="YES" OR $VISTA64="YES"
? "Give User Time To Answer Prompts..."
SLEEP 15
ELSE
SLEEP 3
ENDIF
IF $VISTA32="YES" OR $VISTA64="YES"
? "Give User Time To Answer Prompts..."
SLEEP 15
ELSE
SLEEP 3
ENDIF
IF $VISTA32="YES" OR $VISTA64="YES"
$PORT='$PORT'
ELSE
$PORT='IP_$PORT'
ENDIF