|
1599 | 1599 |
|
1600 | 1600 | КонецФункции
|
1601 | 1601 |
|
| 1602 | +// Функция - Возвращает путь к каталогу с конфигурационными файлами 1С |
| 1603 | +// |
| 1604 | +// Параметры: |
| 1605 | +// ПутьКПлатформе1С - Строка - Полный путь к платформе 1С, |
| 1606 | +// например, C:\Program Files\1cv8\8.3.17.1386\bin\1cv8.exe |
| 1607 | +// ПутьКОбщимНастройкам - Булево - Если требуется получить путь к каталогу с общими настройками - Истина. |
| 1608 | +// Если путь к каталогу определенной версии - Ложь, по умолчанию - Истина. |
| 1609 | +// |
| 1610 | +// Возвращаемое значение: |
| 1611 | +// Строка - Полный пути к каталогу содержащему конфигурационные файлы платформы, например, C:\Program Files\1cv8\conf |
| 1612 | +// |
| 1613 | +Функция КаталогКонфигурационныхФайлов1С(Знач ПутьКПлатформе1С = "", Знач ПутьКОбщимНастройкам = Истина) Экспорт |
| 1614 | + |
| 1615 | + Лог.Отладка("КаталогКонфигурационныхФайлов1С: Путь платформы 1С <"+ ПутьКПлатформе1С + ">"); |
| 1616 | + Если ПутьКПлатформе1С = "" Тогда |
| 1617 | + ПутьКПлатформе1С = ПутьКПлатформе1С(); |
| 1618 | + Лог.Отладка("КаталогКонфигурационныхФайлов1С: вычислили Путь платформы 1С <"+ ПутьКПлатформе1С + ">"); |
| 1619 | + КонецЕсли; |
| 1620 | + |
| 1621 | + КаталогНаДиске = Новый Файл(ПутьКПлатформе1С); |
| 1622 | + Если Не КаталогНаДиске.Существует() Тогда |
| 1623 | + ВызватьИсключение "Не существует установленной платформы 1С по пути: " + ПутьКПлатформе1С; |
| 1624 | + КонецЕсли; |
| 1625 | + |
| 1626 | + ВерсияПлатформы = ""; |
| 1627 | + ШаблонВерсии = Новый РегулярноеВыражение("8(\.\d+){3}"); |
| 1628 | + ВсеСовпадения = ШаблонВерсии.НайтиСовпадения(ПутьКПлатформе1С); |
| 1629 | + Если ВсеСовпадения.Количество() <> 0 Тогда |
| 1630 | + ВерсияПлатформы = ВсеСовпадения[ВсеСовпадения.Количество()-1].Значение; |
| 1631 | + КонецЕсли; |
| 1632 | + |
| 1633 | + ВидПути = ?(ПутьКОбщимНастройкам, "(Общий)", "(Для текущей версии)"); |
| 1634 | + Если ПутьКОбщимНастройкам Тогда |
| 1635 | + КаталогКонфигурационныхФайлов1С = СтрЗаменить(ПутьКПлатформе1С, "\" + ВерсияПлатформы + "\bin\1cv8.exe", "\conf"); |
| 1636 | + Иначе |
| 1637 | + КаталогКонфигурационныхФайлов1С = СтрЗаменить(ПутьКПлатформе1С, "\1cv8.exe", "\conf"); |
| 1638 | + КонецЕсли; |
| 1639 | + Лог.Отладка("КаталогКонфигурационныхФайлов1С: получили путь конфигурационных файлов 1С " + ВидПути + " <" + КаталогКонфигурационныхФайлов1С + ">"); |
| 1640 | + |
| 1641 | + Возврат КаталогКонфигурационныхФайлов1С; |
| 1642 | + |
| 1643 | +КонецФункции |
| 1644 | + |
1602 | 1645 | // Установка файла для вывода служебных сообщений. Если задан параметр ОчищатьФайл=Ложь, файл не очищается.
|
1603 | 1646 | //
|
1604 | 1647 | // Параметры:
|
|
2145 | 2188 | мКонтекстКоманды.Вставить("КодЯзыка", "");
|
2146 | 2189 | мКонтекстКоманды.Вставить("КодЯзыкаСеанса", "");
|
2147 | 2190 |
|
2148 |
| - |
2149 |
| - ПутьКПлатформе1С(ПолучитьПутьКВерсииПлатформы("8.3", РазрядностьПлатформы.x64x86)); |
| 2191 | + Лог.Отладка("Ищу платформу " + ВерсияПлатформы); |
| 2192 | + ПутьКПлатформе1С(ПолучитьПутьКВерсииПлатформы(ВерсияПлатформы, РазрядностьПлатформы.x64x86)); |
| 2193 | + Если Не ПустаяСтрока(мПутьКПлатформе1С) Тогда |
| 2194 | + Лог.Отладка("Использую платформу " + мПутьКПлатформе1С); |
| 2195 | + Иначе |
| 2196 | + Лог.Ошибка("Не найдена платформа " + ВерсияПлатформы); |
| 2197 | + КонецЕсли; |
2150 | 2198 |
|
2151 | 2199 | мОчищатьФайлИнформации = Истина;
|
2152 | 2200 | мФайлИнформацииВнешний = Ложь;
|
|
0 commit comments