:: Не фоксом единым
C# коннект к 1С
Аспид
Автор

Сообщений: 3475
Откуда: Москва
Дата регистрации: 01.04.2005
VS2015 C#
Не могу соедениться с сервером 1с.
С локальной файлоовой соеденяет
string user = "Админ";
string pas = "123";
string file = "E:\\1С\\050716";
dynamic result;
dynamic refer;
V83.COMConnector com1s = new V83.COMConnector();
com1s.PoolCapacity = 10;
com1s.PoolTimeout = 60;
com1s.MaxConnections = 2;
result = com1s.Connect("File='" + file + "';Usr='" + user + "';pwd='" + pas + "';");
refer = result.Справочники.Номенклатура.СоздатьЭлемент();
refer.Наименование = "Создано из C#";
refer.Записать();
Все работает.
Но когда пишу коннект к серверной
string ConV83 = "Srvr =\"Asterix-2013\";Ref=\"ABZ83\";" + "\"Usr=\"" + user + "\";pwd=\"" + pas + "\";";
Консоль для отладки, посмотреть строку коннекта
Console.WriteLine(ConV83);
Console.ReadKey();
dynamic result;
dynamic refer;
V83.COMConnector com1s = new V83.COMConnector();
com1s.PoolCapacity = 10;
com1s.PoolTimeout = 60;
com1s.MaxConnections = 2;
result = com1s.Connect(ConV83); Здесь ошибка вываливает
refer = result.Справочники.Номенклатура.СоздатьЭлемент();
refer.Наименование = "Создано из C#";
refer.Записать();

Ошибка
"Необработанное исключение типа "System.Runtime.InteropServices.COMException" в Union1C.exe
Дополнительные сведения: В результате вызова компонента COM возвращена ошибка в формате HRESULT E_FAIL."

Ну и в подробностях пустое, ни на что не наводит(
Что не так?
Из под фокса конекчусь лекго


------------------
Ratings: 0 negative/0 positive
Re: C# коннект к 1С
ssa

Сообщений: 12999
Откуда: Москва
Дата регистрации: 23.03.2005
Перемудрил со строкой коннекта. Что показывает
Console.WriteLine(ConV83);
?

------------------
Лень - это неосознанная мудрость.
Ratings: 0 negative/1 positive
Re: C# коннект к 1С
Аспид
Автор

Сообщений: 3475
Откуда: Москва
Дата регистрации: 01.04.2005
ssa
Перемудрил со строкой коннекта. Что показывает
Console.WriteLine(ConV83);
?
Спасибо Сергей!
Было вот так.
Srvr ="Asterix-2013";Ref="ABZ83";"Usr="Админ";pwd="123";
И ведь спецом вывел, что бы проверить, но когда начал тебе сюда ее переписывать, то увидел лишнюю кавычку.
Все работает)
Спасибо!!)))


------------------
Ratings: 0 negative/0 positive
Re: C# коннект к 1С
Аспид
Автор

Сообщений: 3475
Откуда: Москва
Дата регистрации: 01.04.2005
В догонку, может кто подскажет, как разорвать соединение?
Что то по простому не выходит(
Серьезно не копал


------------------
Ratings: 0 negative/0 positive
Re: C# коннект к 1С
pasha_usue

Сообщений: 3647
Откуда: Е-бург
Дата регистрации: 06.10.2006
Аспид
В догонку, может кто подскажет, как разорвать соединение?
Что то по простому не выходит(
Серьезно не копал
Сеанс убьется сам после смерти объекта. А вот обрубить соединение это уже гораздо сложнее. Дело в том, что сервер кэширует соединения на случай, если вы его вдруг восстановить захотите.

Вкратце: Надо перебрать все рабочие процессы. Авторизоваться в рабочем процессе с данными админа кластера. В любом рабочем процессе найти информационную базу, которая вам нужна. Авторизоваться в информационной базе под любым административным пользователем. Найти нужное соединение. Убить. (;Ж

PS. На кластер пароль редко кто-то ставит.
PPS. Да и нахрена бы его убивать?



Исправлено 1 раз(а). Последнее : pasha_usue, 14.07.16 14:18
Ratings: 0 negative/0 positive
Re: C# коннект к 1С
Аспид
Автор

Сообщений: 3475
Откуда: Москва
Дата регистрации: 01.04.2005
pasha_usue
PPS. Да и нахрена бы его убивать?

Описываю ситуацию.
Код выше. Это вся прога)))
Когда с ФС все ок.
Как только подключился к серваку, все проходит, записывается, но при выходе, уже на выходе из программы, вылетает ошибка
[attachment 24979 ]
Даже не пойму откуда(


------------------
Ratings: 0 negative/0 positive
Re: C# коннект к 1С
sphinx

Сообщений: 31166
Откуда: Каменск-Уральски
Дата регистрации: 22.11.2006
Аспид
Описываю ситуацию.

А какая версия .NET стоит?

А если убрать галочку Project -> Propertys -> Debug ?


------------------
"Veni, vidi, vici!"(с)




Исправлено 1 раз(а). Последнее : sphinx, 14.07.16 15:07
Ratings: 0 negative/0 positive
Re: C# коннект к 1С
Аспид
Автор

Сообщений: 3475
Откуда: Москва
Дата регистрации: 01.04.2005
VS2015
Net 4.5.2
Попробовал Release - то же самое.

Переписал (скопировал ) все в VS2012
Net 4.5
То же самое (((

Может кто то коннектился, работает?
Кодом поделится)))
Я как то в недоумении.


------------------
Ratings: 0 negative/0 positive
Re: C# коннект к 1С
pasha_usue

Сообщений: 3647
Откуда: Е-бург
Дата регистрации: 06.10.2006
Marshal.ReleaseComObject() советуют. Причем для всех созданных объектов.

refer, result, com1c.
Ratings: 0 negative/0 positive
Re: C# коннект к 1С
Аспид
Автор

Сообщений: 3475
Откуда: Москва
Дата регистрации: 01.04.2005
Спасибо Пашь.
Опять был невнимателен(
было
System.Runtime.InteropServices.Marshal.ReleaseComObject(refer);
System.Runtime.InteropServices.Marshal.ReleaseComObject(result);

Опять просмотрел com1s
System.Runtime.InteropServices.Marshal.ReleaseComObject(refer);
System.Runtime.InteropServices.Marshal.ReleaseComObject(result);
System.Runtime.InteropServices.Marshal.ReleaseComObject(com1s);

Вроде заработало.


------------------
Ratings: 0 negative/0 positive


Извините, только зарегистрированные пользователи могут оставлять сообщения в этом форуме.

On-line: 7 (Гостей: 7)

© 2000-2024 Fox Club 
Яндекс.Метрика