Top-Themen

Aktuelle Themen (A bis Z)

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

Powershell - GUI für offene Netzwerk-Sessions (net session) und offene Dateihandles (net file)

Mitglied: colinardo

colinardo (Level 5) - Jetzt verbinden

09.10.2014, aktualisiert 11.10.2014, 5760 Aufrufe, 8 Kommentare, 5 Danke

Heute kam von jemandem eine Frage ob man nicht den Dialog für das Auflisten von aktiven Netzwerksessions und Dateihandles auf einem Windows System einfach aufrufen kann. Da dieser Dialog in der MMC (storagemgmt.msc) integriert ist nur mit Umwegen aufzurufen ist, habe ich die zwei Dialoge mal auf die schnelle mit Powershell in einer GUI zusammengefasst.

Zur Info der Dialog automatisiert nur die Shell-Befehle net session und net file in einer GUI.

Für alle die solche Aufgaben lieber mit einer GUI erledigen ist dieser Powershell-Code vielleicht mal dienlich

Der Dialog sieht dann folgendermaßen aus:

0f01fe727d9e2ecd20def846ba47fffa - Klicke auf das Bild, um es zu vergrößern
Powershell-Code
01.
$w_async = Add-Type –memberDefinition @” 
02.
[DllImport("user32.dll")] 
03.
public static extern bool ShowWindowAsync(IntPtr hWnd, int nCmdShow); 
04.
“@ -name “Win32ShowWindowAsync” -namespace Win32Functions –passThru
05.
function Hide-PowerShell() { 
06.
    [void]$w_async::ShowWindowAsync((Get-Process –id $pid).MainWindowHandle, 2) 
07.
}
08.

