vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Brandneu! sevEingabe v3.0 - Das Eingabecontrol der Superlative!  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2024
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

VB Skript (VBS)
Terminal Server Sitzung aktiv oder getrennt 
Autor: maxsal
Datum: 30.09.10 13:23

Hi,

ich möchte für User auf einem Terminal Server, wenn die Sitzung nicht mehr aktiv ist, automatisch bestimmte Dateien löschen; ich habe alles hinbekommen, nur dass ich es nicht schaffe, dies auf "getrennte" Sitzungen einzuschränken.

geht das?

Vielen Dank
Max

Hier mein Code:
strComputer = "."
Set objWMI = GetObject("winmgmts:" & "{impersonationLevel=impersonate}!\\" & _
  strComputer & "\root\cimv2")
Set colSessions = objWMI.ExecQuery _
    ("Select * from Win32_LogonSession Where LogonType = 10")
If colSessions.Count <> 0 then
   For Each objSession in colSessions
 
REM !!!hier müsste wohl die Prüfung passieren!!!
 
     Set colList = objWMI.ExecQuery("Associators of " & _
       "{Win32_LogonSession.LogonId=" & objSession.LogonId & "} " & "Where" & _
       "AssocClass=Win32_LoggedOnUser Role=Dependent" )
     For Each objItem in colList
 
Set fso = CreateObject("Scripting.FileSystemObject")
datei_suche = "C:\Multicash\unterschriften\" & objItem.Name &"\mcsign.dat"
	If Fso.FileExists(datei_suche) then
		fso.GetFile(datei_suche).Delete
	Else
	End If	
 
     Next
   Next
End If
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Terminal Server Sitzung aktiv oder getrennt 
Autor: Elwood
Datum: 30.09.10 13:52

Hallo Max,
um den Status "getrennt" zu ermitteln, mußt du die wtsapi bemühen. Das wird dir aber mit VBS nicht gelingen. Mir stellen sich da ein paar grundsätzliche Fragen:
1. Warum willst du die Dateien löschen, sobald die Sitzungen getrennt sind?
2. Was passiert denn, wenn z.B. 2 (oder mehr) Sitzungen getrennt sind?
Dann treten Zugriffsprobleme auf, weil mehrere Sitzungen gleichzeitig im angegebenen Verzeichnis
die Dateien löschen wollen (Konflikt). Vermutlich wird es wohl nur eine Datei pro Benutzer geben,
und genau die soll gelöscht werden, oder?
3. Es verstößt gegen die Regeln, wenn ein normaler Benutzer auf die lokale Platte (hier c:\)
schreibend zugreift (Konflikte).
4. Was passiert eigentlich, wenn der Benutzer die getrennte Sitzung wieder aufnimmt und die Datei
weg ist?

Ich würde die Datei ohnehin im Tempverzeichnis (%temp%) des Benutzers anlegen. Jeder Benutzer hat im Terminal Server sein eigenes Tempverzeichnis und das wird nach der Abmeldung des Benutzers autom. gelöscht. (sehr Wartungsfreundlich).

ciao
Elwood

Wer sp?ter bremst, ist l?nger schnell

Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Terminal Server Sitzung aktiv oder getrennt 
Autor: maxsal
Datum: 30.09.10 14:34

Hi Elwoodd,

danke für Deine Antwort;
zu Deinen fragen:
1. Warum willst du die Dateien löschen, sobald die Sitzungen getrennt sind?

wir starten ein Programm als remote app; in dem Programm ist als Teil des Sicherheitsprocederes diese Datei notwendig; daher kopieren wir diese Datei per Batch vor dem Programmstart dorthin. Wenn der Benutzer das Programm beendet, bleibt leider die Session offen, aber die datei gehört aus Sicherheitsgründen weg.

2. Was passiert denn, wenn z.B. 2 (oder mehr) Sitzungen getrennt sind?
Dann treten Zugriffsprobleme auf, weil mehrere Sitzungen gleichzeitig im angegebenen Verzeichnis
die Dateien löschen wollen (Konflikt). Vermutlich wird es wohl nur eine Datei pro Benutzer geben,
und genau die soll gelöscht werden, oder?
Ich würde die vbs vom Administrator alle 10 minuten laufen lassen; wenn die datei nicht da ist, überspringt das vbs den Löschbefehl.

3. Es verstößt gegen die Regeln, wenn ein normaler Benutzer auf die lokale Platte (hier c:\)
schreibend zugreift (Konflikte).
wird vom Admin ausgeführt
4. Was passiert eigentlich, wenn der Benutzer die getrennte Sitzung wieder aufnimmt und die Datei
weg ist?
da er das wieder über batch macht, wir die Datei neu hinkopiert;

Wenn Dir eine andere Lösung einfällt, ist das auch super; köntnest Du mir sonst sagen wie das mit der wtsapi gehtm, die sagt mir leider gar nichts...
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Terminal Server Sitzung aktiv oder getrennt 
Autor: maxsal
Datum: 02.10.10 23:13

Problem gelöst - ganz anders: durch Zufall ahben wir die Möglichkeit gefunden, mit subst z: \\tsclient\z das Laufwerk z:\ des jeweiligen Clients am remote computer zu übernehmen - viel eleganter!

Danke dennoch für dein Input,
Max
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2024 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel