Is taskkill safe to close a process? - batch-file

I want to be able to close a process on a remote computer using a .bat file.
eg: taskkill /im Myapp.exe
Is using taskkill a suitable way to close an application? eg like clicking the 'X' on the toolbar?
Does it give the app time to run all of it's closing down methods/destructors? Or does it cause it to end abruptly, losing any data that hasn't had a chance to be written before closing?

Yes, if you dont use /f.

Related

Cannot Open Mail using batch (.bat)

My Mail App for Windows 10 starts lagging like CRAZY with 4 second reaction times for each click. (yeah) When that happens I simply have to restart it to fix the issue. (No one has been able to understand why This happens when mail-app is idle)
I just thought I make a simple batch file who kills the app and restarts it each time I wanna open it so it always opens fresh. (Killing it takes just a second extra)
I managed to find that the name of the mail app process was HxOutlook.exe so I wrote this successful code
taskkill /IM HxOutlook.exe /F
But when trying to boot the process I cannot find out how. I tried the file directly but I get acces denied. Tried running is as my user which is admin, still same error. When trying to run as 'admin' it always says wrong password. However I don't want to have to enter password..
I found the HwOutlook folder and tried Using this code to call .exe:
runas /user:Administrator "C:\Program Files\WindowsApps\microsoft.windowscommunicationsapps_16005.11029.20108.0_x64__8wekyb3d8bbwe\HxOutlook.exe"
I also created a shortcut from the start menu and it says it executes microsoft.windowscommunicationsapps_8wekyb3. But trying to do that gets only error is not recognized as command or program
What can I add to the batch script to make it open the app again as if I click a shortcut like I can do in start, desktop and taskbar...
Just calling the shortcut from the desktop like Mail.lnk solved it for now.
taskkill /IM HxOutlook.exe /F
Mail.lnk

Killing a java process safely on windows

i want to kill a java process through a batch file, but safely.
The problem is, when i use
taskkill /IM java.exe
it wont kill the process because java doesn't allow it.
When i use
taskkill /F /IM java.exe
it works, but there is the risk that files could corrupt, so i don't want to use it.
The subject is to stop a minecraft server which is running on windows. One option on linux is to use screen so i can send a stop-command to this virtual command line but as i know this programm doesn't work on windows. Is there mayby an alternative?

How to close an invisible VBS file

I am trying to code a batch file that can play a song.
Luckily I found a solution to that at Stack Overflow. I used SachaDee's method, which created a VBS file that would play my mp3 file nicely.
My only issue is that once the VBS file is opened, I can't seem to find a way to stop the music. I even tried deleting the file in mid-song, but the song will still continue.
EDIT:
I found out that the way to solve this is by running the following command.
taskkill /IM wscript.exe /F
Just to end up the question.
taskkill /IM wscript.exe /F
This will stop wscript.exe with full force. However, a vbs can also be executed through cscript.exe.
According to this question, it seems to be ideal to use cscript for command-line, to execute VBS. Altough both works.
With your keyboard, press Ctrl+alt+del , then click Task Manager.
In task manager, click on the section where it shows you the programs that are running.
Find the VBS icon: A little cube with branches.
Click on the icon, then on the End Task Button.

Batch file to start browser minimized and kill it after

Trying to create a batch file that will open a specific browser (firefox) minimized and direct it to a link. After A specific period 5 seconds the browser will close. I can direct to the link open a specific browser but the browser does not start minimized nor does it close after 5.
#echo off
SET BROWSER=firefox.exe
SET WAIT_TIME=2
start /min %BROWSER% http://www.stackoverflow.com
SET WAIT_TIME=2
taskkill /IM firefox.exe
Your batch file cannot close the process because, while it sets a variable called WAIT_TIME, the batch file does not actually wait; the taskkill command runs immediately, before the process has even started. You need to add a command such as timeout to actually make the batch file wait.
SET WAIT_TIME=2
timeout %WAIT_TIME%
taskkill /im firefox.exe
For the minimized window, there is no good solution. A Windows (non-console) program receives the /min param through its nCmdShow parameter to WinMain(), but it's up to the program what to do with that. Most simply ignore it. There are 3rd-party solutions which will send a minimize command to the window after it has opened, but there's no easy way to do this in Windows Batch without involving another scripting language like VBS or PowerShell.

How to close firefox from a batch file without killing the process?

Hi I want to close a Firefox window but without killing it...
I know that the taskkill command terminates processes but is there any other way to close the application window?
Thanks.
You can't kill a process without killing the process. However, unless you use the /f switch taskkill asks the process nicely to terminate itself (same as if you'd press Alt-F4).

Resources