Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

Clientname in Terminalsitzung

Tipp Microsoft Windows Server

Mitglied: Robert15

Robert15 (Level 1) - Jetzt verbinden

28.09.2013 um 12:57 Uhr, 8121 Aufrufe, 10 Kommentare, 2 Danke

Windows Server 2008
Windows XP und Windows 7 Home und Pro über aktuellen RDP

In einem Startscript auf dem Terminal Server sollen anhand des PC Namens (Clientname) unterschiedliche Aktionen erfolgen.
Das Programm funktionierte zunächst einwandfrei, später kamen aber Fehlermeldungen von Benutzern.
Ich mußte dann feststellen, daß zum Zeitpunkt der Programmausführung der Clientname noch nicht gesetzt war.

Lösung:
Ich starte jetzt das eigentliche Script über eine Batch-Datei mit START. Dadurch wird eine neue CMD gestartet und der Clientname ist seitdem immer vorhanden gewesen.

Beim Testen ist mir noch folgendes aufgefallen:
Wenn ich im Terminal eine CMD starte, ist die Variable %Clientname% gesetzt; sollte ich die CMD aber als Administrator starten, gibt es die Variable nicht.

Vielleicht hilft das ja dem einen und anderen.

Robert
Mitglied: schmitzi
01.10.2013 um 01:22 Uhr
Hi Robert,

nur ein Schnellschuss aus der dunklen Nacht :O)

schau mal ob es etwas mit
setlocal EnableDelayedExpansion
zu tun hat.

oder falls es wirklich nur zeitlich bedingt ist
baue mal im Script eine Verzögerung ein,
zB mit ping -n 60 localhost
Grus
Ralf
Bitte warten ..
Mitglied: MartinBinder
01.10.2013 um 15:43 Uhr
Du meinst ein Logonskript, oder? Ja, in einem Logonskript ist der %clientname% nicht verfügbar, da dieses Skript die Umgebung seines Parents erbt... Entweder wie Du geschrieben hast mittels neuem Prozess oder durch direktes Suchen in der Registrierung (HKCU\Volatile Environment\<Session-Nummer>: "Clientname")

Mit freundlichen Grüßen Martin
Bitte warten ..
Mitglied: emeriks
01.10.2013 um 17:01 Uhr
Das ist ein altes Timing-Problem, mit welchem wir auch schon seit Jahren kämpfen.

1. "sollte ich die CMD aber als Administrator starten, gibt es die Variable nicht": Glaube ich nicht. Könnte es sein, dass Du als Administrator das dann lokal machst, also nicht über RDP oder ICA? Weil: Die Variable CLIENTNAME wird nur gesetzt, wen man über die Terminaldienste kommt.

2. Es gibt beim Loginprozess mehrere Phasen, ohne dass ich Dir diese jetzt benennen könnte. z.B. scheint es unmittelbar vor dem Anzeigen des Desktops oder der veröffentlichten Anwendung nochmal ein "reset" zu geben, welches die Umgebungsvariablen noch mal lädt, bzw. die letzten abschließend setzt. Da könnte dann auch die CLIENTNAME dabei sein.

3. Rein vom Timing her hat sich bei uns als am sichersten herausgestellt, die Scripte über den HKLM-Run-Schlüssel in der Registry zu starten. Denn bedenke: Autostart aus dem Startmenü wird nur beim Starten eines Desktops ausgeführt, nicht bei einer veröffentlichen Anwendung ohne Desktop. Seit dem wir das über "Run" machen, haben wir fast keine Timing-Probleme mehr.

Mit freundlichen Grüßen
Emeriks
Bitte warten ..
Mitglied: Robert15
01.10.2013 um 18:05 Uhr
Hallo Ralf

Ein Programm erbt vom Elternprozess die Umgebung (im Normalfall). Was da nicht drin ist, kommt auch nicht mehr rein.

Wenn die Lösung nicht funktionieren würde, würde ich eine Verzögerung einbauen; bis jetzt funktioniert sie aber.

