2015-05-29 48 views
1

每次我不小心拔掉Logitech键盘时,“LCore.exe”进程都不响应。我必须手动结束进程并重新启动它。
我想创建一个.bat文件来为我做这件事,但我不知道如何。如何使用.bat文件重新启动进程

我试过用这个,但它似乎没有工作。

taskkill /im LCore.exe 
start "C:\Program Files\Logitech Gaming Software\LCore.exe" 
+0

什么不行?关闭还是重新启动? – Marged

+0

两者。我已经通过添加“/ f”来尝试你的建议,它的工作。 但是,启动该过程似乎不起作用。命令提示符以“C:\ Program Files \ Logitech Gaming Software \ LCore.exe”作为标题。 – HyphenSam

回答

1

尝试将/ f添加到taskkill,这将强制终止进程。

一个黑客来解决另一个问题:

start "" "C:\Program Files\Logitech Gaming Software\LCore.exe" 
+0

工作。谢谢 – HyphenSam

2

你的第一个命令,要求关闭该程序。如果它挂了,它就无法反应。

请参阅taskkill /?并参见/f了解力参数。

对于非控制台程序,WM_Close消息发布到主窗口(即,如果您单击了标题栏上的红色X按钮)。使用/f时,使用TerminateProcess(作为在任务管理器的进程选项卡上停止进程)。

从帮助

一个应用程序可提示用户进行确认,之前销毁一个窗口,通过处理WM_CLOSE消息并调用仅当用户确认选择的的DestroyWindow功能。

默认情况下,DefWindowProc函数调用DestroyWindow函数销毁该窗口。

备注

的TerminateProcess函数用于无条件地导致进程退出。如果使用TerminateProcess而不是ExitProcess,动态链接库(DLL)维护的全局数据状态可能会受到影响。

TerminateProcess启动终止并立即返回。这会停止执行进程内的所有线程,并请求取消所有待处理的I/O。在所有待处理的I/O完成或取消之前,已终止的进程无法退出。

进程无法阻止自己被终止。