Если ЧислоВхождений > 0 Тогда
Для к = 0 По ЧислоВхождений - 1 Цикл
Match = Matches.Item(к);
Стр = Число(СтрЗаменить(Match.Value, "Count ", ""));
Если Стр > ВозвращаемоеЗначение Тогда
ВозвращаемоеЗначение = Стр;
КонецЕсли;
КонецЦикла;
КонецЕсли;
КонецЦикла;
Возврат ВозвращаемоеЗначение;
КонецФункции
Если кому-то интересно, в (1) есть ошибка.
Вот так правильно и гораздо быстрее:
Функция ОпределитьКоличествоСтраниц(ПутьКФайлуPDF)
ВозвращаемоеЗначение = 0;
ТД = Новый ТекстовыйДокумент;
ТД.Прочитать(ПутьКФайлуPDF);
КолСтр = ТД.КоличествоСтрок();
//будем использовать регулярные выражения
RegExp = Новый COMОбъект("VBScript.RegExp");
RegExp.Global = Истина;
RegExp.MultiLine = Ложь;
RegExp.Pattern = "Count [0-9]+";
Для к = 0 По ЧислоВхождений - 1 Цикл
Match = Matches.Item(к);
//Сообщить(Match.Value);
Стр = Число(СтрЗаменить(Match.Value, "Count ", ""));
Если Стр > ВозвращаемоеЗначение Тогда
ВозвращаемоеЗначение = Стр;
КонецЕсли;
КонецЦикла;
запуск: pdfinfo.exe file.pdf
запуск с сохранением результата в файл: cmd /c pdfinfo.exe file.pdf > 1.txt
Ну, а файл уже можно читать 1с-кой.
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство. Фредерик Брукс-младший