# Environnements de dveloppement > Autres EDI > Powerbuilder >  [PowerBuilder 10] API Function SetWindowPlacement

## maestro

Bonjour,

j'utilise sous Powerbuilder l'API 32 SetWindowPlacement. La signature de la fonction est la suivante:



```
Function long SetWindowPlacement &#40;Long hwnd, st_windowplacement lpwndpl&#41; LIBRARY "user32.dll"
```

st_windowplacement est une structure. Je dois savoir la longueur d'une structure. Le problme est que je n'arrive pas  bien calculer la longueur de la structure. 

la structure est la suivante



```

```

Normalement a devrait tre 24 Bytes mais cela ne marche pas.
La fonction API dit que si la longueur n'est pas exacte cela ne fonctionnera pas.

Peut-tre des ides???

----------


## hegros

Ca dpend du langage que tu utilises mais en C pour calculer la taille d'une structure tu ferais :



```
sizeof &#40;windowplacement&#41;
```

Quel langage utilises-tu ? Il doit forcment exister dans ce langage une fonction ou instruction du langage qui permet de renvoyer la taille d'un type.

----------


## maestro

J'utilise Powerbuilder 10. Le problme est que dans Powerbuilder n'existe pas de fonction qui donne la longueur d'une structure, hlas non. Normalement il faut compter les bytes et tout ca. J'ai compt et j'y arrive  24 Bytes (6 * 4 Bytes) mais  ce qu'il parait c'est pas cela car la fonction SetWindowPlacement ne fonctionne pas avec 24 alors c pour cela que je ne sais pas comment compt.

----------


## hegros

Si cela peut t'aider chez moi sizeof( WINDOWPLACEMENT ) me renvoi 44.

----------


## patrice.domange

Va voir dans la doc PB - Application Technics, normalement on y explique comment faire pour convertir convenable des type de donnes C en PB.
Dans ton cas, tu as besoin de crer une structure PB quivalente, dfinir le la signature de l'external function (avec les bon types PB et la structure PB par REF), puis de l'appele.

Tu peux aussi allez-voir sur ces liens http://www.pbdr.com/pbtips/ap/cppdtcnv.htm
http://www.pbdr.com/pbtips/ap/str2dll.htm

 :8-):

----------

