есть БСП с подсистемой "РаботаСФайлами".
есть желание проверять жесткие диски : "есть ли свободное место".
Я в БСП этой проверки не нашел , но такая проверка должна быть в БСП.
кто встречался с этим вопросом - запостите код , плз.
один из вариантов кода :
попытка // т.к. не во всех ОС может работать scripting
лОтказ = Ложь;
fso = Новый COMОбъект("scripting.fileSystemObject");
Диски = fso.Drives;
лВыводитьСообщение = Ложь;
лТекст = "Корректная работа 1С невозможна.
|Сообщите в техподдержку.";
для каждого диск из Диски Цикл
Если диск.ShareName = "" и диск.IsReady Тогда
// проверка
лТотал = диск.TotalSize/(1024*1024);// М
лФриСпейс = диск.FreeSpace/(1024*1024);
лПроцент = диск.FreeSpace/диск.TotalSize;
лДопустимое = 512;
Если лПроцент<0.01 Тогда
лВыводитьСообщение = Истина;
лТекст = лТекст +"
|Недостаточно места на диске : "+диск.DriveLetter;
лТекст = лТекст +"
|Осталось меньше "+Формат(лПроцент*100, "ЧЦ=10; ЧДЦ=2") +"% на диске.";
КонецЕсли;
Если лДопустимое>лФриСпейс Тогда
лВыводитьСообщение = Истина;
лТекст = лТекст +"
|Недостаточно места на диске : "+диск.DriveLetter;
лТекст = лТекст +"
|Осталось меньше "+ Формат(лФриСпейс, "ЧЦ=10; ЧДЦ=2") +"Мб на диске.";
КонецЕсли;
КонецЕсли;
КонецЦикла;
Если лВыводитьСообщение Тогда
#Если Клиент Тогда
Предупреждение(лТекст);
#КонецЕсли
ОбщегоНазначения.СообщитьОбОшибке(лТекст, лОтказ, "Недостаточно места на диске.");
КонецЕсли;
Исключение
//
//ОписаниеОшибки = ОписаниеОшибки();
//ОбщегоНазначения.СообщитьОбОшибке("Не удалось проверить объём свободного места на дисках.", , "");
КонецПопытки;
Выдавать глобальные идеи — это удовольствие; искать сволочные маленькие ошибки — вот настоящая работа. Фредерик Брукс-младший