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
GELÖST

PowerShell Script, Anwendung soll nur einmal gestartet werden?

Frage Microsoft Windows Server

Mitglied: FloFMS

FloFMS (Level 1) - Jetzt verbinden

09.01.2013, aktualisiert 13:19 Uhr, 2376 Aufrufe, 6 Kommentare

Hallo Zusammen

Windows 2008 R2 Terminal Server.

Ich möchte per PowerShell Skript erreichen das ein TerminalServer User eine Anwendung nur 1x starten kann. Folgendes hab ich dazu schon zusammen. Das funktioniert aber nicht auf User sondern nur auf System ebenen. Soll heißen er findet immer alle Prozesse, sobald die Anwendung bei einem anderen TS-User läuft startet er sie nicht mehr. Mir fehlt irgendwie die Begrenzung auf den Aktuellen TS-User.

Kann mir jemand erklären wie ich das umsetzen kann?

01.
$proc = Get-Process | Where-Object {$_.ProcessName -eq "Anwendung"} 
02.
 
03.
if ($proc -imatch 'Anwendung') 
04.
{	 
05.
'Anwendung ist bereits gestartet' 
06.
07.
else 
08.
09.
'Anwendung wird gestartet' 
10.
& 'Pfad zur Anwendung' 
11.
}
Danke

Gruß
Florian
Mitglied: Hitman4021
09.01.2013 um 12:50 Uhr
Hallo,

bitte die < code > < /code > Tags benützen. Ohne Leerzeichen.

Wie wäre es etwa so in der Art:
01.
$curUser = [Environment]::UserName 
02.
$owners = @{} 
03.
gwmi win32_process |% {$owners[$_.handle] = $_.getowner().user} 
04.
$proc get-process | Where-Object {$_.ProcessName -eq "Anwendung"} | select processname,@{l="Owner"; e={$owners[$_.id.tostring()]}} 
05.
 
06.
if ($proc -imatch 'Anwendung') -and ( $proc -imatch "$curUser") 
07.
08.
'Anwendung ist bereits gestartet' 
09.
10.
else 
11.
12.
'Anwendung wird gestartet' 
13.
& 'Pfad zur Anwendung' 
14.
}
Gruß
Bitte warten ..
Mitglied: FloFMS
09.01.2013, aktualisiert um 13:17 Uhr
Hallo Hitman

Danke für die schnelle Antwort.

Es scheint einen kleinen Fehler nach der ersten "If" Anweisung zu geben. Er meckert immer den "Bindestrich" vor dem "and" an.
01.
 -and ( $proc -imatch "$curUser")
Gruß
Florian
Bitte warten ..
Mitglied: Hitman4021
09.01.2013 um 13:18 Uhr
Hallo,

sry hab ne Klammer vergessen.

Korrigiert:
01.
$curUser = [Environment]::UserName 
02.
$owners = @{} 
03.
gwmi win32_process |% {$owners[$_.handle] = $_.getowner().user} 
04.
$proc get-process | Where-Object {$_.ProcessName -eq "Anwendung"} | select processname,@{l="Owner"; e={$owners[$_.id.tostring()]}} 
05.
 
06.
if (($proc -imatch 'Anwendung') -and ( $proc -imatch "$curUser")) 
07.
08.
'Anwendung ist bereits gestartet' 
09.
10.
else 
11.
12.
'Anwendung wird gestartet' 
13.
& 'Pfad zur Anwendung' 
14.
}
Gruß
Bitte warten ..
Mitglied: FloFMS
09.01.2013, aktualisiert um 13:23 Uhr
Perfekt

Oben hat auch ein = gefehlt (hinter $proc)

So funktioniert es Problemlos.

Danke für die schnelle Hilfe.

01.
$curUser = [Environment]::UserName 
02.
$owners = @{} 
03.
gwmi win32_process |% {$owners[$_.handle] = $_.getowner().user} 
04.
$proc = Get-Process | Where-Object {$_.ProcessName -eq "Anwendung"} | select processname,@{l="Owner"; e={$owners[$_.id.tostring()]}} 
05.
 
06.
if (($proc -imatch 'Anwendung') -and ( $proc -imatch "$curUser")) 
07.
08.
'Anwendung ist bereits gestartet' 
09.
10.
else 
11.
12.
'Anwendung wird gestartet' 
13.
& 'Pfad zur Anwendung' 
14.
}
Bitte warten ..
Mitglied: FloFMS
09.01.2013 um 14:24 Uhr
Eine Frage noch.

Wie kann ich einen Pfad mit Leerzeile angeben?

Ich hab das Problem das der unter Zeile 13 angegebene Pfad bei einer Anwendung ein Leerzeichen hat. Irgendwie hab ich nichts dazu gefunden.
Bitte warten ..
Mitglied: Hitman4021
09.01.2013 um 14:32 Uhr
Hallo,

01.
'C:\SO FUNKTIONIERT DAS\cmd.exe'
Gruß
Bitte warten ..
Neuester Wissensbeitrag
Windows 10

Powershell 5 BSOD

(8)

Tipp von agowa338 zum Thema Windows 10 ...

Ähnliche Inhalte
Batch & Shell
gelöst PowerShell Script Move-Item nach x Tagen (5)

Frage von lupolo zum Thema Batch & Shell ...

VB for Applications
Powershell Script aus VBA heraus ausführen (2)

Frage von mcnico1978 zum Thema VB for Applications ...

Batch & Shell
gelöst Powershell-Script als Admin über CMD ausführen (2)

Frage von Tobiased zum Thema Batch & Shell ...

Batch & Shell
Windows Explorer hängt sich bei Powershell Script auf (5)

Frage von zamsi7 zum Thema Batch & Shell ...

Heiß diskutierte Inhalte
Microsoft
Ordner mit LW-Buchstaben versehen und benennen (20)

Frage von Xaero1982 zum Thema Microsoft ...

Outlook & Mail
gelöst Outlook 2010 findet ost datei nicht (19)

Frage von Floh21 zum Thema Outlook & Mail ...

Netzwerkmanagement
gelöst Anregungen, kleiner Betrieb, IT-Umgebung (18)

Frage von Unwichtig zum Thema Netzwerkmanagement ...

Festplatten, SSD, Raid
M.2 SSD wird nicht erkannt (14)

Frage von uridium69 zum Thema Festplatten, SSD, Raid ...