09.
function GenerateForm{
10.

11.
#region Import the Assemblies
12.
[reflection.assembly]::loadwithpartialname("System.Drawing") | Out-Null
13.
[reflection.assembly]::loadwithpartialname("System.Windows.Forms") | Out-Null
14.
#endregion
15.

16.
#region Form Objects
17.
$form1 = New-Object System.Windows.Forms.Form
18.
$btn_refresh_files = New-Object System.Windows.Forms.Button
19.
$btn_refresh_sessions = New-Object System.Windows.Forms.Button
20.
$btn_disconnect_file = New-Object System.Windows.Forms.Button
21.
$btn_disconnect_all_files = New-Object System.Windows.Forms.Button
22.
$btn_disconnect_all_session = New-Object System.Windows.Forms.Button
23.
$btn_disconnect_session = New-Object System.Windows.Forms.Button
24.
$dg_files = New-Object System.Windows.Forms.DataGridView
25.
$label2 = New-Object System.Windows.Forms.Label
26.
$label1 = New-Object System.Windows.Forms.Label
27.
$dg_sessions = New-Object System.Windows.Forms.DataGridView
28.
$InitialFormWindowState = New-Object System.Windows.Forms.FormWindowState
29.
#endregion Form Objects
30.

31.
#----------------------------------------------
32.
# Event Script Blocks
33.
#----------------------------------------------
34.

35.
$handler_btn_disconnect_session_Click= 
36.
{
37.
    if ($dg_sessions.SelectedRows.Count -gt 0 ){
38.
        $computer = $dg_sessions.Rows[$dg_sessions.SelectedRows[0].Index].Cells['Computer'].Value
39.
        start-process  "net" -ArgumentList "session \\$computer /DELETE /YES" -Wait -WindowStyle Hidden
40.
        &$refresh_sessions
41.
    }
42.
}
43.

44.
$handler_btn_disconnect_all_session_Click= 
45.
{
46.
    if ((&$msgbox 'Möchten sie wirklich alle offenen Verbindungen beenden?' 'Alle Sitzungen beenden' 4 48) -eq 6){
47.
        if ($dg_sessions.RowCount -gt 0 ){
48.
            foreach($row in $dg_sessions.Rows){
49.
                start-process  "net" -ArgumentList "session \\$($row.Cells['Computer'].Value) /DELETE /YES" -Wait -WindowStyle Hidden
50.
            }
51.
            &$refresh_sessions
52.
        }
53.
    }
54.
}
55.

56.
$handler_btn_disconnect_file_Click= 
57.
{
58.
    if ($dg_files.SelectedRows.Count -gt 0 ){
59.
        $id = $dg_sessions.Rows[$dg_sessions.SelectedRows[0].Index].Cells['ID'].Value
60.
        start-process  "net" -ArgumentList "file $id /CLOSE /YES" -Wait -WindowStyle Hidden
61.
        &$refresh_files
62.
    }
63.
}
64.

65.
$handler_btn_disconnect_all_files_Click= 
66.
{
67.
    if ((&$msgbox 'Möchten sie wirklich alle offenen Dateihandles beenden?' 'Alle offene Dateien schließen' 4 48) -eq 6){
68.
        if ($dg_files.RowCount -gt 0 ){
69.
            foreach($row in $dg_files.Rows){
70.
                start-process  "net" -ArgumentList "file \\$($row.Cells['ID'].Value) /CLOSE" -Wait -WindowStyle Hidden
71.
            }
72.
            &$refresh_files
73.
        }
74.
    }
75.
}
76.

77.
$handler_form1_Load= 
78.
{
79.
    &$refresh_sessions
80.
    &$refresh_files
81.
}
82.

83.
$handler_btn_refresh_sessions_Click= 
84.
{
85.
    &$refresh_sessions
86.
}
87.

88.
$handler_btn_refresh_files_Click= 
89.
{
90.
    &$refresh_files
91.
}
92.

93.
$OnLoadForm_StateCorrection=
94.
{#Correct the initial state of the form to prevent the .Net maximized form issue
95.
	$form1.WindowState = $InitialFormWindowState
96.
}
97.

98.
$refresh_sessions = {
99.
    # get open network sessions
100.
    $sessions = @()
101.
    $raw = net session /list | out-string
102.
    $langID = [System.Globalization.CultureInfo]::CurrentUICulture.LCID
103.
    switch($langID){
104.
        1031{$matches = ([regex]'(?ms)^Benutzername\s+([^\r\n]*)\s+^Computer\s+([^\r\n]*).*?^Ruhezeit\s+([^\r\n]*)').Matches($raw)}
105.
        default{$matches = ([regex]'(?ms)^User name\s+([^\r\n]*)\s+^Computer\s+([^\r\n]*).*?^Idle time\s+([^\r\n]*)').Matches($raw)}
106.
    }
107.
    $matches | %{
108.
        $sessions += new-Object PSObject -Property @{'Computer'=$_.Groups[2];'Benutzername'=$_.Groups[1];'Leerlauf'=$_.Groups[3]}
109.
    }
110.
    $sessions = $sessions | select Computer,Benutzername,Leerlauf | sort Computer
111.
    $arrList = New-Object System.Collections.ArrayList
112.
    if ($sessions.Length -gt 1){
113.
        $arrList.AddRange($sessions)
114.
    }else{
115.
        $arrList.Add($sessions)
116.
    }
117.
    $dg_sessions.DataSource = $arrList
118.
}
119.

120.
$refresh_files = {
121.
    # Get opened files
122.
    $openfiles = @()
123.
    net file | select -Skip 4 | ?{$_ -match '^\d+'} | %{
124.
        $cols = $_ -Split '\s{2,}'
125.
        $openfiles += new-Object PSObject -Property @{'ID'=$cols[0];'Geöffnete Datei'=$cols[1];'Zugriff durch'=$cols[2]}
126.
    }
127.
    $openfiles = $openfiles | select 'Geöffnete Datei','Zugriff durch','ID' | sort 'Geöffnete Datei'
128.
    $arrList = New-Object System.Collections.ArrayList
129.
    if ($openfiles.Length -gt 1){
130.
        $arrList.AddRange($openfiles)
131.
    }else{
132.
        $arrList.Add($openfiles)
133.
    }
134.
    $dg_files.DataSource = $arrList
135.
}
136.

137.

138.
$msgbox = {
139.
param(
140.
    [string]$text,
141.
    [string]$title,
142.
    [System.Windows.Forms.MessageBoxButtons]$buttons,
143.
    [System.Windows.Forms.MessageBoxIcon]$icon
144.
)
145.
    return [System.Windows.Forms.MessageBox]::Show($text,$title,$buttons,$icon)
146.
}
147.

148.
#----------------------------------------------
149.
#region Form Code
150.
$System_Drawing_Size = New-Object System.Drawing.Size
151.
$System_Drawing_Size.Height = 422
152.
$System_Drawing_Size.Width = 471
153.
$form1.ClientSize = $System_Drawing_Size
154.
$form1.DataBindings.DefaultDataSourceUpdateMode = 0
155.
$System_Drawing_Size = New-Object System.Drawing.Size
156.
$System_Drawing_Size.Height = 450
157.
$System_Drawing_Size.Width = 479
158.
$form1.MinimumSize = $System_Drawing_Size
159.
$form1.Name = "form1"
160.
$form1.Text = "Sitzungen / Geöffnete Dateien verwalten"
161.
$form1.add_Load($handler_form1_Load)
162.

163.
$btn_refresh_files.Anchor = 6
164.

165.
$btn_refresh_files.DataBindings.DefaultDataSourceUpdateMode = 0
166.

167.
$System_Drawing_Point = New-Object System.Drawing.Point
168.
$System_Drawing_Point.X = 12
169.
$System_Drawing_Point.Y = 389
170.
$btn_refresh_files.Location = $System_Drawing_Point
171.
$btn_refresh_files.Name = "btn_refresh_files"
172.
$System_Drawing_Size = New-Object System.Drawing.Size
173.
$System_Drawing_Size.Height = 23
174.
$System_Drawing_Size.Width = 87
175.
$btn_refresh_files.Size = $System_Drawing_Size
176.
$btn_refresh_files.TabIndex = 9
177.
$btn_refresh_files.Text = "Aktualisieren"
178.
$btn_refresh_files.UseVisualStyleBackColor = $True
179.
$btn_refresh_files.add_Click($handler_btn_refresh_files_Click)
180.

181.
$form1.Controls.Add($btn_refresh_files)
182.

183.
$btn_refresh_sessions.Anchor = 6
184.

185.
$btn_refresh_sessions.DataBindings.DefaultDataSourceUpdateMode = 0
186.

187.
$System_Drawing_Point = New-Object System.Drawing.Point
188.
$System_Drawing_Point.X = 12
189.
$System_Drawing_Point.Y = 185
190.
$btn_refresh_sessions.Location = $System_Drawing_Point
191.
$btn_refresh_sessions.Name = "btn_refresh_sessions"
192.
$System_Drawing_Size = New-Object System.Drawing.Size
193.
$System_Drawing_Size.Height = 23
194.
$System_Drawing_Size.Width = 87
195.
$btn_refresh_sessions.Size = $System_Drawing_Size
196.
$btn_refresh_sessions.TabIndex = 8
197.
$btn_refresh_sessions.Text = "Aktualisieren"
198.
$btn_refresh_sessions.UseVisualStyleBackColor = $True
199.
$btn_refresh_sessions.add_Click($handler_btn_refresh_sessions_Click)
200.

201.
$form1.Controls.Add($btn_refresh_sessions)
202.

203.
$btn_disconnect_file.Anchor = 10
204.

205.
$btn_disconnect_file.DataBindings.DefaultDataSourceUpdateMode = 0
206.

207.
$System_Drawing_Point = New-Object System.Drawing.Point
208.
$System_Drawing_Point.X = 224
209.
$System_Drawing_Point.Y = 389
210.
$btn_disconnect_file.Location = $System_Drawing_Point
211.
$btn_disconnect_file.Name = "btn_disconnect_file"
212.
$System_Drawing_Size = New-Object System.Drawing.Size
213.
$System_Drawing_Size.Height = 23
214.
$System_Drawing_Size.Width = 115
215.
$btn_disconnect_file.Size = $System_Drawing_Size
216.
$btn_disconnect_file.TabIndex = 7
217.
$btn_disconnect_file.Text = "Auswahl schließen"
218.
$btn_disconnect_file.UseVisualStyleBackColor = $True
219.
$btn_disconnect_file.add_Click($handler_btn_disconnect_file_Click)
220.

221.
$form1.Controls.Add($btn_disconnect_file)
222.

223.
$btn_disconnect_all_files.Anchor = 10
224.

225.
$btn_disconnect_all_files.DataBindings.DefaultDataSourceUpdateMode = 0
226.

227.
$System_Drawing_Point = New-Object System.Drawing.Point
228.
$System_Drawing_Point.X = 345
229.
$System_Drawing_Point.Y = 389
230.
$btn_disconnect_all_files.Location = $System_Drawing_Point
231.
$btn_disconnect_all_files.Name = "btn_disconnect_all_files"
232.
$System_Drawing_Size = New-Object System.Drawing.Size
233.
$System_Drawing_Size.Height = 23
234.
$System_Drawing_Size.Width = 114
235.
$btn_disconnect_all_files.Size = $System_Drawing_Size
236.
$btn_disconnect_all_files.TabIndex = 6
237.
$btn_disconnect_all_files.Text = "Alle schließen"
238.
$btn_disconnect_all_files.UseVisualStyleBackColor = $True
239.
$btn_disconnect_all_files.add_Click($handler_btn_disconnect_all_files_Click)
240.

241.
$form1.Controls.Add($btn_disconnect_all_files)
242.

243.
$btn_disconnect_all_session.Anchor = 10
244.

245.
$btn_disconnect_all_session.DataBindings.DefaultDataSourceUpdateMode = 0
246.

247.
$System_Drawing_Point = New-Object System.Drawing.Point
248.
$System_Drawing_Point.X = 310
249.
$System_Drawing_Point.Y = 185
250.
$btn_disconnect_all_session.Location = $System_Drawing_Point
251.
$btn_disconnect_all_session.Name = "btn_disconnect_all_session"
252.
$System_Drawing_Size = New-Object System.Drawing.Size
253.
$System_Drawing_Size.Height = 23
254.
$System_Drawing_Size.Width = 149
255.
$btn_disconnect_all_session.Size = $System_Drawing_Size
256.
$btn_disconnect_all_session.TabIndex = 5
257.
$btn_disconnect_all_session.Text = "Alle Verbindungen trennen"
258.
$btn_disconnect_all_session.UseVisualStyleBackColor = $True
259.
$btn_disconnect_all_session.add_Click($handler_btn_disconnect_all_session_Click)
260.

261.
$form1.Controls.Add($btn_disconnect_all_session)
262.

263.
$btn_disconnect_session.Anchor = 10
264.

265.
$btn_disconnect_session.DataBindings.DefaultDataSourceUpdateMode = 0
266.

267.
$System_Drawing_Point = New-Object System.Drawing.Point
268.
$System_Drawing_Point.X = 183
269.
$System_Drawing_Point.Y = 185
270.
$btn_disconnect_session.Location = $System_Drawing_Point
271.
$btn_disconnect_session.Name = "btn_disconnect_session"
272.
$System_Drawing_Size = New-Object System.Drawing.Size
273.
$System_Drawing_Size.Height = 23
274.
$System_Drawing_Size.Width = 121
275.
$btn_disconnect_session.Size = $System_Drawing_Size
276.
$btn_disconnect_session.TabIndex = 4
277.
$btn_disconnect_session.Text = "Auswahl trennen"
278.
$btn_disconnect_session.UseVisualStyleBackColor = $True
279.
$btn_disconnect_session.add_Click($handler_btn_disconnect_session_Click)
280.

281.
$form1.Controls.Add($btn_disconnect_session)
282.

283.
$dg_files.AllowUserToAddRows = $False
284.
$dg_files.AllowUserToDeleteRows = $False
285.
$dg_files.AllowUserToResizeRows = $False
286.
$dg_files.Anchor = 14
287.
$dg_files.SelectionMode = 1
288.
$dg_files.RowHeadersVisible = $false
289.
$dg_files.AutoSizeColumnsMode = 16
290.
$dg_files.ReadOnly = $true
291.
$dg_files.BackgroundColor = [System.Drawing.Color]::White
292.

293.
$dg_files.DataBindings.DefaultDataSourceUpdateMode = 0
294.
$System_Drawing_Point = New-Object System.Drawing.Point
295.
$System_Drawing_Point.X = 12
296.
$System_Drawing_Point.Y = 239
297.
$dg_files.Location = $System_Drawing_Point
298.
$dg_files.Name = "dg_files"
299.
$dg_files.RowHeadersWidth = 20
300.
$System_Drawing_Size = New-Object System.Drawing.Size
301.
$System_Drawing_Size.Height = 144
302.
$System_Drawing_Size.Width = 447
303.
$dg_files.Size = $System_Drawing_Size
304.
$dg_files.TabIndex = 3
305.

306.
$form1.Controls.Add($dg_files)
307.

308.
$label2.Anchor = 6
309.
$label2.DataBindings.DefaultDataSourceUpdateMode = 0
310.
$label2.Font = New-Object System.Drawing.Font("Microsoft Sans Serif",9.75,1,3,0)
311.

312.
$System_Drawing_Point = New-Object System.Drawing.Point
313.
$System_Drawing_Point.X = 12
314.
$System_Drawing_Point.Y = 213
315.
$label2.Location = $System_Drawing_Point
316.
$label2.Name = "label2"
317.
$System_Drawing_Size = New-Object System.Drawing.Size
318.
$System_Drawing_Size.Height = 23
319.
$System_Drawing_Size.Width = 144
320.
$label2.Size = $System_Drawing_Size
321.
$label2.TabIndex = 2
322.
$label2.Text = "Offene Dateien"
323.

324.
$form1.Controls.Add($label2)
325.

326.
$label1.DataBindings.DefaultDataSourceUpdateMode = 0
327.
$label1.Font = New-Object System.Drawing.Font("Microsoft Sans Serif",9.75,1,3,0)
328.

329.
$System_Drawing_Point = New-Object System.Drawing.Point
330.
$System_Drawing_Point.X = 12
331.
$System_Drawing_Point.Y = 9
332.
$label1.Location = $System_Drawing_Point
333.
$label1.Name = "label1"
334.
$System_Drawing_Size = New-Object System.Drawing.Size
335.
$System_Drawing_Size.Height = 23
336.
$System_Drawing_Size.Width = 144
337.
$label1.Size = $System_Drawing_Size
338.
$label1.TabIndex = 1
339.
$label1.Text = "Offene Sitzungen"
340.

341.
$form1.Controls.Add($label1)
342.

343.
$dg_sessions.AllowUserToAddRows = $False
344.
$dg_sessions.AllowUserToDeleteRows = $False
345.
$dg_sessions.AllowUserToResizeRows = $False
346.
$dg_sessions.Anchor = 15
347.
$dg_sessions.SelectionMode = 1
348.
$dg_sessions.ReadOnly = $true
349.
$dg_sessions.RowHeadersVisible = $false
350.
$dg_sessions.AutoSizeColumnsMode = 16
351.
$dg_sessions.BackgroundColor = [System.Drawing.Color]::White
352.

353.
$dg_sessions.DataBindings.DefaultDataSourceUpdateMode = 0
354.
$System_Drawing_Point = New-Object System.Drawing.Point
355.
$System_Drawing_Point.X = 12
356.
$System_Drawing_Point.Y = 35
357.
$dg_sessions.Location = $System_Drawing_Point
358.
$dg_sessions.MultiSelect = $False
359.
$dg_sessions.Name = "dg_sessions"
360.
$dg_sessions.RowHeadersWidth = 20
361.
$System_Drawing_Size = New-Object System.Drawing.Size
362.
$System_Drawing_Size.Height = 144
363.
$System_Drawing_Size.Width = 447
364.
$dg_sessions.Size = $System_Drawing_Size
365.
$dg_sessions.TabIndex = 0
366.

367.
$form1.Controls.Add($dg_sessions)
368.

369.
#endregion Generated Form Code
370.

371.
#Save the initial state of the form
372.
$InitialFormWindowState = $form1.WindowState
373.
#Init the OnLoad event to correct the initial state of the form
374.
$form1.add_Load($OnLoadForm_StateCorrection)
375.
#Show the Form
376.
$form1.ShowDialog()| Out-Null
377.
} # End Function
378.

