Оглавление


1. Найти библиотеку comcntr.dll
2. Зарегистрировать библиотеку comcntr.dll
3. Добавить ссылку на библиотеку 1CV83 COM Connector
4. Добавить директиву using V83;
5. Написать метод для подключения к 1С
6. Прописать строку подключения к 1С
7. Добавить пользователя в 1С
8. Открыть порты
9. Предпочтительна 32-разрядная версия	

1. Найти библиотеку comcntr.dll

При установке 1С эта библиотека попадает в папку C:\Program Files\1cv8\8.3.15.1489\bin


2. Зарегистрировать библиотеку comcntr.dll

Для этого надо запустить cmd под админской учеткой, перейти в папку C:\Program Files\1cv8\8.3.15.1489\bin и выполнить команду regsvr32 comcntr.dll

C:\Program Files\1cv8\8.3.15.1489\bin>regsvr32 -u comcntr.dll


3. Добавить ссылку на библиотеку 1CV83 COM Connector Type Library


4. Добавить директиву using V83;

Класс COMConnector объявлен в пространстве имен V83, поэтому в верхней части файла с кодом на C# пишем using V83;
На сегодня V83 это последняя версия и идет соответственно в поставке с 1С.8.3


5. Написать метод для подключения к 1С

Например такой, который можно вызывать асинхронно

static void Connect()
{
	if (IsConnected) return;
	try
	{
		con = new COMConnector();
		база1С = con.Connect(ConnectionString);
		IsConnected = true;
	}
	catch(Exception ex)
	{
		OnConnect?.Invoke("Ошибка соединения с 1С.");
               	LastError = ex.Message;
		IsConnected = false;
		return;
	}
	OnConnect?.Invoke("Соединение с сервером 1С установлено.");
}

6. Прописать строку подключения к 1С

Правильная строка подключения к серверной версии 1С может быть, например, такой

ConnectionString = "srvr='PROGER'; ref='Accounting'; usr='Proger'; pwd='12345'"

7. Добавить пользователя в 1С

Что бы строка подключения из п.6 работала, надо, через Конфигуратор 1С, создать пользователя Proger и дать ему права Администратор системы и Полные права.


8. Открыть порты

Для подключения к серверу 1С с другого сервера надо открыть доступ по портам 1541 и 1560. Иногда возникает ситуация, когда этих портов недостаточно, надо открыть еще диапазон 1560-1591.


9. Предпочтительна 32-разрядная версия

В свойствах проекта на C# надо убрать галочку – «Предпочтительна 32- разрядная версия».
Без этого происходит ошибка при подключении.


Что нужно для работы с данными 1С из C#?
Tagged on:     

Leave a Reply

Your email address will not be published. Required fields are marked *