[Résolu] [PB 5.41] Souci de stabilité.

Sujets variés concernant le développement en PureBasic
Avatar de l’utilisateur
falsam
Messages : 7244
Inscription : dim. 22/août/2010 15:24
Localisation : IDF (Yvelines)
Contact :

[Résolu] [PB 5.41] Souci de stabilité.

Message par falsam »

(Ce sujet a été déplacé du forum 3D -> Discussion générale.)

Certains de mes codes 3D ne fonctionnent plus ou buguent avec la version 5.41 de PureBasic alors qu'ils fonctionnent avec PB 5.40

Edit (20 Janvier) : Je pensais que c'était un bug lié à Ogre et en fait pas du tout. C'est lié à l'utilisation de la constante #PB_Any.

Mon environnement de test est :
- Pure Basic 5.41 (x86)
- Windows 10 Pro
- Antivirus désactivé.

■ Voici mon code de test : Essayez de quitter l'application => Freeze du code.

Code : Tout sélectionner

InitEngine3D()
InitKeyboard()
InitSprite()

window = OpenWindow(#PB_Any,0,0,1024,768,"CreateLight()")
OpenWindowedScreen(WindowID(window),0,0,1024,768)

Camera = CreateCamera(#PB_Any,0,0,100,100)
MoveCamera(Camera,0,0,10)
CameraLookAt(camera,0,0,0)

CreateLight(#PB_Any,RGB(255, 255, 255), -5, 10, 5)

While #True  
  Event = WindowEvent()  
  ExamineKeyboard()  
  
  If Event = #PB_Event_CloseWindow Or KeyboardPushed(#PB_Key_Escape)
    Break
  EndIf  
  
  RenderWorld()
  FlipBuffers()
Wend
■ J'obtiens parfois un IMA en ligne 8 : [ERREUR] Accès mémoire invalide. (erreur de lecture à l'adresse 41700)

■ Avec la bibliothèque OpenGL en sous-systéme j'ai les mêmes soucis.
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
GallyHC
Messages : 1703
Inscription : lun. 17/déc./2007 12:44

[PB 5.41] Souci de stabilité.

Message par GallyHC »

Bonjour falsam,

Pour ma part Windows 7 x64, prog compilé en X86. Résultat : Ecran noir et si je quitte, tout ce "freeze ", sans erreur. Cela revient un peu au Bug, que j'ai déclaré avec les #PB_Any avec l'utilisation de "OpenLibrary()".

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
falsam
Messages : 7244
Inscription : dim. 22/août/2010 15:24
Localisation : IDF (Yvelines)
Contact :

[PB 5.41] Souci de stabilité.

Message par falsam »

Tu as raison Gally !!! Si je remplace #PB_Any par des identifiants, dans ce cas là le code fonctionne.

Code : Tout sélectionner

InitEngine3D(#PB_Engine3D_DebugLog)
InitKeyboard()
InitSprite()

window = OpenWindow(0,0,0,1024,768,"CreateLight()")
OpenWindowedScreen(WindowID(0),0,0,1024,768)

Camera = CreateCamera(0,0,0,100,100)
MoveCamera(0,0,0,10)
CameraLookAt(0,0,0,0)

CreateLight(0, RGB(255, 255, 255), -5, 10, 5)

While #True  
  Event = WindowEvent()  
  ExamineKeyboard()  
  
  If Event = #PB_Event_CloseWindow Or KeyboardPushed(#PB_Key_Escape)
    Break
  EndIf  
  
  RenderWorld()
  FlipBuffers()
Wend
J'ai zappé cette conversation qu'on a eu hier soir. je signale ce bug. Merci.
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%
comtois
Messages : 5172
Inscription : mer. 21/janv./2004 17:48
Contact :

[PB 5.41] Souci de stabilité.

Message par comtois »

C'est déjà signalé http://www.purebasic.fr/english/viewtop ... =4&t=64468
Et ça merdouille avec le terrain, les joints, etc.
http://www.purebasic.fr/english/viewtop ... =4&t=64513

Je n'ai rien vu d'anormal dans le code de la dll, c'est peut-être dans le wrap de Fred ?
http://purebasic.developpez.com/
Je ne réponds à aucune question technique en PV, utilisez le forum, il est fait pour ça, et la réponse peut profiter à tous.
Avatar de l’utilisateur
GallyHC
Messages : 1703
Inscription : lun. 17/déc./2007 12:44

[PB 5.41] Souci de stabilité.

Message par GallyHC »

Bonjour,

Je penses que l'utilisation de "#PB_Any" pose pas mal de problème avec la version 5.41 LTS. Mais bon je penses que Fred corrigera cela rapidement, vu que déclarer sur le forum anglais.

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
falsam
Messages : 7244
Inscription : dim. 22/août/2010 15:24
Localisation : IDF (Yvelines)
Contact :

[PB 5.41] Souci de stabilité.

Message par falsam »

@Comtois: Ce souci avec #PB_Any n'impacte pas que la 3D. D'autres types d'opérations comme la simple ouverture d'une library (Signalé par GallyHC) pose aussi problémes.

Code : Tout sélectionner

Test = OpenLibrary(#PB_Any, "")

If test <> 0 And IsLibrary(test)
  Debug "Ok"
Else
  Debug "Ooops error"
  
  ;Code freeze
EndIf
Ce code freeze aussi avec PureBasic 5.41 alors qu'il fonctionne avec PB 5.40
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%
comtois
Messages : 5172
Inscription : mer. 21/janv./2004 17:48
Contact :

[PB 5.41] Souci de stabilité.

Message par comtois »

Merci, tout ça confirme ce que je soupçonnais, ce n'est pas la dll engine3D qui merdouille :P
http://purebasic.developpez.com/
Je ne réponds à aucune question technique en PV, utilisez le forum, il est fait pour ça, et la réponse peut profiter à tous.
Avatar de l’utilisateur
falsam
Messages : 7244
Inscription : dim. 22/août/2010 15:24
Localisation : IDF (Yvelines)
Contact :

Re: [PB 5.41] Souci de stabilité.

Message par falsam »

Un autre bug (Vu sur le forum anglais)

Exécutez ce code.

Code : Tout sélectionner

If (#Empty$ = #Null$)
 
EndIf
Il ne pose pas de probléme rassurez vous.

Maintenant exécutez celui là.

Code : Tout sélectionner

MessageRequester("Information", "Message que vous ne verrez pas !")
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%
Shadow
Messages : 1373
Inscription : mer. 04/nov./2015 17:39

Re: [PB 5.41] Souci de stabilité.

Message par Shadow »

Salut,

Cette syntaxe est étrange :?

Code : Tout sélectionner

If (#Empty$ = #Null$)
MessageRequester("Information", "Message que vous ne verrez pas !")
EndIf
Une constante ne peut pas avoir un $ pourtant 8O
Pas d'erreur et effectivement ont ne vois pas le message.
Processeur: Intel Core I7-4790 - 4 Cœurs - 8 Thread: 3.60 Ghz.
Ram: 32 GB.
Disque: C: SDD 250 GB, D: 3 TB.
Vidéo: NVIDIA GeForce GTX 960: 2 GB DDR5.
Écran: Asus VX248 24 Pouces: 1920 x 1080.
Système: Windows 7 64 Bits.

PureBasic: 5.60 x64 Bits.
Anonyme2
Messages : 3518
Inscription : jeu. 22/janv./2004 14:31
Localisation : Sourans

Re: [PB 5.41] Souci de stabilité.

Message par Anonyme2 »

Shadow a écrit :Salut,

Une constante ne peut pas avoir un $ pourtant 8O
Pas d'erreur et effectivement ont ne vois pas le message.
Si, on peut déclarer une constante chaine en mettant un $ à la fin et ça depuis longtemps.

La liste des constantes du fichier d'aide n'est peut-être pas tout à fait à jour car il existe plusieurs constantes chaîne déclarées par PB.

Voici la liste des constantes chaine déclarées et listée avec le shell PB.
Pour presque toutes, elles correspondent à des caractères non imprimables de la table des caractères dont l'index est inférieur à 32.

Code : Tout sélectionner

#ACK$ = Chr(6)
#BEL$ = Chr(7)
#BS$ = Chr(8)
#CAN$ = Chr(24)
#CR$ = Chr(13)
#CRLF$ = Chr(13) + Chr(10)
#DC1$ = Chr(17)
#DC2$ = Chr(18)
#DC3$ = Chr(19)
#DC4$ = Chr(20)
#DEL$ = Chr(127)
#DLE$ = Chr(16)
#DOUBLEQUOTE$ = Chr(34)
#DQUOTE$ = Chr(34)
#EM$ = Chr(25)
#Empty$ = ""
#ENQ$ = Chr(5)
#EOT$ = Chr(4)
#ESC$ = Chr(27)
#ETB$ = Chr(23)
#ETX$ = Chr(3)
#FF$ = Chr(12)
#FS$ = Chr(28)
#GS$ = Chr(29)
#HT$ = Chr(9)
#LF$ = Chr(10)
#LFCR$ = Chr(10) + Chr(13)
#NAK$ = Chr(21)
#Null$ = ""
#RS$ = Chr(30)
#SI$ = Chr(15)
#SO$ = Chr(14)
#SOH$ = Chr(1)
#STX$ = Chr(2)
#SUB$ = Chr(26)
#SYN$ = Chr(22)
#TAB$ = Chr(9)
#US$ = Chr(31)
#VT$ = Chr(11)
Extrait de la doc
Paragraphe Historique
- Ajouté: Constante #Null$, chaîne de caractères spéciale pour affecter une vraie valeur Null à une chaîne (pour la libérer complètement). Peut être utilisée aussi pour les fonctions de l'API qui acceptent parfois NULL à la place d'une adresse de chaîne.
- Ajouté: Constante #Empty$
Paragraphe Règles de syntaxe générales > Texte litéral
Il y a deux constantes spéciales pour les chaînes:
#Empty$: représente une chaîne vide (exactement la même chose que "")
#Null$ : représente une chaîne nulle. Ceci peut être utilisé avec les fonctions
des APIs nécessitant un pointeur NULL en guise de chaîne ou à une chaîne vraiment libre.
Avatar de l’utilisateur
falsam
Messages : 7244
Inscription : dim. 22/août/2010 15:24
Localisation : IDF (Yvelines)
Contact :

Re: [PB 5.41] Souci de stabilité.

Message par falsam »

Fred a répondu sur le forum anglais
Fred a écrit :I will take a quick look for it. BTW, just added the 5.40 to the museum, thanks for noticing.
Hier Gally a signalé que la version 5.40 ne figurait pas en téléchargement, fred a fait le nécessaire. Ceux qui le souhaitent peuvent installer à nouveau la précédente version de PureBasic en attendant un correctif de la version 5.41.
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%
Shadow
Messages : 1373
Inscription : mer. 04/nov./2015 17:39

Re: [PB 5.41] Souci de stabilité.

Message par Shadow »

Salut,
Si, on peut déclarer une constante chaine en mettant un $ à la fin et ça depuis longtemps.
Et bien.... j'avais pas remarquer et ça ne dois pas faire très longtemps, depuis quel version ?
Pour moi c'est récent.
Processeur: Intel Core I7-4790 - 4 Cœurs - 8 Thread: 3.60 Ghz.
Ram: 32 GB.
Disque: C: SDD 250 GB, D: 3 TB.
Vidéo: NVIDIA GeForce GTX 960: 2 GB DDR5.
Écran: Asus VX248 24 Pouces: 1920 x 1080.
Système: Windows 7 64 Bits.

PureBasic: 5.60 x64 Bits.
Avatar de l’utilisateur
falsam
Messages : 7244
Inscription : dim. 22/août/2010 15:24
Localisation : IDF (Yvelines)
Contact :

Re: [Résolu] [PB 5.41] Souci de stabilité.

Message par falsam »

Résolu avec la version 5.42 LTS Beta
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