379.
# Powershell-Konsolenfenster verstecken
380.
Hide-PowerShell
381.
#Form Funktion aufrufen
382.
GenerateForm
Wer es brauchen kann, viel Spaß damit

Grüße @colinardo
Mitglied: Penny.Cilin
10.10.2014 um 12:46 Uhr
@colinardo

Perfekt!


Gruss Penny.
Bitte warten ..
Mitglied: AnkhMorpork
10.10.2014 um 17:57 Uhr
Gehörst du eigentlich zu den Entwicklern der PS?

Mir scheint es fast so ... geniale Sache!

Gruß

ankh
Bitte warten ..
Mitglied: colinardo
10.10.2014, aktualisiert um 18:02 Uhr
Zitat von AnkhMorpork:

Gehörst du eigentlich zu den Entwicklern der PS?
nee , mache Powershell intensiv auch erst seit ca. 1,5 Jahren. Aber damals hat mich das Fieber gepackt was so alles mit der Powershell möglich ist macht einfach nur Spaß !

Grüße Uwe
Bitte warten ..
Mitglied: AnkhMorpork
10.10.2014 um 19:13 Uhr
Zitat von colinardo:

> Zitat von AnkhMorpork:
>
> Gehörst du eigentlich zu den Entwicklern der PS?
nee , mache Powershell intensiv auch erst seit ca. 1,5 Jahren. Aber damals hat mich das Fieber gepackt was so alles mit der
Powershell möglich ist macht einfach nur Spaß !

