Crearea unui serviciu în lazarus - blog lazarus-programmer

Crearea unui serviciu în lazarus - blog lazarus-programmer
Servicii pe Windows sau așa cum sunt ele numite în sistemele * nix Demonii sunt concepuți pentru a efectua o serie de sarcini specifice fără intervenția utilizatorului, cum ar fi serverul FTP, WWW sau MySQL. Datorită lui Lazăr, putem crea astfel de demoni utilizând pachetul lazdaemon.







Pentru a începe dezvoltarea serviciului \ daemon, instalați pachetul lazdaemon. care implicit este o parte a lui Lazăr. Puteți să o instalați fie prin intermediul meniului "Pachet / Instalare și eliminare pachete", fie executând fișierul lpk din folder: lazarus / components / daemon / lazdaemon.lpk

Așa că, ca de obicei, să începem cu stabilirea sarcinii: Pentru a nu crea un serviciu simplu, în care firul va fi lansat, și introduceți un text în fișier până când se oprește. Acest serviciu ar trebui să înceapă automat la pornirea sistemului, acesta ar trebui să fie numit devlaz.

Să începem. După instalarea pachetelor lazdaemon la crearea unei noi aplicații, la sfârșit se adaugă 3 linii. Vom fi interesați de aplicația Demon (serviciu)

Crearea unui serviciu în lazarus - blog lazarus-programmer

Atunci când creați un nou proiect, vor fi deschise automat două forme non-vizuale - clasa TDaemon și clasa TDaemonMapper.

TDaemon este direct o copie a serviciului. Acest obiect este implementat de serviciul în sine (îl vedem în Windows în "Computer Management / Services"). Ce trebuie să faceți înainte de instalarea / eliminarea serviciului,

TDaemonMapper - Această componentă efectuează înregistrarea serviciului în sistem. Aici putem scrie codul care va fi executat după instalarea daemonului, ștergerea acestuia și pornirea acestuia.

În proprietățile lui DaemonMapper1 există un parametru DaemonDefs, îl selectați și faceți clic pe adăugați:

Crearea unui serviciu în lazarus - blog lazarus-programmer






Prin adăugarea unui nou fir de daemon și selectarea lui, ar trebui să vedem proprietățile lui:

Crearea unui serviciu în lazarus - blog lazarus-programmer

DaemonClassName în mod prestabilit este TDaemon1

Descriere Această descriere a serviciului nostru

DisplayName Numele serviciului afișat

Aceste proprietăți sunt suficiente pentru a rula serviciul nostru.

Acum, să scriem codul. Selectarea DaemonUnit1 va adăuga fluxul nostru la codul sursă și va descrie fișierul în care va fi scris fișierul:

Acum ne compilam proiectul și execută executabilul cu opțiunea -i pentru ao instala în sistem. Din păcate, începerea automată după aceea, nu am putut configura, dacă cineva a reușit să fie solicitat să o adauge la articol, deci începem manual serviciile din modulul snap-in al serviciului mmc:

Crearea unui serviciu în lazarus - blog lazarus-programmer

Așteptăm aproximativ 10 secunde și opriți-o de aici. Ca rezultat, intrările din fișierul D: \ log.txt ar trebui să indice activitatea fluxului.

Pentru a elimina un serviciu din sistem, trebuie să specificați comutatorul -u

Calea spre serviciu este de dorit fără simbolurile rusești.

Extras. informații pe care le puteți citi pe Wiki

Bine ai venit!
Ați putea descrie procesul de transmitere a datelor dintr-un formular realizat în Lazarus în șablonul de document de birou MS. Ie există un șablon, de exemplu un contract, alcătuiți datele într-un formular (numărul contractelor, data etc.) și aceste date sunt inserate în locurile potrivite din document.
Sincer, Oleg

Bună ziua Oleg. Ar trebui să acordați atenție componentei FPS spreadsheet. încărcați șablonul și utilizați funcția de înlocuire a textului.

Este necesar să adăugați Utf8ToSys și nu va funcționa cu chirilicul
WordApp.Selection.Find.Text: = WideString (Utf8ToSys ("Text"));
WordApp.Selection.Text: = WideString (Utf8ToSys ("Bună ziua"));

utilizări
comobj;
procedura TForm1.Button1Click (expeditor: TObject);
var
WordApp: OleVariant;
începe
WordApp: = CreateOleObject ("Word.Application");

WordApp.Documents.Open ('d: \ test.doc'); // Documentul trebuie deja creat


WordApp.Selection.Find.Forward: = Adevărat;
WordApp.Selection.Find.Text: = WideString ("text");
dacă WordApp.Selection.Find.Execute atunci
WordApp.Selection.Text: = WideString ("Hello");
WordApp.ActiveDocument.Save;
se încheie;

Alo Și puteți să-mi spuneți cum să faceți asta. astfel încât o aplicație creată în lazarus să poată utiliza un anumit timp și apoi a fost necesar să introduceți o cheie de licență sau o altă opțiune, astfel încât să puteți limita timpul de utilizare a programului. Că puteți descărca versiunea de probă a aplicației și apoi dacă doriți să cumpărați o licență. cheie sau altele







Articole similare

Trimiteți-le prietenilor: