Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.012 c
2-1176453469
Merry
2007-04-13 12:37
2007.05.06
Обновить данные таблицы из другой таблицы


15-1176200510
Megabyte
2007-04-10 14:21
2007.05.06
ДАО программирования


2-1176440052
Xmen
2007-04-13 08:54
2007.05.06
Что за ощибка?


2-1176890873
bagos
2007-04-18 14:07
2007.05.06
StringGrid,ValueListEditor


15-1176086431
Slider007
2007-04-09 06:40
2007.05.06
С днем рождения ! 9 апреля




   Наверх