Grüße Uwe

Man, man ... meinen Respekt dazu! Und weiter so!

Gruß

ankh
Bitte warten ..
Mitglied: Dani
11.10.2014, aktualisiert 12.10.2014
Guten Abend @colinardo,
einfach perfekt! Du lernst anscheinend schnell...
Gibt es bestimmte Anforderungen bezüglich der Powershellversion und des Betriebssystems? Du hast zwar von einem Windows-Serversystem gesprochen, aber ist sehr allgemein gehalten.


Gruß,
Dani

P.S. Ich vermute er arbeitet für ein Unternehmen mit Haupsitz in Unterschleißheim.
Bitte warten ..
Mitglied: colinardo
11.10.2014, aktualisiert um 23:23 Uhr
Hallo Dani,
Zitat von Dani:
Gibt es bestimmte Anforderungen bezüglich der Powershellversion und des Betriebssystems? Du hast zwar von einem
Windows-Serversystem gesprochen, aber ist sehr allgemein gehalten.
habe es hier auf einem Windows 7/8 und einem Server 2008R2 getestet. Die Ausgabe von net session und net file sollte sich in den Versionen nicht groß unterscheiden. Habe die Ausgabe mit Regex gecaptured und gilt für deutsche und englische Systeme. Einfach ausprobieren und Rückmeldung geben

