Всю голову сломал - Хочу получить программно информацию из окна "О программе", реквизит "Наименование" - здесь отображается строка из окна запуска 1С, где обычно пользователи пишут название базы данных, компанию к которой она относится
Хочу получить программно информацию из окна "О программе", реквизит "Наименование" - здесь отображается строка из окна запуска 1С
Поскольку это наименование прописывается не в базе, а в файле ibases.v8i, то оттуда его и надо читать. Можно взять за точку отсчета код из https://forum.infostart.ru/forum9/topic78702/
Примерно так, вживую не проверял:
ИмяСпискаБаз = "C:\Users\USERNAME\AppData\Roaming\1C\1CEStart\ibases.v8i";
СтрокаСоединенияИБ = СтрокаСоединенияИнформационнойБазы();
ТекущееИмяБазы = "";
СписокБаз = Новый ТекстовыйДокумент();
СписокБаз.Прочитать(ИмяСпискаБаз);
ВсегоСтрок = СписокБаз.КоличествоСтрок();
Для НомерСтроки = 1 По ВсегоСтрок Цикл
ТекущаяСтрока = СписокБаз.ПолучитьСтроку(НомерСтроки);
Если Лев(ТекущаяСтрока,1) = "[" И Прав(ТекущаяСтрока,1) = "]" Тогда
ТекущееИмяБазы = Сред(ТекущаяСтрока,2,СтрДлина(ТекущаяСтрока) - 2);
ИначеЕсли Найти(ТекущаяСтрока, СтрокаСоединенияИБ) > 0 Тогда
Сообщить("Наименование: " + ТекущееИмяБазы, СтатусСообщения.Информация);
Прервать;
КонецЕсли;
КонецЦикла;
Хочу получить программно информацию из окна "О программе", реквизит "Наименование" - здесь отображается строка из окна запуска 1С
Поскольку это наименование прописывается не в базе, а в файле ibases.v8i, то оттуда его и надо читать. Можно взять за точку отсчета код из https://forum.infostart.ru/forum9/topic78702/
Примерно так, вживую не проверял:
ИмяСпискаБаз = "C:\Users\USERNAME\AppData\Roaming\1C\1CEStart\ibases.v8i";
СтрокаСоединенияИБ = СтрокаСоединенияИнформационнойБазы();
ТекущееИмяБазы = "";
СписокБаз = Новый ТекстовыйДокумент();
СписокБаз.Прочитать(ИмяСпискаБаз);
ВсегоСтрок = СписокБаз.КоличествоСтрок();
Для НомерСтроки = 1 По ВсегоСтрок Цикл
ТекущаяСтрока = СписокБаз.ПолучитьСтроку(НомерСтроки);
Если Лев(ТекущаяСтрока,1) = "[" И Прав(ТекущаяСтрока,1) = "]" Тогда
ТекущееИмяБазы = Сред(ТекущаяСтрока,2,СтрДлина(ТекущаяСтрока) - 2);
ИначеЕсли Найти(ТекущаяСтрока, СтрокаСоединенияИБ) > 0 Тогда
Сообщить("Наименование: " + ТекущееИмяБазы, СтатусСообщения.Информация);
Прервать;
КонецЕсли;
КонецЦикла;
(6) Попробую сейчас проверить. Но что то мне подсказывает, что раз в окне "О программе" эта информация уже есть, то думаю можно было бы проще как то добраться...Отпишусь минут через 15