Check alle échte Black Friday-deals Ook zo moe van nepaanbiedingen? Wij laten alleen échte deals zien

[w2k8/XP] Printernaam inc servernaam

Pagina: 1
Acties:

  • PeeCee
  • Registratie: September 2005
  • Laatst online: 21-11 16:37
Beste Tweakers,

Ik ondervind het volgende: Op de client gemapte printers wordt de printernaam inclusief de servernaam vernoemd in de volgoorde "Kleuren A3 CP5520dn op servernaam.domein" terwijl ik eigenlijk enkel "Kleuren A3 CP5520dn" wil zien.

Situatie:
Printers worden aangemaakt bij aanmelden op een computer binnen het domein dmv. een loginscript(onderin vermeld). Dit script verwijderd eerst alle netwerkprinters en maakt deze opnieuw aan en stelt de standaard printer in op basis van computernummer om zo automatisch de dichtbijzijnste printer te kunnen gebruiken zonder extra handelingen.

De reden dat de printers eerst worden verwijderd is omdat er de laatste tijd nogal veel veranderingen zijn geweest en ik me hierdoor geen zorgen hoef te maken om printers die nog wel op de computer staan maar niet meer aanwezig zijn.

Google:
En natuurlijk heb ik Google afgezocht om hiervoor een oplossing te vinden. Ik lees heel veel dat dit gewoon zo werkt maar soms lees ik dan ook weer dat het mogelijk is om dit te doen via het register om vervolgens niet meer informatie te vinden. Verder lees ik ook dat het hernoemen van een printernaam de printer kapot zou maken omdat dan de verwijzing(poort) niet meer klopt.

Na drie dagen zoeken ben ik nog niet tot een goede oplossing gekomen.

Kan iemand mij uit mijn droom helpen of me vertellen hoe ik dit het beste kan doen?

Script:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
Dim strComputer,strIPAddress,strIPRange, Dafaultprinterbalie 
Dim objNetwork, shell
Dim IPConfigSet, IPConfig
Dim arrIPAddress
Dim multiPrinter, UNCpath1, UNCpath2, oPrinters, strPrinter, boolMapped, i
Dim arrPrinters(11)
Dim x
Dim strComputer = "."

arrPrinters(0) = "\\server.domein.loc\ZwartWit_A4_Administratie"
arrPrinters(1) = "\\server.domein.loc\ZwartWit_A4_Balie"
arrPrinters(2) = "\\server.domein.loc\ZwartWit_A4_Export"
arrPrinters(3) = "\\server.domein.loc\ZwartWit_A4_Logistiek"
arrPrinters(4) = "\\server.domein.loc\ZwartWit_A4_Showroom"
arrPrinters(5) = "\\server.domein.loc\ZwartWit_A4_Styling"
arrPrinters(6) = "\\server.domein.loc\Kleuren_A3_Logistiek"
arrPrinters(7) = "\\server.domein.loc\Kleuren_A3_Styling"
arrPrinters(8) = "\\server.domein.loc\Kleuren_A4_Theo"
arrPrinters(9) = "\\server.domein.loc\DYMO_LabelWriter_Balie"
arrPrinters(10) = "\\server.domein.loc\Kleuren_A3_CP5520dn"
arrPrinters(11) = "\\server.domein.loc\DYMO_LabelWriter"


Set multiPrinter = CreateObject("WScript.Network")
Set WSHShell = CreateObject("WScript.Shell")
Set oPrinters = multiPrinter.EnumPrinterConnections

For x = 0 To oPrinters.Count - 1 Step 2
If Left(oPrinters.Item(x+1),2) = "\\" Then multiPrinter.RemovePrinterConnection oPrinters.Item(x+1),True,True
On Error resume NEXT
Next

For Each strPrinter In arrPrinters 
        boolMapped = False
        For i = 0 to oPrinters.Count - 1 Step 2
              If UCase(oPrinters.Item(i+1)) = UCase(strPrinter) Then
                    boolMapped = True
                    Exit For
              End If
        Next
        If boolMapped = False Then
            multiPrinter.AddWindowsPrinterConnection strPrinter
        End If
        'ON Error resume NEXT 
Next
 


Set IPConfigSet = GetObject("winmgmts:{impersonationLevel=impersonate}!//" _ 
 & strComputer & "/root/cimv2").ExecQuery("select IPAddress from " _ 
 & "Win32_NetworkAdapterConfiguration where IPEnabled=True") 
 
Set objNetwork = multiPrinter 

For Each IPConfig In IPConfigSet
     If Not IsNull(IPConfig.IPAddress) Then
          arrIPAddress = split(IPConfig.IPAddress(0) ,".")
          select case arrIPAddress(3) 

        'Balie printer
               case "17","22","27","30"
            objNetwork.SetDefaultPrinter "\\server.domein.loc\ZwartWit_A4_Balie"

        'Styling printer
        Case "4","9","12","18", "23"
            objNetwork.SetDefaultPrinter "\\server.domein.loc\ZwartWit_A4_Styling"

        'Export printer
        Case "26","21", "28"
            objNetwork.SetDefaultPrinter "\\server.domein.loc\ZwartWit_A4_Export"

        'Logistiek printer
        Case "3","6","2","16","32"
            objNetwork.SetDefaultPrinter "\\server.domein.loc\ZwartWit_A4_Logistiek"

        'Directie printer
        Case "7"
            objNetwork.SetDefaultPrinter "\\server.domein.loc\Kleuren_A4_Theo"

        'Administratie printer
        Case "5","19","25"
            objNetwork.SetDefaultPrinter "\\server.domein.loc\ZwartWit_A4_Administratie"

        'Showroom printer
        Case "14","15", "31"
            objNetwork.SetDefaultPrinter "\\server.domein.loc\ZwartWit_A4_Showroom"


          end select
     end if
next

Path = "HKCU\Printers\Settings\EnableBalloonNotificationsRemote"
WshShell.RegWrite Path, 0 ,"REG_DWORD"

set objNetwork = nothing
set IPConfigSet = nothing

wscript.quit

  • alt-92
  • Registratie: Maart 2000
  • Niet online

alt-92

ye olde farte

Je kan een logische printer (wat jij op je client ziet) die aangemaakt is via een printerqueue (gedeelde printer op een printserver) niet op de client renamen.

ik heb een 864 GB floppydrive! - certified prutser - the social skills of a thermonuclear device


  • PeeCee
  • Registratie: September 2005
  • Laatst online: 21-11 16:37
alt-92 schreef op woensdag 17 augustus 2011 @ 20:19:
Je kan een logische printer (wat jij op je client ziet) die aangemaakt is via een printerqueue (gedeelde printer op een printserver) niet op de client renamen.
Dat begrijp ik want daarvoor moet de naam op de printerserver aangepast worden. Maar is er een mogelijkheid om "Op server.domein" te verwijderen?