Grüße Uwe
Bitte warten ..
Mitglied: colinardo
19.10.2014, aktualisiert um 14:20 Uhr
Zur Info: Die Serie der GUIs geht in die nächste Runde ...
PowerShell VPN Monitoring

Grüße Uwe
Bitte warten ..
Mitglied: cced-de
06.09.2018 um 14:24 Uhr
Super Script,

genial wäre eine solche Abfrage, über das Netz auf einen Server..
Welche Files sind auf dem Server von welchem User geöffnet... Diese dann bei Bedarf schließen...

Ich versuche gerade sowas mit Batch umzusetzen
Siehe Hier...
Bitte warten ..
Ähnliche Inhalte
TK-Netze & Geräte
Fritzbox als Session Boarder Controller
Tipp von Spirit-of-EliTK-Netze & Geräte15 Kommentare

Moin zusammen, Es wird zwar auch häufig drauf hingewisen das man auch TK Anlagen an den S0 einer Fritzbox ...

Datenschutz

Session-Replay: Viele beliebte Webseiten zeichnen jegliche Texteingabe auf

Information von Penny.CilinDatenschutz2 Kommentare

Eine weitere wichtige Meldung vom Heise Newsticker: Session-Replay: Viele beliebte Webseiten zeichnen jegliche Texteingabe auf Gruss Penny

