Je programme actuellement un logiciel pour mes besoins. Celui-ci doit traduire une liste de mots en différente en langue via le service de traduction de google.
J'ai actuellement une erreur de type "Invalid memory access" lors de l'execution de mon programme avec la procédure ci-dessous. L'erreur apparait sur le "EndProcedure"
Code : Tout sélectionner
Procedure CreateTranslation(HackNull.b)
  AddMsgToLog("---------- Creation des fichiers de translation .tran ----------")
  ; Choix des traductions 
  Protected ErrorCode.b = 0 
  Protected WebPageSrc.s = LoadWebPageToString("http://www.google.fr/language_tools", @ErrorCode.b)        
  ; Selon le résultat de la fonction
  Select ErrorCode.b
    Case #HTTP_OK
      Debug WebPageSrc.s
    Case #HTTP_ERROR_PARAMETER
      AddMsgToLog("Error of parameters for the function LoadWebPageToMemory")
      EndBackgroundTask()
      ProcedureReturn
    Case #HTTP_ERROR_CONNECT
      AddMsgToLog("Connexion failed to the web site www.google.fr")
      EndBackgroundTask()
      ProcedureReturn    
    Case #HTTP_ERROR_MEMORY
      AddMsgToLog("Not enough memory to the buffer")
      EndBackgroundTask()
      ProcedureReturn    
  EndSelect
  EndBackgroundTask()
EndProcedure
Je ne conprends pas les causes de cette erreur. J'ai cherché sur google les cas possibles pour ce type de problémes. Mais le peu de résultat concernant les exes PureBasic n'a pu éclairer ma lanterne.
J'aimerais connaitre les techniques pour traquer l'origine de ce message d'erreur.
J'ai cherché du coté des pointeurs que j'utilise beaucoup dans la procédure "LoadWebPageToString" mais rien ne me semble incorrecte.
Je ne peut poster l'ensembe du code source sur le forum. Cela représente 3000 lignes environ. Si nécessaire je peut créer une archive à télécharger avec l'ensemble du code.
Merci d'avance pour votre aide et de vos suggestions.