You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Нужно добавить удаление временного файла после использования
MissingTemporaryFileDeletion
Версия
1.14.
Описание ложного срабатывания диагностики
В модуле по определенным условиям создаются файлы с помощью процедуры ПолучитьИмяВременногоФайла()
Далее в модуле по этим же условиям эти файлы удаляются но все равно выводит ошибку.
Пример кода
Если ДождатьсяЗавершения Тогда
Если ПолучитьПотокВывода Тогда
ИмяФайлаПотокаВывода = ПолучитьИмяВременногоФайла("stdout.tmp");
СтрокаКоманды = СтрокаКоманды + " > """ + ИмяФайлаПотокаВывода + """";
КонецЕсли;
Если ПолучитьПотокОшибок Тогда
ИмяВременногоФайлаПотокаОшибок = ПолучитьИмяВременногоФайла("stderr.tmp");
СтрокаКоманды = СтрокаКоманды + " 2>""" + ИмяВременногоФайлаПотокаОшибок + """";
КонецЕсли;
КонецЕсли;
Если КодировкаПотоков = Неопределено Тогда
КодировкаПотоков = КодировкаСтандартныхПотоков();
КонецЕсли;
КодВозврата = Неопределено;
Если ОбщегоНазначения.ЭтоWindowsСервер() Тогда
ИмяФайлаКоманды = ПолучитьИмяВременногоФайла("run.bat");
ТекстовыйДокумент = РаботаСФайламиСлужебныйКлиентСервер.НовыйФайлЗапускаКомандыWindows(
СтрокаКоманды, ТекущийКаталог, ДождатьсяЗавершения, КодировкаИсполнения);
ТекстовыйДокумент.Записать(ИмяФайлаКоманды, КодировкаПотоков);
Если ОбщегоНазначения.ИнформационнаяБазаФайловая() Тогда
// В файловой информационной базе показывать окно консоли не следует и в серверном контексте.
Оболочка = Новый COMОбъект("Wscript.Shell");
КодВозврата = Оболочка.Run(ИмяФайлаКоманды, 0, ДождатьсяЗавершения);
Оболочка = Неопределено;
Иначе
ЗапуститьПриложение(ИмяФайлаКоманды,, ДождатьсяЗавершения, КодВозврата);
КонецЕсли;
Если ДождатьсяЗавершения Тогда
// Автоматически удаление включено только в случае не ожидания завершения, т.к. код возврата там не интересен.
// В случае, когда нужен корректный код возврата автоматического удаления нет, потому следует удалить файл здесь.
УдалитьВременныйФайл(ИмяФайлаКоманды);
КонецЕсли;
Иначе
ЗапуститьПриложение(СтрокаКоманды, ТекущийКаталог, ДождатьсяЗавершения, КодВозврата);
КонецЕсли;
ПотокВывода = "";
ПотокОшибок = "";
Если ДождатьсяЗавершения Тогда
Если ПолучитьПотокВывода Тогда
ПотокВывода = ПрочитатьФайлЕслиСуществует(ИмяФайлаПотокаВывода, КодировкаПотоков);
УдалитьВременныйФайл(ИмяФайлаПотокаВывода);
КонецЕсли;
Если ПолучитьПотокОшибок Тогда
ПотокОшибок = ПрочитатьФайлЕслиСуществует(ИмяВременногоФайлаПотокаОшибок, КодировкаПотоков);
УдалитьВременныйФайл(ИмяВременногоФайлаПотокаОшибок);
КонецЕсли;
КонецЕсли;
Скриншоты
Дополнительная информация
The text was updated successfully, but these errors were encountered:
Диагностика
Нужно добавить удаление временного файла после использования
MissingTemporaryFileDeletion
Версия
1.14.
Описание ложного срабатывания диагностики
В модуле по определенным условиям создаются файлы с помощью процедуры ПолучитьИмяВременногоФайла()
Далее в модуле по этим же условиям эти файлы удаляются но все равно выводит ошибку.
Пример кода
Скриншоты
Дополнительная информация
The text was updated successfully, but these errors were encountered: