-
Уважаемые профессионалы, прошу помощи решение моей задачи ) На основе DCOM сделал клиента и сервер, на одной машине работает, но в сети нет, что надо сделать чтоб и в локальной сетке тоже работало ?
Или подскажите как организовать клиент сервер в локальной сетке для обмена киких либо данных и событий ?
-
проверить порты и вообще, что значит не работает... может винда не грузиццо???
-
Запуская клиента на удаленной машине пишет что "Класс не зарегестрирован" Сервер у меня на машине.
Может я что то не сделал ?
-
дык... а куда клиент ломиться? в сеть или на локальную машину?
скорее всего клиент сам у себя и ищет сервер ))) настройки клиента проверить
-
Понятно, а где эти настройки искать в клиенте ?
-
> 312kbps (07.11.06 12:50) [4] > Понятно, а где эти настройки искать в клиенте ?
стоп... а кто писал сервер-клиент приложение?
-
Server - ActiveX Library + Transactional Data Module Client - к проету подцепил Project1_TLB из сервера
unit Unit2;
interface
uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, MTSObj, Mtx, ComObj, Project1_TLB;
type TForm2 = class(TForm) Edit1: TEdit; Edit2: TEdit; Button1: TButton; Label1: TLabel; procedure FormCreate(Sender: TObject); procedure Button1Click(Sender: TObject); private { Private declarations } public { Public declarations } end;
var Form2: TForm2; MTST: IMTSTest; TransactionContextEx: ITransactionContextEx;
implementation //uses MTSObj, Mtx, ComObj, Project1_TLB; {$R *.dfm}
procedure TForm2.FormCreate(Sender: TObject); begin TransactionContextEx:=CreateTransactionContextEx; OleCheck(TransactionContextEx.CreateInstance(CLASS_MTSTest,IMTSTest,MTST)); end;
procedure TForm2.Button1Click(Sender: TObject); var n: integer; begin n:=MTST.AddMumbers(StrToInt(Edit1.Text),StrToInt(Edit2.Text)); Label1.Caption:=IntToStr(n); end;
end.
Могу исходники кинуть, если конечно надо !?
-
Client - к проету подцепил Project1_TLB из сервера
я так понимаю он локальный, ИМХО можно выкрутиться, "забульбенив"(с) наклиенте TSocketConnection
-
можно чутка по подробнее, а то я с этим первый раз работаю ) !?
-
-
-
-
Наверное, автор столкнулся с той же проблемой, что и я в свое время. Сделал как-то простенькую 3-хзвенку(изучал COM/DCOM). Соединение было через DCOMConnnection. Все нормально работает так(общий случай: клиент и сервер в разной подсети): комп1(сервер БД)-комп2(утилита для связи с сервером по TCP/IP(например, Client Network Utility),сервер приложений, тонкий клиент).
Хочу сделать так: комп1(сервер БД)-комп2(утилита,сервер приложений)-комп3(тонкий клиент), ну или комп1(сервер БД, утилита, сервер приложений)-комп2(тонкий клиент) Если сервер приложений норм. свяжется с сервером БД, то тонкий клиент не "видит" сервер приложений(без каких-либо доп. действий). Вот как наладить взяимосвязь между тонким клиентом и сервером приложений, находящихся в различных подсетях(по интернету)?
-
> как наладить взяимосвязь между тонким клиентом и сервером > приложений, находящихся в различных подсетях(по интернету)?
SocketConnection, WebConnection
-
Хм, а DCOMConnnection никак вообще? :( Жаль...
-
> [14] Megabyte © (20.11.06 10:33) > Хм, а DCOMConnnection никак вообще?
протокол RPC не дружит с фаерволами. Он разрабатывался для внутридоменной организации больше, поскольку использует встроенные механизмы безопасности виндов. Вынести его за пределы даже одной подсетки - весьма большой геморрой
-
Спасибо. Будем изучать другие XXXConnection. :)
|