Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.05.06;
Скачать: CL | DM;

Вниз

Как использовать IGlobalInterfaceTable ?   Найти похожие ветки 

 
SamProf ©   (2007-03-09 11:57) [0]

Доброго, мастера!
Столкнулся с проблемой, что нельзя из разных потоков использовать оле объект созданный в другом потоке. Перерыв пол инета нашёлЮ что удобнее всего ипользовать некоторый IGlobalInterfaceTable.
Но в силу не образованности не могу понять как его юзать! Может поможете?

Т.е. У меня в главном потоке примерно такой код
var
o:olevariant;
...............
o := createoleobject(name_o);
//вот тут както надо его зарегить в GIT

ну а  в потоке его нужно както получить.....


 
S@shka ©   (2007-03-09 12:34) [1]

Это не поможет?

http://delphimaster.net/view/10-1129985864/


 
SamProf ©   (2007-03-09 12:57) [2]

Это я уже читал.... делаю вот так:

var
ccc1:IDispatch;
 C1: OleVariant;

// в главном:
 CoInitializeEx(nil,COINIT_APARTMENTTHREADED);
 ccc1 := createoleobject(c1name);
 c1:=ccc1;
 C1.initialize(c1.rmtrade, "/DD:\PROGRAM\DAKO\1с\", "");
 AllocStdGit();
 GitMarshal(idispatch,ccc1,cook);

// в потоке:
var
myccc1:IDispatch;
.......
 CoInitializeEx(nil,COINIT_APARTMENTTHREADED);
 GitUnmarshal(0,idispatch,myccc1);
тут усёрано  myccc1 = nil...... :-(((((


Что я не так делаю....



Страницы: 1 вся ветка

Текущий архив: 2007.05.06;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.02 c
1-1173285225
DevilDevil
2007-03-07 19:33
2007.05.06
компонент TScrollBox


2-1174651027
Tifon
2007-03-23 14:57
2007.05.06
Спектроанализатор. Как сделать?


15-1175809511
sv_sergik
2007-04-06 01:45
2007.05.06
Улучшеный IDE


3-1171459284
novill
2007-02-14 16:21
2007.05.06
Напомните, пожулайста, как в IB7 создать хранимую функцию


1-1170623927
Blacksus
2007-02-05 00:18
2007.05.06
ловушка и форма