Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Visual C++/MFC/WTL > visual C++ и 1С


Автор: Diiana 29.3.2010, 20:52
Добрый вечер всем!Задали мне задачку такую,что я не знаю с какой стороны к ней подойти и с чего вообще начать:Написать программу которая читает данные с com порта и отображает на экране,и эти же данные при нажатии на кнопку отображаются в 1С. smile  smile 

Автор: Earnest 30.3.2010, 08:18
У тебя не одна задача, а три:
1) Получить данные с com-порта
2) Отобразить на экране
3) Подключиться к 1C и что-то от нее поиметь
Все 3 задачи решаются совершенно независимо, и в соответствующих разделах форума. К этому разделу относится только 2-я, если ты собираешься строить приложение на базе MFC.   

Автор: Diiana 30.3.2010, 10:22
как я понимаю нужно написать,ну допустим, ф-ю чтения с com порта (visual C++) при обращении к которой я получаю,ну допустим,вес с терминала и эта же ф-я должна работать,когда я её буду вызывать через 1С, при нажатии на кнопку я должна получить тот же вес .я не пойму одного как сделать так чтобы одно приложение отдавала значение при обращении к ней с другой программы.мне сказали,что нужно написать полный сервер OLE автоматизации,тока как это сделать используя visual C++ (visual studio 2008) smile 

Автор: Earnest 31.3.2010, 10:34
Скорее уж, клиент... Вряд ли 1С будет что-то там спрашивать у твоей программы - разве что у нее предусмотрены соответствующие интерфейсы. Но эти вопросы нужно решать в форуме, где программирование 1C обсуждается, вроде такой есть. А для начала тебе нужно просто познакомиться с COM-программированием. Не в смысле com-портов, а в смысле Component Object Model... И не связывайся с OLE - это первая и довольно неуклюжая попытка работы с COM. Лучше смотри в сторону технологии ActiveX. У современных IDE от MS есть визарды, где за пару нажатий можно сделать вполне приличный сервер, а уж о клиента - вообще ерунда.
Но ты сначала разберись в основах технологии и пойти что тебе все-таки нужно: передать данные из своей программы в 1С (как ты написала в первом посте) и отобразить там или все-таки со стороны 1C запросить данные. Это несколько разные вещи.

Автор: Diiana 31.3.2010, 13:14
программа должна быть реализована в виде сервера OLE автоматизации, который предоставляет свои свойства и методы внешним программам. Программы желающие использовать свойства и методы сервера, тоже должны поддерживать OLE автоматизацию, а также иметь встроенный язык программирования, для доступа к свойствам и методам сервера, именно к такому классу программ относится 1С.как написать такой сервер???? smile 

Автор: Earnest 31.3.2010, 19:41
Визард создания проекта MSVC предлагает, как один из вариантов, проект - сервер. Не помню, как он называется, ActiveX или COM, но суть одна. Но чтобы грамотно выбрать опции тебе нужно хорошо понимать технологию COM, OLE, ActiveX - это все об одном. В двух словах не расскажешь. Но литературы полно, изучай. И задавай конкретные вопросы.

Автор: jonie 31.3.2010, 23:05
мое мнение - забить на С++, использовать C# для указанной задачи.
http://www.gotdotnet.ru/forums/14/127057/
вот тут чет пишут,
также на gotdotnet.ru в разделе файлы были примеры работы с 1С из C#

без обид для "местных" форумчан, но каждому свой микроскоп для забивания гвоздей...

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)