schönen Gruß
Robert
Bitte warten ..
Mitglied: Robert15
01.10.2013 um 18:11 Uhr
Hallo Martin

Ich meine ein normales Startup Skript. Hier ist der Clientname mal vorhanden und mal nicht.
Mit dem Start eines neuen Programms funktioniert es bisher zuverlässig.

schönen Gruß
Robert
Bitte warten ..
Mitglied: Robert15
01.10.2013 um 18:24 Uhr
Hallo Emeriks

Zu 1.:
Ich bin zur Zeit per VPN und RDP auf einem Windows Server 2008.
Dort habe ich zunächst eine normale CMD gestartet (über Start und cmd.exe im Suchfeld) . Hier ist der Clientname vorhanden.

Als nächstes habe ich wieder über Start eine Administrator cmd.exe gestartet.
Hier gibt es keinen Clientname und auch keinen Sessionname.

Zu 2.:
Den internen Ablauf des Login Prozesses kenne ich überhaupt nicht.

Zu 3.:
Die Anwender benötigen alle einen RDP-Desktop; insofern ist das für mich ausreichend. Sollte das einmal anders werden, denke ich hoffentlich an Deine Information.

schönen Gruß
Robert
Bitte warten ..
Mitglied: emeriks
02.10.2013 um 09:23 Uhr
Hallo Robert,

Zu 1)
OK. Dann bin ich aber auch am Ende.
Mit "Administrator cmd.exe" meinst Du sicherlich, wenn Du "cmd.exe" "als Administrator ausführst".
Das habe ich gerade mal bei mir getestet: Und in beiden Instanzen, ob als Admin oder nicht, sind alle Variablen vorhanden.
Läuft mit dem von Dir verwendeten Admin-Konto möglicherweise ein Dienst, oder ein Scheduled Task, welcher ständig im Hintergrund läuft?
Bitte warten ..
Mitglied: Robert15
02.10.2013 um 13:30 Uhr
Hallo Emeriks

Cmd.exe als Administrator: Start, im Suchfeld cmd.exe und dann mit <Strg>+<Shift>+<Enter> öffnen.
(meine Konto ist ein Administratorkonto)

Ich habe es jetzt sowohl mit einem W2008 als auch einem W2008 R2 Server getestet. Im Administrator Fenster (da steht bei mir auch "Administrator: C:\Windows\system32\cmd.exe" im Titel) gibt es die Umgebungsvariable "clientname" nicht. In einer 'normalen' CMD ist clientname bekannt.

Robert
Bitte warten ..
Mitglied: emeriks
02.10.2013 um 17:00 Uhr
Hm, is schon irre ...
Habe das eben mal auf einem weiteren Server gemacht und dort geht es auch.
Schon mal ein anderes Admin-Konto versucht?
Bitte warten ..
Mitglied: Robert15
02.10.2013 um 17:38 Uhr
Ich habe mich gerade mit dem vordefinierten Benutzerkonto "Administrator" angemeldet und konnte dort in beiden Fenstern den Clientnamen sehen.
Bei einem neu angelegten Konto mit Admin-Rechten ("Admin") ist der clientname wieder weg (in der Admin-CMD).
Bitte warten ..
Neuester Wissensbeitrag
Ähnliche Inhalte
Netzwerke
Clientname anhand MAC Adresse herausfinden (13)

Frage von VerruecktesPferd zum Thema Netzwerke ...

Heiß diskutierte Inhalte
Windows Userverwaltung
Ausgeschiedene Mitarbeiter im Unternehmen - was tun mit den AD Konten? (32)

Frage von patz223 zum Thema Windows Userverwaltung ...

LAN, WAN, Wireless
FritzBox, zwei Server, verschiedene Netze (21)

Frage von DavidGl zum Thema LAN, WAN, Wireless ...

Viren und Trojaner
Aufgepasst: Neue Ransomware Goldeneye verbreitet sich rasant (20)

Link von Penny.Cilin zum Thema Viren und Trojaner ...

Windows Netzwerk
Windows 10 RDP geht nicht (18)

Frage von Fiasko zum Thema Windows Netzwerk ...