Code :
- RECT *lpRect;
- if(GetWindowRect(hwnd, lpRect))
- {
- *largeur=(*lpRect).right-(*lpRect).left;
- *hauteur=(*lpRect).bottom-(*lpRect).top;
- }
|
Il faut bien lire la documentation, GetWindowRect n'alloue pas une type RECT, il faut lui passer l'adresse d'une variable existante. Car là, lpRect pointe sur n'importe quoi...
De plus, largeur et hauteur ne sont pas definies dans cette portion de code. Egalement, le code est correct si ce sont des pointeurs sur des entiers (initialises)...
Donc comme ca, ca devrait mieux fonctionner :
Code :
- RECT Rect;
- if(GetWindowRect(hwnd, &Rect))
- {
- largeur=Rect.right-Rect.left;
- hauteur=Rect.bottom-Rect.top;
- }
|
EDIT: Quand ca fonctionne c'est que lpRect pointe (aléatoirement) sur une zone memoire ou tu as un acces en ecriture. L'inverse lève une exception...
Message édité par Poireau le 05-03-2003 à 22:47:44