Linux

Installation der Asterisk GUI

Anleitung von 107459Linux

Vorbereitung Installation von subversion (falls nicht vorhanden) apt-get install subversion Herunterladen des SourceCodes: svn checkout asterisk-gui Bauen der Pakete: ...

Router & Routing

Powershell: FritzBox über TR-064 im Netzwerk konfigurieren und auslesen

Anleitung von colinardoRouter & Routing38 Kommentare

Ich stand neulich vor der undankbaren Aufgabe eine Fritzbox per Powershell auszulesen und Aktionen darüber automatisiert auszuführen. Herausgekommen ist ...

Neue Wissensbeiträge
Microsoft
PowerShell script für LAPS
Information von kgborn vor 18 StundenMicrosoft2 Kommentare

Kurzer Hinweis für Admins im AD-Umfeld. Ich bin die Tage auf das PowerShell Script der Woche “Local Administrator Password ...

Windows 10
Windows 10 bis Version 1803 und das Zwangs-Upgrade
Information von kgborn vor 18 StundenWindows 10

Ich denke, die meisten Admins hier werden Systeme mit Windows 10 Enterprise einsetzen und Updates per WSUS/SCCM oder ähnlichem ...

Microsoft Office
BSI-Empfehlungen für die Office-Konfiguration
Information von kgborn vor 18 StundenMicrosoft Office

