Kingdom delphi

Hogyan írjunk szolgáltatások Delphi

Mentse el a kapott modulokat a lemezre. Én csak a szolgáltatás, mint egy main.pas, és a projekt - myservice.pas. Nevezze át a szolgáltatást myService. Ezután adjuk hozzá a projekthez ablakot. Ez lesz egy ablak, amelyben az állapotát a szerver és információk a programról. Mentse el a modul néven aboutform. Tehát indít a szolgáltatás is ebben az üzemmódban egy egyszerű program, valahogy meg kell különböztetni a két mód. Ehhez lehet, hogy egy globális változó a aboutform modult. Hívtam fromservice: logikai. Ha a szolgáltatás elindult, igaz, ha a program - hamis. Ez a szolgáltatás modul:

Mint látható, szinte üres. Már csak két rakodók elindítani és megállítani a szolgáltatást. Itt a kód ablak about:

Icon adhatunk csak a Windows 95 vagy Windows NT4 (mint tudjuk, ő volt az asztalon a Windows 95). Ezért először meg kell, hogy ellenőrizze a Windows verzió, és ha ez a fenti nt 3,51 felveheti. Megjelenít egy ikont hívja api héj - shell_notifyicon. Ehhez egyszerűen tele tnotifyicondata szerkezet és a megfelelő hívást. Mint látható, maga az ikon lehet kivenni a mintegy ablakot. Ez jó, mert akkor lehet, hogy egy 16x16 méretű ikont, hanem 32x32. Ez az ikon jobban néz ki a tálcán. ucallbackmessage boríték küldjük valahányszor előfordul néhány esemény az egérrel.

Itt vagyunk egyszerűen megkérdezi bőr eltávolítása a ikont a tálcán.

wmmidasicon módszert nyilvánították a felvezető wm_midasicon eseményeket. Egy ellenőrzés, amely esemény bekövetkezett. Ha duplán kattint az ikonra, hogy megjelenik a ablakra, ha a jobb gombbal, a pop-up menü. Ez a menü lehet helyezni közvetlenül a mintegy ablakot. Három pontot: szoros, szeparátor, konfiguráció, kb. Számára még visszatérünk később.

Amikor létrehoz egy Windows változat windows van jelölve, akkor a program futása, mint szolgáltatás, láthatatlan és a menü bezárásához szeparátor. Ez azért történt, szándékosan leállítani a szolgáltatást csak akkor lehet normál módban a applet, hogy ellenőrizzék a számítógépet. Továbbá egy ikon kerül.

A pusztítás az ablak az ikon eltűnik.

Mindenesetre, ha a kérelmet tolta, majd bezárja az ablakot nem zárja be a programot, de ha megnyomja a menü címe szoros e-, akkor a program le kell zárni. mert megmutatjuk formájában modális, akkor ám legyen, de jobb, ha hagyjuk ezt a kódot annak érdekében, hogy teljesen biztos.

Abban a formában van gomb segítségével hívást. mert kérelem szolgáltatás nincs a súgó fájlt metódusmeghívást, akkor kellett használni az API-t. Itt id_cont meghatározott segítséget fájl elem és myserver.hlp - a név a súgó fájlt.

A forma érdemes két védjegy és támogatásával www.myserver.ru jelentkezzen menni a fejlesztő weboldaláról.

Menüpont közel. Amikor lökés alkalmazását, a pusztítás a bezárul a program, mint ez a fő ablakban.

körülbelül menü - csak azt mutatja, a forma, azaz a is.

konfigurációs menüben. Itt az egyik megoldás a problémára. Gyakran használják a kisalkalmazások a Vezérlőpult kezelni a szolgáltatás beállításait. Ez elég ahhoz, hogy levelet cpl. De én nem akarom megismételni mindezt kód a szerveren. Mint ismeretes, cpl - ez egy közös dll, így semmi sem akadályozza meg minket, hogy exportálja a módszert, és töltse be dinamikusan ...

Végül a szerviz kódot a projekt:

Felhívjuk figyelmét, hogy a meghatározott felhasználások modul formában s, ami nem automatikusan a projektben. Majd meg kell futtatni a szerveren, mint egy alkalmazás.

Ellenőrizze a parancssor telepítésére vonatkozó utasításokat, vagy távolítsa el a szolgáltatást.

Az érvényesítés ellenőrzi, hogy az alkalmazás fut, mint szolgáltatás. Ez a kód egyszerűen átvesz scktsrvr.dpr modult. By the way, ha megnézi ebben a projektben, írhat szolgáltatások akár Delphi 2, 3.

Ha az alkalmazás szolgáltatásként fut, vagy ha azt szeretné, hogy regisztrálja, mint szolgáltatást, akkor mi vagyunk az úton, mint a projekt, akkor az alapértelmezett delphi. Az egyetlen dolog, ami jobb, hogy meghatározza, hogy milyen alkalmazást használunk: a svcmrg - egy olyan szolgáltatás, és abban a formában s - Ez egy egyszerű alkalmazás. Ha a dob megy, mint egy egyszerű alkalmazás, adja meg, hogy nem szükséges, hogy bemutassák a fő formája, nem képezik a fő (első létrehozásakor), hozzon létre egy szolgáltatási forma. Fontos, hogy a szolgáltatás - ez tdatamodule. És amikor létrejövõ TApplication, a szolgáltatás nem indul el. Ez jó - akkor egyszerűen egy megfelelő modul adat j

Már most lehet kezdeni, és poklikat a menüben, zárja be a nyilvántartásba, és fut, mint egy szolgáltatás - működik. Azonban a szolgáltatás üres és nem csinál semmit. Amit meg kell tennie - úgy dönt.
Végül, akkor regisztrálni a szolgáltatási myserver / install parancsot, és távolítsa év - myserver / uninstall.
A siker a fejlődés a szolgáltatások!

Kapcsolódó cikkek