I have several users that use Remote Desktop App (Server 2008) and when they open the .BAT file I have created, it opens up two programs...however, I need to prevent the same program (in this case Outlook) from opening up multiple times...
I created this line in my .BAT file...
tasklist /nh /fi "imagename eq outlook.exe" | find /i "Outlook.exe" > nul ||(start /min Outlook.exe)
It works fine...except, I have multiple users logging on to this "terminal server" and running the same .BAT file...so what happens is when "User 2" logs on, they don't get Outlook started because it already shows as running in the task mananger under "USER 1"...
I need to be able to distinguish the "imagename" and "username"
...well the "username" would be %USERPROFILE%
Answer
How to prevent opening same program on terminal server by the “same user” with command prompt?
I have multiple users logging on to this "terminal server" and running
the same .BAT file...so what happens is when "User 2" logs on, they
don't get Outlook started because it already shows as running in the
task manager under "USER 1"
Give the below logic a shot as it'll use the %Username%
environmental variable to only get the current TASKLIST
entry for the Username of the user account profile that runs that command. . .
TASKLIST COMMANDS TO GET PROCESS FOR ONLY THE USER RUNNING IT
TASKLIST /NH /FI "USERNAME eq %Username%" /FI "imagename eq outlook.exe"
USING WITH YOUR EXAMPLE LOGIC
TASKLIST /NH /FI "USERNAME eq %Username%" /FI "imagename eq outlook.exe" | find /i "Outlook.exe" > nul ||(start /min Outlook.exe)
No comments:
Post a Comment