Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Сети";
Текущий архив: 2004.05.16;
Скачать: [xml.tar.bz2];

Вниз

Проблема нотификационных сообщений   Найти похожие ветки 

 
alexprozorov ©   (2004-03-23 13:03) [0]

здравствуйте всем!
Проблема такая - создан контроллер автоматизации и клиент к нему.
Когда они выполняются на одном компьютере нотификационные сообщения с сервера клиенту доходят, а когда на разных то нет.
Где можно порыть?


 
Digitman ©   (2004-03-23 13:27) [1]

что используется для удаленного доступа контроллера (клиента)автоматизации к серверу автоматизации ? DCOM ?


 
alexprozorov ©   (2004-03-23 13:32) [2]

DCOM


 
Digitman ©   (2004-03-23 13:42) [3]

настройки сервера автом-ции в DCOM-конфигураторе какие-то делал ?


 
alexprozorov ©   (2004-03-23 13:49) [4]

Делал!
разрешение на запуск и доступ к серверу есть!


 
Digitman ©   (2004-03-23 13:53) [5]

что реально происходит в коде сервера, пытающегося вызвать колбэк ? что показывает трассировка ?


 
alexprozorov ©   (2004-03-23 14:10) [6]

Трассировка показывает, что удаленный клиент не реализует нотификационный интерфейс, а локальный формирует.
Поэтому после проверки этого локальному клиенту посылается сообщение а удаленному нет!
Честно говоря я в этом только разбирают, не до конца понимаю все это!


 
alexprozorov ©   (2004-03-23 14:10) [7]

Это может зависеть от потоковой модели сервера?


 
Digitman ©   (2004-03-23 14:42) [8]


> Это может зависеть от потоковой модели сервера?


такой зависимости по идее быть не должно

покажи код контроллера (клиента)


 
alexprozorov ©   (2004-03-23 14:54) [9]

Вот еще вопрос - права какие-либо на доступ от сервера к клиенту нужны?

Если вкраце то вот так:

unit Main;

interface

uses
 Windows, SysUtils, Forms, Dialogs, Menus, ComObj,
 inifiles, ExtCtrls, StdCtrls, Controls,
 ComCtrls, ToolWin, Classes, Variants, ActnList,
 Grids, Graphics, EditForm, TimeCode, Efir_TLB, OleServer;

type
 TForm1 = class(TForm)
   ....
   EfirOTV1: TEfirOTV;
   ....
   procedure FormCreate(Sender: TObject);
   procedure EfirOTV1ChangeLogoEvent(Sender: TObject);
 private
   IMyServer: IEfirOTV;
   ....
   { Private declarations }
 public
   { Public declarations }
 end;

var
 Form1: TForm1;

implementation

var INI: TIniFile;
   FileName: String;
   RemoteMachineName: String;
{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);
begin
  ....
  EfirOTV1.RemoteMachineName:=RemoteMachineName;
  EfirOTV1.Connect;
  IMyServer:=EfirOTV1.DefaultInterface as IEfirOTV;
  ....
end;

procedure TForm1.EfirOTV1ChangeLogoEvent(Sender: TObject);
begin
//Реакция на событие  
....
end;

end.


 
Digitman ©   (2004-03-23 15:10) [10]

на удаленной машине, где располагается клиент, библ-ка типов зарегистрирована ?


 
alexprozorov ©   (2004-03-23 15:16) [11]

А как это делается?


 
Digitman ©   (2004-03-23 15:20) [12]

запусти утилиту regtlib.exe


 
alexprozorov ©   (2004-03-23 15:29) [13]

Не фига не изменилось


 
Digitman ©   (2004-03-23 15:38) [14]

ок.

трасиировка на кл.стороне процедуры

procedure TAutoObject.EventConnect(..)

что показывает ?


 
alexprozorov ©   (2004-03-23 15:55) [15]

EventsConnect не могу страссировать, ..TLB.pas  не трассируется


 
Digitman ©   (2004-03-23 16:01) [16]

это почему же ?


 
alexprozorov ©   (2004-03-23 16:43) [17]

Наврал, трассируется.
Там такие строки:

punk := GetServer;
ConnectEvents(punk);
Fintf:= punk as IEfirOTV;

на 1 punk присваивается значение, а на второй он становится равен nil

или я не там смотрю?


 
alexprozorov ©   (2004-03-23 17:30) [18]

Все получилось.
Оказывается компьютеры должны быть в одном домене или рабочей группе. Может быть мое заключение и не верно, но работает!



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

Форум: "Сети";
Текущий архив: 2004.05.16;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.48 MB
Время: 0.031 c
6-1080137901
Rust
2004-03-24 17:18
2004.05.16
ServerSocket & ClientSocket


4-1080640593
Kalmykov Sergei
2004-03-30 13:56
2004.05.16
Потоки


1-1083318602
cf
2004-04-30 13:50
2004.05.16
буфер обмена


9-1072642249
Igoryok
2003-12-28 23:10
2004.05.16
PolyBezier или как сделать кривую как в нормально графическом рет


14-1082553530
kaif
2004-04-21 17:18
2004.05.16
Хулиганство. Законность и моральные аспекты





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский