Etrangeté avec Prototype (doc)

Sujets variés concernant le développement en PureBasic
Avatar de l’utilisateur
Ar-S
Messages : 9478
Inscription : dim. 09/oct./2005 16:51
Contact :

Etrangeté avec Prototype (doc)

Message 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 ?
~~~~Règles du forum ~~~~
⋅.˳˳.⋅ॱ˙˙ॱ⋅.˳Ar-S ˳.⋅ॱ˙˙ॱ⋅.˳˳.⋅
W11x64 PB 6.x
Section HORS SUJET : ICI
LDV MULTIMEDIA : Dépannage informatique & mes Logiciels PB
UPLOAD D'IMAGES : Uploader des images de vos logiciels
Avatar de l’utilisateur
falsam
Messages : 7244
Inscription : dim. 22/août/2010 15:24
Localisation : IDF (Yvelines)
Contact :

Re: Etrangeté avec Prototype (doc)

Message par falsam »

Désactive le support unicode si cette option est disponible dans ta version.
Configuration : Windows 11 Famille 64-bit - PB 6.03 x64 - AMD Ryzen 7 - 16 GO RAM
Vidéo NVIDIA GeForce GTX 1650 Ti - Résolution 1920x1080 - Mise à l'échelle 125%
Avatar de l’utilisateur
Ar-S
Messages : 9478
Inscription : dim. 09/oct./2005 16:51
Contact :

Re: Etrangeté avec Prototype (doc)

Message par Ar-S »

En effet ça marche sur la 5.43.
Et comment on résout la chose en 5.50 ?
~~~~Règles du forum ~~~~
⋅.˳˳.⋅ॱ˙˙ॱ⋅.˳Ar-S ˳.⋅ॱ˙˙ॱ⋅.˳˳.⋅
W11x64 PB 6.x
Section HORS SUJET : ICI
LDV MULTIMEDIA : Dépannage informatique & mes Logiciels PB
UPLOAD D'IMAGES : Uploader des images de vos logiciels
Avatar de l’utilisateur
GallyHC
Messages : 1703
Inscription : lun. 17/déc./2007 12:44

Re: Etrangeté avec Prototype (doc)

Message 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
Configuration : Tower: Windows 10 (Processeur: i7 "x64") (Mémoire: 16Go) (GeForce GTX 760 - 2Go) - PureBasic 5.72 (x86 et x64)
Avatar de l’utilisateur
Ar-S
Messages : 9478
Inscription : dim. 09/oct./2005 16:51
Contact :

Re: Etrangeté avec Prototype (doc)

Message par Ar-S »

Merci Gallyhc, ça roule :)
~~~~Règles du forum ~~~~
⋅.˳˳.⋅ॱ˙˙ॱ⋅.˳Ar-S ˳.⋅ॱ˙˙ॱ⋅.˳˳.⋅
W11x64 PB 6.x
Section HORS SUJET : ICI
LDV MULTIMEDIA : Dépannage informatique & mes Logiciels PB
UPLOAD D'IMAGES : Uploader des images de vos logiciels
Avatar de l’utilisateur
kernadec
Messages : 1594
Inscription : ven. 25/avr./2008 11:14

Re: Etrangeté avec Prototype (doc)

Message 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
Avatar de l’utilisateur
Zorro
Messages : 2185
Inscription : mar. 31/mai/2016 9:06

Re: Etrangeté avec Prototype (doc)

Message 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 :mrgreen:

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 
Image
Image
Site: http://michel.dobro.free.fr/
Devise :"dis moi ce dont tu as besoin, je t'expliquerai comment t'en passer"
Avatar de l’utilisateur
falsam
Messages : 7244
Inscription : dim. 22/août/2010 15:24
Localisation : IDF (Yvelines)
Contact :

Re: Etrangeté avec Prototype (doc)

Message 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
Configuration : Windows 11 Famille 64-bit - PB 6.03 x64 - AMD Ryzen 7 - 16 GO RAM
Vidéo NVIDIA GeForce GTX 1650 Ti - Résolution 1920x1080 - Mise à l'échelle 125%
Répondre