Salut,
je rencontre un problème d'adaptation de type sur un portage d'API Win32 sous PowerShell (type .NET+ P/Invoke).
Par défaut sous PowerShell un nombre est considéré comme un entier signé (System.Int32).
Je viens d'installer le SDK 6.1 pour accéder aux déclarations présentes dans le fichier WinUser.h, mais je ne sais pas comment interpréter les différents types des valeurs déclarées.
Enfin plus précisement :
-quel est le type par défaut sur la directive define suivante ?
ICON_SMALL = 0 #define ICON_SMALL 0
-quel est le type par défaut sur celle-ci ?
GWL_WNDPROC = -4 #define GWL_WNDPROC (-4)
-quelle différence pourrait-il y avoir entre
1 2
|
#define SWP_NOSIZE 0x0001 |
et
- la déclaration suivante précise un long, est-ce à dire >32 bit ? Dans ce cas quel type utiliser sous .NET ?
#define MF_BYPOSITION 0x00000400L
Autre question, les valeurs de groupes tels que GWL_xxx ou WS_xxx peuvent-elles être utilisés, et couplés, indifférement selon les API ou sont-elles spécifiques à certaines API et donc aux types du paramètre les référençant ?
A savoir, si telle constante est déclarée comme un type entier signé, sera-t-elle toujours considérée comme tel même si plusieurs API utilisent cette constante ?
Merci
Partager