Page 1 of 1

RegPfad

Posted: 03. May 2007, 15:33
by Frank.Recker
Hallo,
für das allseits bekannte Tool Putty möchte ich beim Installieren via Emp.Paket den Standard-Drucker des Users gleich miteintragen.

Drucker steht unter:
HKCU/Software/Microsoft/WindowsNT/CurrentVersion/Windows/Device

Davon brauche ich aber nur den Teil bis zum ersten Komma um in
übernehmen zu können für Putty nach:
HKCU/Software/SimonTatham/Putty/Sessions/%Sessionname%/Printer

Wie kan nich so einen Teilstring am besten auslesen und übertragen?

mfg
Frank Recker

Posted: 03. May 2007, 16:35
by Hendrik_Ambrosius
Dafür kann man sehr gut den Tokenize-Befehl nutzen.
Er teilt eine Zeichenkette deren Werte durch Kommata getrennt sind in mehrere neue Variablen auf.

Beispiel:

set a=rot,grün,blau
set NumberOfTokens=Tokenize(a)

Hinterher sind die Variablen wie folgt gesetzt:
a1=rot
a2=grün
a3=blau
NumberOfTokens=3

Also in Ihrem Fall:
- Wert von Registry lesen
- Tokenize
- Mit dem neuen ersten Teilstring weiterarbeiten

RegPfad

Posted: 03. May 2007, 16:41
by Frank.Recker
Soweit ok,
je User, der das Paket aber installiert sieht der Standarddrucker aber
anders aus.
Kann der Teilinhalt dynamisch aus der lokalen Registry gezogen werden?

Gruß

Posted: 03. May 2007, 16:43
by Hendrik_Ambrosius
Klar.
Muss dann alles im Userteil ablaufen.

#SET:Userteil, CLIENT

[SET:Userteil]
set wert=%.......(RegKey)......%
set numberoftokens=Tokenize(wert)
#REG:KeySchreiben

[REG:KeySchreiben]
...usw...

RegPath

Posted: 03. May 2007, 16:59
by Frank.Recker
Jaein...

Setup.Inf. sieht ca. wie folgt aus.

[SET:Userteil]
set wert=%HKCU,"Software\Microsoft\Windows NT\CurrentVersion\Windows","Device",0x00000000,"\\%printserver%\%printer1"%
set numberoftokens=Tokenize(wert)
#REG:KeySchreiben

[REG:KeySchreiben]

HKCU,"Software\SimonTatham\PuTTY\Sessions\%sessionname%","Printer",0x00000000,"?"

Also:
Bei jedem User steht im HKCU ein ander Drucker unter Printer. Mal Printer1, mal Printer2 etc.

Wie diesen expliziten Drucker in den u.g. KEy eintragen?

Posted: 03. May 2007, 19:16
by Hendrik_Ambrosius
Ja, genau so. Geht automatisch mit Empirum.
HKCU ist ja jeweils die "private" Umgebung des Users.

RE

Posted: 07. May 2007, 14:12
by Frank.Recker
Hallo,

HKCU und HKLM ist schon ok und kein Problem. Läuft auch soweit.

Aber wenn man schon mit der Registry feine Sachen macht.
Könnte man nicht ein "generelles Paket" für jeden PC bauen, hier
so Sachen wie Standarddrucker, Anmeldeserver etc...pp... in
Systemvariablen schreiben die permanent bzw. beim Login
aktualisiert werden.
Vorteil: Auch andere Softwarepakete könnten diese Variablen einfach
nutzen.

Ist nur so eine Idee....

Gruß

Posted: 07. May 2007, 16:12
by Hendrik_Ambrosius
Klar, kann man ja machen.
Optimal sind dafür die Empirum DHCP-Optionen, so dass man das ganze auch subnetzabhängig gestalten kann (immer der passende Drucker in jedem Standort).

Posted: 08. May 2007, 12:10
by Weyck
Hallo Frank !

HA meint unseren neuen PC-Administrator... ;-) Kannst mich ja mal anrufen.

Machs gut!

Jürgen van Weyck