cs_andrebernard
Messages postés404Date d'inscriptionlundi 9 juin 2003StatutMembreDernière intervention 4 septembre 2013
-
13 oct. 2008 à 17:20
cs_andrebernard
Messages postés404Date d'inscriptionlundi 9 juin 2003StatutMembreDernière intervention 4 septembre 2013
-
13 oct. 2008 à 18:17
Bonjour à tous
Voila, je transmet une valeur - 1
, à une DLL non active X.
Pour cela, j'ai declaré ces variables en integer.
Hors, je viens de m'appercevoir que dans ma DLL cette valeur s'est transformée en 65526.
Quelqu'un sait il pourquoi ???
Public Declare Function PanneauOuvre Lib "MaDll.dll" Alias "_PanneauOuvre" _
(ByVal Titre As String, ByVal CouleurTexte As Long, _
ByVal CouleurFond As Long, ByVal Texte As String, _
ByVal TailleCaracteres As String, ByVal XInfo As Integer, _
ByVal YInfo As Integer, ByVal PositionTexte As String) As Long
cs_casy
Messages postés7741Date d'inscriptionmercredi 1 septembre 2004StatutMembreDernière intervention24 septembre 201440 13 oct. 2008 à 17:32
"...s'est transformée en 65526..."
Çà serait pas plutôt 65535 ?????
C'est parce que ta dll ne s'attend pas à avoir de nombres négatifs sur ce paramètre, elle le lit donc comme un nombre non signé.
-1 en nombre signé est égal à 65535 en nombre non signé.
cs_casy
Messages postés7741Date d'inscriptionmercredi 1 septembre 2004StatutMembreDernière intervention24 septembre 201440 13 oct. 2008 à 17:51
En modifiant la dll peut-etre
Ceci dit, as-tu besoin de lui passer des valeurs négatives. Ces paramètres semblent etre des coordonnées à l'écran, en général c'est positif ce genre de chose.
cs_andrebernard
Messages postés404Date d'inscriptionlundi 9 juin 2003StatutMembreDernière intervention 4 septembre 20131 13 oct. 2008 à 17:56
Oui tu as raison, mais je voulais lui dire que si je met -1 et bah il a qu'a centrer la fenetre.
Je ne sais pas quel chiffre mettre pour qu'il detecte que ce n'est pas des coordonnées, mais une commande de centralisation.
Je pourrait mettre un grand chiffre au dessus de la capacité de l'ecran, je ne peut mettre 0 car ce sont aussi les coordonnées du debut de l'ecran, ou alors je vais faire plus simple les passer en string.
C'est pas pro, mais ça va marcher.
C'est quand meme dingue qu'on ne puisse pas passer de chiffre negatifs.....