Имя: Пароль:
1C
1С v8
С# в 1С через COM
,
0 fierylions
 
20.04.15
09:48
Подскажите как можно с C# подключится к 1С?

Какую именно библиотеку нужно в C# использовать(using)?
1 Господин ПЖ
 
20.04.15
09:48
это не библиотека, это пространство имен
2 Господин ПЖ
 
20.04.15
09:51
в сети примеров куча с текстами модулей типа с началом типа

using System;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.InteropServices;
3 Xapac
 
20.04.15
09:56
(0) разве не понятно?

using 1C;
4 fierylions
 
20.04.15
09:57
честно не нашел путного

Побывал уже using System.Runtime.InteropServices;
все ровно ругается.

Пишу например:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Linq;
using System.Runtime.InteropServices;

        private void button1_Click(object sender, EventArgs e)
        {

            string user = "Админ";

            string pas = "";

            string file = "C:\\1cv82\\Личные базы\\ДБ";

            dynamic result;

            dynamic refer;

            V82.COMConnector com1s = new V82.COMConnector();



            com1s.PoolCapacity = 10;

            com1s.PoolTimeout = 60;

            com1s.MaxConnections = 2;

            result = com1s.Connect("File='" + file + "';Usr='" + user + "';pwd='" + pas + "';");

            refer = result.Справочники.Номенклатура.СоздатьЭлемент();

            refer.Наименование = "Создано из C#";

            refer.Записать();

        }

Ругается на "V82" пишет пропущена директива using от сюда вывод пространство имен како то другое должно быть.
5 Господин ПЖ
 
20.04.15
10:00
>Ругается на "V82"

правильно. ибо хрень написана с точки зрения c#
6 Господин ПЖ
 
20.04.15
10:01
исходя из кода еще должно быть пространство имен V82. а его нет
7 Xapac
 
20.04.15
10:01
(6)
using V82;
8 fierylions
 
20.04.15
10:04
(5) код рабочий с автостарта но к сожалению автор не написал какое пространство имен он использовал.
9 fierylions
 
20.04.15
10:05
(7) так не будет работать.
10 Господин ПЖ
 
20.04.15
10:06
(9) потому что пол-проекта нету...
11 Господин ПЖ
 
20.04.15
10:07
(8) мля... почитай уже букварь по c# и статей нормальных про com + c# + 1C + позднее связывание
12 Jaap Vduul
 
20.04.15
10:08
(9)Надо или в reference подключить ссылку на comcntr.dll
Или использовать позднее связываие:
var comConnector = Type.GetTypeFromProgID("V82.COMConnector");
dynamic com1s = Activator.CreateInstance(v82ComConnector);
13 Господин ПЖ
 
20.04.15
10:09
(12) +1
14 Jaap Vduul
 
20.04.15
10:09
+(12)Т.е. вот так:
dynamic com1s = Activator.CreateInstance(comConnector);
15 fierylions
 
20.04.15
10:12
Спасибо.
16 Господин ПЖ
 
20.04.15
10:13
V82 и класс COMConnector скорее всего и взялось после подключения comcntr.dll

среда делает "обвязку" всю формируя доп. пространство имен и классы для работы
17 fierylions
 
20.04.15
10:15
Ну по ссылке делал вот от сюда: http://catalog.mista.ru/public/192374/
18 Xapac
 
20.04.15
10:16
(16)
Всё верно
https://yadi.sk/i/3YePjyXKg6xjE
19 Господин ПЖ
 
20.04.15
10:17
(17) см (16)

плохая статья. не полная
20 Xapac
 
20.04.15
10:20
(19)почему плохая там всё написано. откуда это V82 взять
даже со скринами
21 Serginio1
 
20.04.15
10:20
Если, что обратная Использование сборок .NET в 1С 7.x и 8.x
22 Господин ПЖ
 
20.04.15
10:24
(20) непонятно зачем это делается. и что будет если референс не подцепится. нет картинки с результатом - доп. файла с кодом в составе проекта и что будет если особо "талантливые" возьмут и тупо скопипастят код который есть в статье
23 Xapac
 
20.04.15
10:25
(22)непонятно правда.
он может его в блокноте будет выполнять?
24 fierylions
 
20.04.15
10:27
я c# только начинаю юзать по этому тяжко вообще что там понимать.

Может у кого то есть готовый пример подключения с C# в 1С и работы с базой?
25 Xapac
 
20.04.15
10:30
(24) в  есть (18)
26 Господин ПЖ
 
20.04.15
10:31
(24) конечно тяжело. потому что сначала надо что-то понимать, а потом уже юзать

это не 1с
27 Господин ПЖ
 
20.04.15
10:32
(23) всяко бывает... .net позволяет и так работать
28 Xapac
 
20.04.15
10:32
(26)он ща направится на форум музыкантов, там его пошлют с фразой 1с фуфло)
29 fierylions
 
20.04.15
10:32
(26) не спорю. Но руководство требует. По этому и обращаюсь к людям кто уже юзал и у кого есть пример.
30 Xapac
 
20.04.15
10:33
(29)если пример не понятнет я хз как помочь. стукин в асью/скайпу

скину пример
31 fierylions
 
20.04.15
10:36
(30) ну весь код можно модуля а не часть. я по аналогии сделаю. по тому скрину не видно что сверху делается.

Либо может есть готовый проект Visual studio с примером...
32 Господин ПЖ
 
20.04.15
10:44
33 fierylions
 
20.04.15
10:45
(32) Спасибо.
34 Xapac
 
20.04.15
10:53
https://yadi.sk/d/05mlY8BHg72mW

пример с таблицей запросом...
35 Serginio1
 
20.04.15
11:03