|
1291 | 1291 |
|
1292 | 1292 | КонецФункции |
1293 | 1293 |
|
1294 | | -Функция ЗапуститьПриложениеИДождатьсяЗавершения(Знач СтрокаЗапуска, Знач ТекущийКаталог = "\.") |
1295 | | - |
1296 | | - Результат = -1; |
1297 | | - Если НЕ ЭтоWindows И ТекущийКаталог = "\." Тогда |
1298 | | - ТекущийКаталог = "./"; |
| 1294 | +Процедура ЗавершитьПроцесс_TGitCache_exe() |
| 1295 | + |
| 1296 | + Если Не ЭтоWindows Тогда |
| 1297 | + Возврат; |
1299 | 1298 | КонецЕсли; |
1300 | 1299 |
|
1301 | | - Попытка |
1302 | | - КодВозврата = ""; |
1303 | | - ЗапуститьПриложение(СтрокаЗапуска, ТекущийКаталог, Истина, КодВозврата); |
1304 | | - Результат = КодВозврата; |
1305 | | - Исключение |
1306 | | - // Для x64 ОС |
1307 | | - Если ЭтоWindows Тогда |
1308 | | - СтрокаЗапуска = "%windir%\Sysnative\" + СтрокаЗапуска; |
1309 | | - КодВозврата = ""; |
1310 | | - ЗапуститьПриложение(СтрокаЗапуска, ТекущийКаталог, Истина, КодВозврата); |
1311 | | - Результат = КодВозврата; |
1312 | | - КонецЕсли; |
1313 | | - КонецПопытки; |
| 1300 | + ИмяПроцессаКешаГит = "TGitCache.exe"; |
1314 | 1301 |
|
1315 | | - Возврат Результат; |
| 1302 | + МассивПроцессов = НайтиПроцессыПоИмени(ИмяПроцессаКешаГит); |
| 1303 | + |
| 1304 | + Если МассивПроцессов.Количество() = 0 Тогда |
| 1305 | + Возврат; |
| 1306 | + КонецЕсли; |
1316 | 1307 |
|
1317 | | -КонецФункции // ЗапуститьПриложениеИДождатьсяЗавершения() |
| 1308 | + КомандаTaskKill = Новый Команда; |
| 1309 | + КомандаTaskKill.УстановитьКоманду("taskkill"); |
| 1310 | + КомандаTaskKill.ДобавитьПараметр("/im"); |
| 1311 | + КомандаTaskKill.ДобавитьПараметр(ИмяПроцессаКешаГит); |
| 1312 | + КомандаTaskKill.ДобавитьПараметр("/T"); |
| 1313 | + КомандаTaskKill.ДобавитьПараметр("/F"); |
| 1314 | + КомандаTaskKill.ДобавитьЛогВыводаКоманды(ИмяЛога()); |
1318 | 1315 |
|
1319 | | -Процедура ЗавершитьПроцесс_TGitCache_exe() |
1320 | | - Если ЭтоWindows Тогда |
1321 | | - СтрокаКоманды = "taskkill /im TGitCache.exe /T /F"; |
1322 | | - Лог.Отладка("ЗавершитьПроцесс_TGitCache_exe: команда "+ СтрокаКоманды); |
| 1316 | + КодВозврата = КомандаTaskKill.Исполнить(); |
1323 | 1317 |
|
1324 | | - ЗапуститьПриложениеИДождатьсяЗавершения(СтрокаКоманды); |
| 1318 | + Если КодВозврата <> 0 Тогда |
| 1319 | + КомандаTaskKill.УстановитьКоманду("%windir%/Sysnative/taskkill"); |
| 1320 | + КодВозврата = КомандаTaskKill.Исполнить(); |
1325 | 1321 | КонецЕсли; |
| 1322 | + |
| 1323 | + Если КодВозврата <> 0 Тогда |
| 1324 | + Лог.КритичнаяОшибка("Не удалось завершить процесс <%>", ИмяПроцессаКешаГит); |
| 1325 | + КонецЕсли; |
| 1326 | + |
1326 | 1327 | КонецПроцедуры |
1327 | 1328 |
|
1328 | 1329 | Функция ФорматДвузначноеЧисло(ЗначениеЧисло) |
|
0 commit comments