Имя: Пароль:
1C
 
Хранение COM объекта между вызовами
0 milan
 
17.11.09
15:23
Использую COM объект в функции на стороне сервера, чет не соображу как сохранить его между вызовами. Можно как-нибудь извратиться ???
1 johnbay
 
17.11.09
15:32
Пробовал в бете, не вышло, врятли что то в релизе изменилось.
2 johnbay
 
17.11.09
15:35
(1) + реализовал свою задачу вызовом на сервере регламентного задания с какой-то периодичностью.
3 H A D G E H O G s
 
17.11.09
15:35
(0) Сохрани его в ROT!
4 H A D G E H O G s
 
17.11.09
15:39
5 H A D G E H O G s
 
17.11.09
15:40
HRESULT RegisterActiveObject (
   IUnknown FAR*  punk,    
   REFCLSID  rclsid,    
   DWORD  dwFlags,    
   unsigned long FAR*  pdwRegister    
  );

В первом параметре передается указатель на интерфейс IUnknown регистрируемого объекта. Во втором параметре передается уникальный идентификатор класса объекта (CLSID), что необходимо для поиска информации об объекте по реестру. Следующий параметр dwFlags управляет блокировкой объекта. Если этот параметр равен ACTIVEOBJECT_STRONG, то в процессе регистрации у объекта увеличивается счетчик ссылок и даже после отключения от объекта всех программ-клиентов объект из памяти не выгружается до тех пор, пока не будет вызвана функция RevokeActiveObject().
6 milan
 
17.11.09
15:53
(4)(5) Интересненько...
7 H A D G E H O G s
 
18.11.09
16:55
Фигня все, кроме пчел.
Храним COM объект во временном хранилище.
8 H A D G E H O G s
 
18.11.09
16:56
ЭтаФорма.АдресКомОбъекта=ПоместитьВоВременноеХранилище(КомОбъект,ЭтаФорма.УникальныйИдентификатор);

КомОбъект=ПолучитьИзВременногоХранилища(ЭтаФорма.АдресКомОбъекта);
9 johnbay
 
18.11.09
17:16
(8) Эта хрень будет жить дольше формы "ЭтаФорма"?
Или после закрытия ее объекту хана?
Я думаю врятли...
10 H A D G E H O G s
 
18.11.09
17:19
(9) После закрытия - все, Гитлер Капут
11 H A D G E H O G s
 
18.11.09
18:09
(9) Вот, можно потестить здесь.
12 milan
 
16.12.09
13:43
Сопсно все украдено до нас: http://infostart.ru/public/62649/

Цитирую автора:

Платформа 8.2 простым штатным способом позволяет реализовывать глобальные переменые на сервере. Достигается это использованием модулей с признаком "Повторное использование возвращаемых значений" установленным в значение "На время сеанса"

ком объект тоже кешируется.
13 kiruha
 
16.12.09
13:51
http://infostart.ru/public/62410/
Глобальные переменные в контексте сервера 8.2
Можно ли в 8.2 на сервере хранить ссылку на объект внешней компоненты?
14 milan
 
16.12.09
14:09
(13) что-то я не рскнул попробовать сам сохранить в параметре сеанса, а оно работает оказывается ;)