Page 1 sur 1
Etrangeté avec Prototype (doc)
Publié : dim. 31/juil./2016 10:50
par Ar-S
Avec l'exemple de la doc j'ai une messagebox qui s'ouvre mais qui affiche H en titre et W en texte au lieu de Hello World
ça me le fait en 5.50 et 5.43
Code : Tout sélectionner
Prototype.i ProtoMessageBox(Fenetre.i, Corps$, Titre$, Options.i = 0)
If OpenLibrary(0, "User32.dll")
; 'MsgBox' est une variable de type 'ProtoMessageBox'
;
MsgBox.ProtoMessageBox = GetFunction(0, "MessageBoxA")
MsgBox(0, "Hello", "World") ; Les options peuvent être omises
EndIf
Et vous ?
Re: Etrangeté avec Prototype (doc)
Publié : dim. 31/juil./2016 10:54
par falsam
Désactive le support unicode si cette option est disponible dans ta version.
Re: Etrangeté avec Prototype (doc)
Publié : dim. 31/juil./2016 11:08
par Ar-S
En effet ça marche sur la 5.43.
Et comment on résout la chose en 5.50 ?
Re: Etrangeté avec Prototype (doc)
Publié : dim. 31/juil./2016 11:15
par GallyHC
Bonjour,
Comme cela :
Code : Tout sélectionner
Prototype.i ProtoMessageBox(Fenetre.i, Corps.p-ascii, Titre.p-ascii, Options.i = 0)
If OpenLibrary(0, "User32.dll")
; 'MsgBox' est une variable de type 'ProtoMessageBox'
;
MsgBox.ProtoMessageBox = GetFunction(0, "MessageBoxA")
MsgBox(0, "Hello", "World") ; Les options peuvent être omises
EndIf
Cordialement,
GallyHC
Re: Etrangeté avec Prototype (doc)
Publié : dim. 31/juil./2016 11:21
par Ar-S
Merci Gallyhc, ça roule

Re: Etrangeté avec Prototype (doc)
Publié : dim. 31/juil./2016 11:34
par kernadec
bonjour Ars
peut être mettre la variable prototype en mode global
comme j'ai été obligé de le faire dans ce code :
http://www.purebasic.fr/french/viewtopi ... 59&start=3
Cordialement
Re: Etrangeté avec Prototype (doc)
Publié : dim. 31/juil./2016 11:42
par Zorro
peut se résoudre aussi comme ça en 5.50
Code : Tout sélectionner
Prototype.i ProtoMessageBox(Fenetre.i, Corps$, Titre$, Options.i = 0)
If OpenLibrary(0, "User32.dll")
; 'MsgBox' est une variable de type 'ProtoMessageBox' ;
MsgBox.ProtoMessageBox = GetFunction(0, "MessageBoxA")
MsgBox(0, peeks(Ascii("Hello")), Peeks(Ascii("World"))) ; Les options peuvent être omises
EndIf
ou comme ça
Code : Tout sélectionner
Prototype.i ProtoMessageBox(Fenetre.i, Corps$, Titre$, Options.i = 0)
If OpenLibrary(0, "User32.dll")
; 'MsgBox' est une variable de type 'ProtoMessageBox' ;
MsgBox.ProtoMessageBox = GetFunction(0, "MessageBoxA")
a$=peeks(Ascii("Hello"))
b$= Peeks(Ascii("World"))
MsgBox(0,a$,b$) ; Les options peuvent être omises
EndIf
Re: Etrangeté avec Prototype (doc)
Publié : dim. 31/juil./2016 11:56
par falsam
Avec le version 5.50
Code : Tout sélectionner
Prototype.i ProtoMessageBoxW(Window.i, Body.s, Title.s, Flags.i = 0)
If OpenLibrary(0, "User32.dll")
MsgBox.ProtoMessageBoxW = GetFunction(0, "MessageBoxW")
MsgBox(0, "Hello", "World")
EndIf