Вариант решения для конкретной программы (если её имя и откуда она запускалась, известно) был мной изложен в ответе на вопрос 126272. Написан скрипт, на него можно сделать на рабочем столе значок, и одним движением "убить" программу. Но и способ, который Вы и сами знаете, и предложенный мной плох тем, что это "убийство" программы не сохраняет данные так же, как корректный штатный выход из программы, предусмотренный её разработчиком.
Позволю себе процитировать ответ на вопрос 126272
Для примера взял программу "блокнот", т е Notepad.exe. В приложении смотрите скрипт, который убивает все запущенные блокноты и стартует его заново.
Скопируйте его, всавьте его в любой текстовый редактор (блокнот, например), сохраните как файл с расширением .js , например, kuku.js. Далее запускаете его как нормальный исполняемый файл (.bat, .exe, .com и т д). Это стандартное для Windows средство, дополнительно ничего ставить не надо. Можете на него значок сделать.
При ответе использовал и настоятельно советую книгу
А.Попов "Windows Script Host для Windows 2000/XP"
Санкт-Петербург "БХВ-Петербург" 2003
Текст скрипта:
var Program='"Notepad.exe"'; //Экзешника программы без пути
var ProgPath='"C:\\Windows\\system32\\notepad.exe"' //Экзешнк программы с путем
var WMI,SQuery,Processes,Process;
var WshShell=WScript.CreateObject("WScript.Shell");
try {WMI=GetObject("winMgmts:");}
catch (e)
{
if (e !=0)
{
WshShell.Popup('Ошибка соединения WMI',0,'Закрытие программы '+Program,16);
WScript.Quit();
}
}
SQuery='Select *From Win32_Process Where Name='+Program;
Processes=new Enumerator(WMI.ExecQuery(SQuery));
while (!Processes.atEnd())
{
Process=Processes.item();
try {Process.Terminate();}
catch (e)
{
if (e !=0)
{
WshShell.Popup("Ошибка закрытия экземпляра процесса",0,"Закрытие программы "+Program,16);
WScript.Quit();
}
}
Processes.moveNext();
}
SQuery = WshShell.Run(ProgPath,1,false);
Примечание:
Если прогу перезапускать не надо, последнюю строку в скрипте надо удалить.
Кстати, в форуме вопроса приведен также и скрипт на VBS.
Об авторе:
Понеже не словес красных бог слушает, но дел наших хощет