1. Procese Windows; comunicaţii prin pipe şi IPC 2
1. Procese Windows; comunicaţii prin pipe şi IPC 2
1. Procese Windows; comunicaţii prin pipe şi IPC 2
- TAGS
- procese
- pipe
- www.cs.ubbcluj.ro
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
<strong>Procese</strong> <strong>Windows</strong>; <strong>comunicaţii</strong> <strong>prin</strong> <strong>pipe</strong> <strong>şi</strong> <strong>IPC</strong> - 2 -<br />
<strong>1.</strong> <strong>Procese</strong> <strong>Windows</strong>; <strong>comunicaţii</strong> <strong>prin</strong> <strong>pipe</strong> <strong>şi</strong> <strong>IPC</strong><br />
<strong>1.</strong><strong>1.</strong> Particularităţi privind dezvoltarea in cpp sub <strong>Windows</strong><br />
<strong>1.</strong><strong>1.</strong><strong>1.</strong> Constante <strong>şi</strong> tipuri de date<br />
Limbajul nativ de dezvoltare a aplicaţiilor <strong>Windows</strong> este C++. Din această cauză, în cele ce<br />
urmează vom descrie <strong>prin</strong>cipiile programării folosind construcţii C <strong>şi</strong> C++. Headerul<br />
conţine <strong>prin</strong>cipalele construcţii de limbaj folosite în interfaţa <strong>Windows</strong>.<br />
Constante. In se definesc o serie de constante. Numele acestora este<br />
compus din două părţi: o primă parte indică grupul din care face parte constanta, apoi<br />
caracterul “_” <strong>şi</strong> în final numele specific, de regulă suficient de lung încât să sugereze ce<br />
reprezintă. Iată câteva nume de grupe:<br />
CS stilul clasei de ferestre;<br />
CW crearea ferestrei;<br />
IDC identificator de cursor;<br />
IDI identificator de icon;<br />
DT atribut de afişare texte;<br />
WS stilul ferestrei;<br />
WM mesaj asociat unei ferestre<br />
De exemplu, pentru fixarea stilului unei clase se pot lega <strong>prin</strong> operatorul C „|‟ (sau)<br />
constantele de mai jos (care nu sunt singurele, mai pot fi <strong>şi</strong> altele):<br />
CS_DBLCLIKS - mesajele se transmit ferestrei <strong>prin</strong> dublu click;<br />
CS_HREDRAW sau CS_VREDRAW - provoacă redesenarea ferestrei după o<br />
redimensionare orizontală / verticală.<br />
Tipuri de date. <strong>Windows</strong> foloseşte o serie de tipuri de date noi, <strong>prin</strong> care s-a urmărit<br />
creşterea portabilităţii aplicaţiilor în cazul unor noi arhitecturi de calculatoare. Astfel, avem<br />
tipurile BOOL, BYTE, DWORD (32 biţi), FARPROC (pointer spre funcţie), LPSTR (pointer<br />
către string), LPMSG (pointer către o structură MSG) etc.<br />
Pentru desemnarea obiectelor sunt definite nişte tipuri de date speciale: descriptor sau<br />
handle. Acestea sunt întregi pe 16 biţi <strong>prin</strong> intermediul cărora se pot referi obiecte. Tipurile<br />
de handle folosite sunt:<br />
HANDLE indicator general;<br />
HBRUSH indicator spre obiect “pensulă”;<br />
HCURSOR indicator spre resursă cursor;<br />
HICON indicator spre icon;<br />
HMENU indicator spre o resursă meniu;<br />
HWND indicator spre o fereastră.<br />
Nume de variabile. Atribuirea de nume pentru variabile se face respectându-se anumite<br />
convenţii, provenite din experienţa programatorilor. Este vorba de notaţia ungară de<br />
denumire a variabilelor. Ele nu sunt restricţii impuse de sistem, dar este de preferat să fie<br />
respectate. De regulă numele atribuite sunt lungi, încep cu literă mică, iar în cadrul numelor