Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Program - servis komunikacija

[es] :: Pascal / Delphi / Kylix :: Program - servis komunikacija

[ Pregleda: 3642 | Odgovora: 4 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

sojic
Dalibor Sojic
Makedonija

Član broj: 7051
Poruke: 796
217.24.244.*

Sajt: right-sock.net


+1 Profil

icon Program - servis komunikacija13.09.2005. u 18:06 - pre 226 meseci
Kako sledeće?

Napraviču servis koji radi nešto (osluškuje mrežu, upisuje u bazu i šalje podatke na seriski port). Ovo treba da radi čim se uključi kompjuter.

Treba mi kontrolan program, koji će da "komunicira" sa servisom, i prikazuje šta se dešava.

U slučaju da korisnik isključi program (klijentski program), servis i dalje radi i šalje podatke seriskom portu.

Znači, mene zanima kako da servis i klijent komuniciraju.
routing protocols enable routers to route routed protocols!
 
Odgovor na temu

Srki_82
Srdjan Tot
Me @ My Home
Ljubljana

Član broj: 28226
Poruke: 1403
82.208.201.*

ICQ: 246436949


+10 Profil

icon Re: Program - servis komunikacija13.09.2005. u 18:35 - pre 226 meseci
Ja koristim TCP/IP protokol. Indy komponente su vrlo lake za koristenje i sto je najbolje, servis moze da bude na nekom racuaru, a ti preko neta, ko zna odakle, da podesavas taj servis
 
Odgovor na temu

sojic
Dalibor Sojic
Makedonija

Član broj: 7051
Poruke: 796
217.24.244.*

Sajt: right-sock.net


+1 Profil

icon Re: Program - servis komunikacija13.09.2005. u 18:50 - pre 226 meseci
Uf, Indy nikad nisam naučio. Ja koristim FPiette komponente.

Ali zanimalo me je kako da na istom računaru, dva programa komuniciraju (bez TCP).

Ali i ovo je odličan predlog.

Hvala na ideji.
routing protocols enable routers to route routed protocols!
 
Odgovor na temu

obucina

Član broj: 38191
Poruke: 723

Jabber: obucina


+7 Profil

icon Re: Program - servis komunikacija13.09.2005. u 19:56 - pre 226 meseci
File / New / Service

Citaj help.

Za komunikacije medju procesima trazi IPC na guglu.
 
Odgovor na temu

srdjandakic

Član broj: 11297
Poruke: 430
*.sbb.co.yu.



+14 Profil

icon Re: Program - servis komunikacija15.09.2005. u 17:45 - pre 226 meseci
Citat:
sojic
Znači, mene zanima kako da servis i klijent komuniciraju.


Jednostavno resenje ti je pomocu prozora (HWND) za komunikaciju:

Code:

//
// slanje strukture (poruke) event prozoru CommWindowHandle
//
var
  event: TMyEvent;
...
GlobalMemoryHandle := GlobalAlloc(GHND, SizeOf(event));
if GlobalMemoryHandle = 0 then
  raise Exception.Create('GlobalAlloc: Unable to allocate memory block');

try
  GlobalMemoryPtr := GlobalLock(GlobalMemoryHandle);
  try
    Move(event, GlobalMemoryPtr^, SizeOf(event));
  finally
    GlobalUnlock(GlobalMemoryHandle);
  end;
  PostMessage(CommWindowHandle, WM_IPC_EVENT, 0, GlobalMemoryHandle);
except
  GlobalFree(GlobalMemoryHandle);
end;

//
// obrada poruke
//
procedure TMyApp.WndProc(var Message: TMessage);
var
  GlobalMemoryHandle: HGLOBAL;
  pEvent: ^TMyEvent;
begin
  case Message.Msg of
  
    WM_IPC_EVENT:
    begin
      GlobalMemoryHandle := Message.LParam;      
      pEvent := pointer(GlobalLock(GlobalMemoryHandle));      
      try 
        // Do the event
        OnEvent(pEvent^);
      finally
        GlobalUnlock(GlobalMemoryHandle);
        GlobalFree(GlobalMemoryHandle);
      end;
    end;

  end;
end;


BTW...

API na kome radim sluzi za transport poruka preko TCP-ja izmedju dve aplikacije, koje mogu biti i na razlicitim platformama, npr. Palm <-> C#.NET, ili PocketPC <-> Delphi/Win32.

U tvom slucaju bi se u obe aplikacije (servis i eksterni program) dodao unit sa definicijom i handlovanjem poruka i kreirao MsgClient objekat koji se konektuje na standalone messaging server aplikaciju.

Trenutno postoji podrska samo za C++ / Windows / Windows CE, ali uskoro bi trebao da dobije i Delphi unite kao i podrsku za druge platforme.

API je u alpha fazi, ali radi :) Ako neko zeli da ucestvuje u testiranju, moze da downloaduje sa donjeg sajta.

http://www.fortmobile.com/products.html
 
Odgovor na temu

[es] :: Pascal / Delphi / Kylix :: Program - servis komunikacija

[ Pregleda: 3642 | Odgovora: 4 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.