Список форумов www.integro.ru www.integro.ru
ЦСИ ИНТЕГРО
 
 FAQFAQ   ПоискПоиск   ПользователиПользователи   ГруппыГруппы   РегистрацияРегистрация 
 ПрофильПрофиль   Войти и проверить личные сообщенияВойти и проверить личные сообщения   ВходВход 

подсоединение из .NET к Ингео

 
Начать новую тему   Ответить на тему    Список форумов www.integro.ru -> Вопросы разработчиков
Предыдущая тема :: Следующая тема  
Автор Сообщение
andreichernov



Зарегистрирован: 14.02.2005
Сообщения: 209
Откуда: Самара

СообщениеДобавлено: Ср 16 Ноя 2005 15:48    Заголовок сообщения: подсоединение из .NET к Ингео Ответить с цитатой

Здравствуйте!
Никто не делал подсоединение к Ингео из .NET приложения (например на C#) ?
Чо-то там не хочет делать new, так как вроде нельзя "создать"
объект Ингео, можно только взять активный объект (GetActiveObject), а мы не очень хорошо знаем .NET и не можем найти, как это сделать.
С уважением, Андрей Чернов
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Азаматов Азамат Хадисович



Зарегистрирован: 17.02.2005
Сообщения: 100
Откуда: г. Учалы, Респ. Башкортостан

СообщениеДобавлено: Пн 21 Ноя 2005 14:10    Заголовок сообщения: Ответить с цитатой

В NET вроде бы все еще проще чем обычно. Но для упрощения стыковки хорошо бы чтобы Интегро выложило на сайт специальную сборку для стыковки с ней NET программ. Надо полагать она у них уже есть. Они же делают какие то большие комплексы на базе Ингео.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Отправить e-mail Посетить сайт автора
Володченко Станислав



Зарегистрирован: 01.12.2005
Сообщения: 18
Откуда: Питер

СообщениеДобавлено: Чт 01 Дек 2005 17:01    Заголовок сообщения: Ответить с цитатой

В кратце делатся так (С#)
новый проект в нем
реализация АХ контрола

using System;
using System.Reflection;
using System.Windows.Forms;
using Ingeo;
//обязательно должен быть уникальный ключ сборки иначе труба
[assembly: AssemblyTitle("IngeoApp")]
[assembly: AssemblyDescription("TestAssembly")]
[assembly: AssemblyKeyFile("c:\\ingeo.key")]
[assembly: AssemblyVersion("1.0.0.6")]
namespace ingeocom
{
//интерфейс
public interface IComClass
{
void Start(object initApp);
void Stop();
void About();
}
/// <summary>
/// Summary description for Class1.
/// </summary>
public class ComClass : IComClass
{
private frmDummy _frmDummy;
public ComClass()
{
//
// TODO: Add constructor logic here
//
//инициализация формы
//любая юзер-форма
_frmDummy = new frmDummy();
}
//старт и передача ссылки на объект
public void Start(object initApp)
{
if (initApp != null)
{
_frmDummy.SetPanelText("GIS init OKKKK!");
IngeoApp.ingeoApp = (IIngeoApplication)initApp;
}
_frmDummy.Show();
}
//глушим..............
public void Stop()
{
_frmDummy.Close();
}
public void About()
{
string textAbout = "Пример работы ГИС Ингео и NET v 1.0.0.5";
MessageBox.Show(textAbout,"Ingeo NET testing...");
}
}
}
дальше три главных момента
тк у НЕТа на прямую нет работы с СОМ-объектами
реализована заглушка-враппер для совместимости со старыми технологиями =))) (отдельный респект Микрософту)
то все СОМы работаю чр Interop - объекты (не знаю как по русски сказать типа оснастки чтоль) короче при вызове инпроц сервера, фреймворк вначале грузит mcorr.dll, которая отвечает за работу с Вашей ДЛЛ, mcorr видит тока те ДЛЛ сборки которых зарегистрированы в Глобальном Кэше Сборок (GAC)
шаги
1. при помощи sn.exe создаем файл ключей(в опциях проекта не забудьте указать путь к ключам)
2. компилим
3. регистрируем в ГАКе (gacutil.exe)
проверим появиласть ли сборка в ГАКе и заодно в реестре
так работало
какие возникли проблемы......
1. Почемуто в процессах при вызове светяться 2 ДЛЛ
2. Гис не хочет выгружать при вызове Стоп ДЛЛ
3. При отладке в VS (в первой версии) ГИС безболезнено не удвется отвязать от процесса, те deatach не работает
извините за краткость и скомканость руки не доходят до написани поноценной статьи, исправлюсь
если все ок
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Посетить сайт автора
Показать сообщения:   
Начать новую тему   Ответить на тему    Список форумов www.integro.ru -> Вопросы разработчиков Часовой пояс: GMT + 5
Страница 1 из 1

 
Перейти:  
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете добавлять приложения в этом форуме
Вы можете скачивать файлы в этом форуме


© phpBB Group
Русская поддержка phpBB