Avatar billede renehansen Nybegynder
12. marts 2009 - 14:41 Der er 1 løsning

Add printer

Hej Venner.

Jeg sidder og bikser med et script jeg har fundet på nettet, som jeg vil køre på en terminal 2003 server, men får fejl i linie 28.

Scriptet ser p.t. sådanne ud.
_________________________________________________________________


dim objWMIService

Set objWMIService = GetObject("winmgmts:" _
    & "{impersonationLevel=impersonate}!\\.\root\cimv2")
objWMIService.Security_.Privileges.AddAsString "SeLoadDriverPrivilege", True


Install "KM_farve_Marketing", "Farve_Sky", "C:\install\printerdriver", "C:\install\printerdriver\KOAZJK__.inf", "6.3.0.0"


sub Install(strPrinter, strDriverName, strDriverSource, strDriverInf, strIP)
    ' Install the specified printer, including driver and port
    InstallPrinterDriver strDriverName, strDriverSource, strDriverInf
    InstallPrinterPort strIP
    InstallPrinter strPrinter, strDriverName, "IP_" & strIP
end sub

sub InstallPrinter(strName, strDriverName, strPortName)
    ' Install printer as detailed
    dim objPrinter : Set objPrinter = objWMIService.Get("Win32_Printer").SpawnInstance_

    objPrinter.DriverName = strDriverName
    objPrinter.PortName  = strPortName '"IP_Farve_Sky"
    objPrinter.DeviceID  = strName
    objPrinter.Location = "3. Sal"
    objPrinter.Network = True
    objPrinter.Shared = false
    objPrinter.Put_
end sub

sub InstallPrinterDriver(strDriverName, strDriverSource, strDriverInf)
    ' Installs the printer driver
    dim colInstalledDrivers, objDriver, strInstalledDriverName
   
    ' First check whether the driver is installed already
    Set colInstalledDrivers =  objWMIService.ExecQuery("Select Name from Win32_PrinterDriver")
    for each objDriver in colInstalledDrivers
        strInstalledDriverName=Left(objDriver.Name, Instr(1,objDriver.Name,",")-1)
        if strInstalledDriverName=strDriverName then exit sub ' We have a match, so no need to install driver
    next
   
    ' Driver not present, so install it
    Set objDriver = objWMIService.Get("Win32_PrinterDriver")
    objDriver.Name = strDriverName
    objDriver.SupportedPlatform = "Windows NT x86"
    objDriver.Version = "3"
    objDriver.DriverPath = strDriverSource
    objDriver.Infname = strDriverInf
    objDriver.AddPrinterDriver(objDriver)
end sub

sub InstallPrinterPort(strIP)
    ' First check whether the port exists already
    Set colInstalledPorts =  objWMIService.ExecQuery _
        ("Select Name from Win32_TCPIPPrinterPort")
    for each objPort in colInstalledPorts
        if objPort.Name="IP_" & strIP then exit sub ' We have a result, so no need to add port
    next

    ' Add new printer port
    Set objNewPort = objWMIService.Get _
        ("Win32_TCPIPPrinterPort").SpawnInstance_
    objNewPort.Name = "IP_" & strIP
    objNewPort.Protocol = 1
    objNewPort.HostAddress = strIP
    objNewPort.PortNumber = "9100"
    objNewPort.SNMPEnabled = False
    objNewPort.Put_
end sub
_________________________________________________________________

Kan nogen sige hvad der går galt.
Avatar billede renehansen Nybegynder
17. marts 2009 - 22:21 #1
lukker denne, fandt et noget simplere script indtil jeg får tid til at rode lidt mere med dette.  :)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester