Jump to content
Sign in to follow this  
Thanquol

win2k3 Terminal - per Batch LW A:(lokal) mappen!

Recommended Posts

Hallo Leute!

 

Ich hab hier folgendes Problem bei dem ich hänge:

 

Status:

1Win2k3 Terminal Server

1Win2k3 Datenbank Server

11Client PCs (9*WinNT,2*Win2k)

~20User

 

Die User wechseln ihren Arbeitsplatz ständig so das immer fast alle Pcs belegt sind.

Nun ist es für eine Steuersoftware wichtig das Lokale(vom TerminalPC also nicht vom Server) Diskettenlaufwerk anzusprechen! Und das auf einem bestimmten Laufwerksbuchstaben!

 

Unter win2k3 ist es im terminal zwar möglich die lokalen laufwerke zu verbinden aber leider ohne Buchstaben!

 

Also konkret: Der User 1 geht an den PC A, loggt sich dabei ein im Terminalmodus, dann soll per Batchdatei das A-Laufwerk(natürlich freigegeben) auf der TerminalEmulation z.B. als X: mappen!

 

meine Lösungsidee:

 

net use X: \\lokalerpcname\A

da lokalerpcname aber eben leider nicht immer das gleiche ist:

net use X: \\%computername%\A

 

das Problem: %computername% ist auf der Terminalemulation eben leider der Name des Terminalservers und nicht der des client-pcs!

 

gibts denn sonst irgeneine Variable oder Möglichkeit den namen des PC's auszulesen von dem aus man sich an den server verbindet?

 

Ich hoffe ich hab mein kleines Problem hier veständlich ausgedrückt und bedanke mich schonmal für Lösungsvorschläge und Anregungen!

 

Mfg, Florian

Share this post


Link to post

Definiere dir irgendeine zusätzliche Umgebungsvariable, die für jeden Client eindeutig ist und verwende diese. Irgendwie müssen sich die verschiedenen Clients ja voneinander unterscheiden lassen, wenn das klappen soll.

 

----------------

Gruß, Auer

Share this post


Link to post

Hi,

 

ich würde es folgendermaßen lösen:

Vorraussetzung: Ein User bezogenes Verzeichnis, und ein Login Script, ein wenig Scripting

 

Vorgehen:

Bei der Anmeldung des Users an seinem Arbeitsplatz schreibt das Login Script in das Userverzeichnis eine Datei mit dem Computernamen, an dem er angemeldet ist.

 

Bei der Anmeldung am TS liest das Login Script den Rechnernamen aus dieser Datei aus und mapt ein Laufwerk darauf.

 

Gruß

 

Torsten

Share this post


Link to post

Mein Vorschlag basiert 'bloß' auf der Idee, daß der einzelne Rechner beim Start des Terminalmodus irgendwelche lokalen, für ihn spezifischen Variablen mitübergeben kann. Allerdings ist das eine Vermutung, da ich solche Terminalemulationen mangels Gelegenheit praktisch nicht kenne.

 

Falls dies stimmt, erhält der lokale Rechner eine neu zu definierende System-Umgebungsvariable (System - Erweitert - Umgebungsvariablen), die einfach das als Wert erhält, was für deine net use \\... - Konstruktion notwendig ist. Damit müßte diese Variable auch in einem Batch verfügbar sein und kann genutzt werden.

 

Beim Vorschlag von @torstenbeck ist der erste Schritt überflüssig, da der Rechner ja ohnehin unabhängig vom aktuellen Benutzer einen festen Namen hat. Beim zweiten Schritt ist mir nicht klar, ob das LogonScript einer Terminalemulation das Recht hat, auf den lokalen Rechner zuzugreifen. Falls ja, kann man auch gleich auf jedem Rechner eine solche Datei mit dem Rechnernamen statisch anlegen und verwenden.

 

------------

Gruß, Auer

Share this post


Link to post

Hi!

 

also mit der Idee von torstenbeck ist die Lösung schon fast erreicht!

 

nur, wie funktioniert es?

annahme: ich schreibe in eine datei auf dem Client den PC-name und gebe den Server frei:

wie lese ich dann den inhalt aus?

 

also in: \\pc-name\freigabe\pcname.txt

 

aber wie binde ich das nun in ein script ein?

 

also Möglichkeit 1:

net use X: \\<lese name aus pcname.txt>\\A

 

Möglichkeit 2:

setze %pcname% auf den Inhalt von \\pc-name\freigabe\pcname.txt

und danach:

net use X: \\%pcname%\freigabe\A

 

Wenn ihr mir dabei noch helfen könnt ist das des Rätsels lösung! :D

 

 

Vielen dank schonmal an euch 2!!!

 

Grüße, Flo

Share this post


Link to post

Dafür gibt es mindestens zwei Möglichkeiten.

 

1. Das LogonScript kann einen lokalen Batch ausführen, etwa c:\Computer.cmd, dann enthält diese nur eine Zeile

 

set my_computername=pc_a

 

dann steht im folgenden %pc_a% zur Verfügung.

 

2. Oder mit for /f, siehe for /?, etwa:

 

Datei c:\computer.txt enthält eine Zeile

 

pc_a

 

for /f %%i In ('type c:\computer.txt') do set my_computername=%%i

 

Literatur zu Batchs unter Tipps & Links

 

----------------

Gruß, Auer

Share this post


Link to post
Original geschrieben von auer

Dafür gibt es mindestens zwei Möglichkeiten.

 

1. Das LogonScript kann einen lokalen Batch ausführen, etwa c:\Computer.cmd, dann enthält diese nur eine Zeile

 

set my_computername=pc_a

 

dann steht im folgenden %pc_a% zur Verfügung.

 

 

 

hmm

das ganze sieht schon sehr gut aus..

nur

1. heisst es nich genau andersrum? set pc_a=my_computername ? so funktioniert es zmindest

2. wenn ich es in der Batchdatei aufrufe bleibt es aber nicht permanent, also wenn ich danach die mapping.bat aufrufe ist der Wert %pc_a% wieder leer

Share this post


Link to post

Habe zwar nur einen W2K TS, aber da funktioniert:

net use x: \\%clientname%\floppy

wobei floppy der Freigabename des Diskettenlaufwerkes auf dem lokalen (TS-Client) PC ist.

MfG

 

Apotheker

Share this post


Link to post

Tja - oben habe ich mich vertan. Bei set my_computername=pc_a steht im folgenden natürlich %my_computername% zur Verfügung. Der Aufruf dieses Batches kann in der mapping.bat mit Call erfolgen.

 

---------

Gruß, Auer

Share this post


Link to post

Vielen Dank apotheker!!

 

das war genau das was ich verzweifelt gesucht habe!!!

 

%clientname% ergibt genau das was ich brauche!

 

Problem gelöst! Thanquol happy!

Share this post


Link to post
Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte überlege Dir, ob es nicht sinnvoller ist ein neues Thema zu erstellen.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this  

Werbepartner:



×
×
  • Create New...