Имя: Пароль:
1C
1С v8
Создание внешних компонент с ИТС
,
0 GLazNik
 
01.08.17
09:18
Встала необходимость собрать простенькую внешнюю компоненту. Скачал с ИТС примеры. Собрал пример NativeAPI в VS C++ 2017. Все собралось и подключилось. Но вместо свойства "Включен" отображаются кракозябры. В VS2013 ситуация аналогичная.
Так понимаю библиотека собирается в UTF-8, а 1С с ней пытается общаться через win-1251. Как подружить 1С и свежесобранную библиотеку?
1 DmitrO
 
01.08.17
09:44
Наверно язык диалогов поправить надо в свойствах ресурса.
2 GLazNik
 
01.08.17
09:50
(1) Пересмотрел все свойства, до которых смог дотянуться. А каком ресурсе идет речь?
3 Cyberhawk
 
01.08.17
09:51
4 GLazNik
 
01.08.17
10:45
(3) Нету такого в VS2013(2017). Есть в свойствах проекта набор символов (юникод или многобайтная кодировка). Но его изменение ничего не дает.
Как же я ненавижу эти свистопляски с кодировками.
5 MM
 
01.08.17
10:51
(0) Начиная с 8.0 1С работает с компонентами через Юникод строки.
6 DmitrO
 
01.08.17
10:52
>>Но вместо свойства "Включен" отображаются кракозябры

Как может свойство отображаться?
Отображаться где?
7 GLazNik
 
01.08.17
10:57
(6) Смотрю в отладчике. Для объекта доступны два свойства
"Включен" и "ЕстьТаймер"
(5) Но тогда что за фигня у меня получается? Версия платформы 8.3.9.1818. Подключаю так:

ПодключитьВнешнююКомпоненту("E:\1С\vncomps\VNCOMPS\VNCOMP83\example\bin\AddInNative.dll","DemoVK5",ТипВнешнейКомпоненты.Native);
ДемоКомп = Новый("AddIn.DemoVK5.AddInNativeExtension");
[\1C]
8 GLazNik
 
01.08.17
10:59
+(7) Обычное приложение
9 v77
 
01.08.17
11:21
Перекодируй *.CPP в нужную кодировку. в UTF-8
10 GLazNik
 
01.08.17
11:34
(9) Пробовал. Не помогло.
11 v77
 
01.08.17
11:40
(10) чота не верится. ну раз пробовал...
12 GLazNik
 
01.08.17
11:44
(11) Еще раз сохранил. До этого сохранял в UTF-8 без сигнатур (часть файлов была в этой кодировке). Без результативно. Сейчас сохранил в UTF-8 с сигнатурами (хз в чем разница). И помогло.
Спасибо.