Kurze Information für Admins, die Office verwalten. Das BSI hat einige Regeln für die Absicherung von Office-Konfigurationen veröffentlicht. Ich ...

Windows 10

Sandy-Bridge plus Nvidia plus Win10 1903 braucht Hotfix

Information von DerWoWusste vor 5 TagenWindows 101 Kommentar

Es gibt ein Problem in der seltenen Konstellation Nvidia-Grafikkarte/Sandy-Bridge-CPU/Win10v1903: die von Nvidia vorgeschlagenen Treiber lassen sich nicht installieren. verlinkt ...

Heiß diskutierte Inhalte
Windows 10
WLAN-Verbindung wird getrennt, wenn per RDP auf das System zugegriffen wird
gelöst Frage von LordGurkeWindows 1017 Kommentare

Hallo, ich habe hier eine eigentlich sehr einfache Konstellation, die aber nun plötzlich Probleme verursacht: Es gibt ein Notebook ...

Batch & Shell
Powershell Skript für Reg Datei ändern
gelöst Frage von SoccerdeluxBatch & Shell16 Kommentare

Hallo zusammen, ich muss auf einem Windows 10 Pc ein Skript ausführen lassen was sich alle 5 Minuten wiederholt. ...

LAN, WAN, Wireless
WLAN in Veranstaltungshalle
Frage von coltseaversLAN, WAN, Wireless14 Kommentare

Hallo zusammen, für eine Halle mit 1300 m² suche ich derzeit nach einer WLAN-Hotspot-Lösung für bis zu 500 User ...

Windows 10
Windows 10 Logonskript greift nicht
Frage von xbast1xWindows 1013 Kommentare

Hallo zusammen, da sich die per GPO gemappten Laufwerke bei allen Usern schließen und das Problem sich nicht lösen ...