Предыдущая тема :: Следующая тема |
Автор |
Сообщение |
Удовица Андрей
Зарегистрирован: 10.07.2007 Сообщения: 5 Откуда: г.Сочи МУ "Инвестиционно-иформационный центр"
|
Добавлено: Сб 05 Апр 2008 10:34 Заголовок сообщения: Приложение, взаимодействующее с запущенной копией Ингер |
|
|
Подскажите где найти пример
приложения Windows, взаимодействующего с запущенной
копией ИнГео.
Желательно конечно приложения написанного на Net Framework |
|
Вернуться к началу |
|
 |
Удовица Андрей
Зарегистрирован: 10.07.2007 Сообщения: 5 Откуда: г.Сочи МУ "Инвестиционно-иформационный центр"
|
Добавлено: Сб 05 Апр 2008 12:21 Заголовок сообщения: |
|
|
Вроде разобрался, но если вдруг у кого есть примеры буду очень признателен. |
|
Вернуться к началу |
|
 |
rvm
Зарегистрирован: 03.07.2008 Сообщения: 9
|
Добавлено: Пт 15 Авг 2008 17:25 Заголовок сообщения: |
|
|
Я на Делфи и спользую:
interface
Uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ActiveX, Ingeo_TLB, ComCtrls;
function GetActiveIngeoApp: IIngeoApplication;
procedure CreateMapObject(anApp: IIngeoApplication;
const aLayerID, aStyleID, aTableID: String; Xs, Ys, Cs: array of double;
bTp:byte);
implementation
uses FormDmf;
function GetActiveIngeoApp: IIngeoApplication;
var
anInterface: IUnknown;
begin
// function GetActiveObject defined in the ActiveX.pas unit
if (GetActiveObject(CLASS_IngeoApplication, nil, anInterface) = S_OK) then
Result := anInterface as IIngeoApplication
else
Result := nil
end;
- т.о. получая ссылку на ИнГео, а далее по задаче (этот фрагмент где-то у разработчиков системы есть).
Владимир. |
|
Вернуться к началу |
|
 |
Алексей В. Бастриков
Зарегистрирован: 02.06.2008 Сообщения: 118 Откуда: ООО "Инфопроект", г. Екатеринбург
|
Добавлено: Вс 17 Авг 2008 13:44 Заголовок сообщения: |
|
|
Можете использовать COM-библиотеку InMetaCR.
Вот на C# мой кодек выглядит так:
...
using InMetaCR;
using Ingeo;
using InScripting;
...
private IngeoApplication MyIngeo;
private void Init()
{
InMetaDataServiceClientClass InMeta = new InMetaDataServiceClientClass();
MyIngeo = InMeta.GetActiveIngeo() as IngeoApplication;
}
...
//совсем не обязательная функция
private void Done()
{
MyIngeo = null;
}
при этом в референсы достаточно добавить лишь InMetaCR |
|
Вернуться к началу |
|
 |
|