Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : Problèmes de DLL [ Archives / J'AI BESOIN D'AIDE !!!! :O ] (LeGuepard)

jeudi 7 octobre 2004 à 01:21:19 | Problèmes de DLL

LeGuepard

Bonjour à tous,

J'ai quelques petits problèmes de DLL. En fait j'ai remarque que deux de mes dll avait un bug commun, à savoir qu'elles déforme des chaines de caractères.

- La première contient une fonction qui à pour but de lire une chaine contenue des les registres de Windows représentant le chemin d'acces d'un répertoire et de la renvoyer vers mon application. Hors, lorsque la chaine arrive dans mon programme, elle est déformée et par conséquent puisqu'elle représente le chemin d'acces du répertoire contenant mes Bases de données, mon application plante.

- La deuxième contient deux fonctions de cryptage et de décryptage. Lorsque de fait appel à ma fonction de cryptage en lui transmettant la chaine de caractères original, celle-ci me renvoie une autre chaine de caractères cryptée. Si maintenant je trasmets cette dernière à la fonction de décryptage, celle-ci doit me retourner une chaine de caractères identique à la chaine original. Hors, parfois cette chaine est également déformée. La plupart du temps, le décryptage est correcte mais par exemple, avec tout les mot se tarminant par "main" comme par exemple "demain", j'ai en retourne quelque chose comme "demaj|".

J'ai alors eu l'envie de pousser mon enquête une peu plus loin pour savoir forcément d'où pouvait venir ce bug. J'ai alors décidé de mettre directement les codes source de mes fonctions, que ce soit celles de lecture des registres ou celles de cryptage, dans mes sources des applications, et là tout fonctionne correctement.

Le problème viens donc bien de mes librairies. Poutant, j'effectue bien le passage des mais chaines de caractères non pas par variables de type "String" mais par des variabkes de type "Pchar".

Alors comme je ne vois vraiment pas comment résoudre ce problème, j'ai donc eu envie de demander à bien plis malin que moi, c'est donc pour cela que je vous pose mes très chers amis cette question.

Voilà, j'espère n'avoir pas été trop long dans mon roman lol, et à tous ceux que ne se sont pas encore endormi en lisant mon histoire, et bien je ne demande qu'une chose, si quelqu'un à une solution, merci de me la faire connaitre!

Merci d'avance.

A Bientôt,

LeGuepard.

jeudi 7 octobre 2004 à 09:07:53 | Re : Problèmes de DLL

jmp77

Membre Club
Salut,

Et si essayes avec tu shortstring ou du ansistring est ce que le phenomene est le meme?

Bonne prog,
JMP.

jeudi 7 octobre 2004 à 23:00:01 | Re : Problèmes de DLL

Delphiprog

Administrateur CodeS-SourceS
Es-tu sûr de bien réserver de l'espace pour tes chaines quand tu utilises des PChar ?
N'oublie pas de réserver autant d'octets que de caractères PLUS un octet pour le caractère nul (#0) qui doit terminer O-BLI-GA-TOI-RE-MENT les chaines.

Sinon, gare aux plantages...ou lecture de zones mémoires au hasard.
Pensez à cliquer sur Réponse acceptée lorsque la réponse vous convient.
May Delphi be with you



Cette discussion est classé dans : fonction, chaine, dll, problèmes, caractères


Répondre à ce message

Sujets en rapport avec ce message

Type d'une fonction d'une DLL [ par sebastienbro ] Voilà, j'aimerais savoir s'il est possible de retourner une auytre valeur que ShortString (String par exemple)Et si oui, comment, parceque dès que je Fonction pour séparer des champs dans une chaine [ par belkin ] Bonjour,Existe-t-il une fonction qui permet de séparer des champs dans une chaine ?Exemple : MaVariable := '123_456.dat';Je veux séparer le 123 et 456 Retourner une chaine... [ par ELECTRORESiSTiK ] Salut,J'ai une chaine "1234567890" je cherche une fonction qui me donnerai "0987654321". Comment puis-je faire ça ? Il existe une fonction ?Merci d'av Une fonction existe pour ça ? [ par ELECTRORESiSTiK ] Salut, je cherche une fonction qui me permettrait de mettre un texte en forme sur une largeur de 70 caractères sans couper un mot et mettre des espace utilisation des dlls [ par ak47 ] salut à tous!Je suis en train de faire un programme ki, entre autre, interpreterai des scripts, et j'aimerai utiliser les dll pour stocker toutes les Comment ajouter des param. à l'appel d'une DLL [ par Pierrotmad ] J'ai un prog qui appelle une dll que j'ai réalisé . Dans la dll, j'ai un champ texte, disons pour l'exemple EdtChemin.text . J'aimerai mettre en param fonction directe pour enlever les accents d'une chaine [ par jeanfre ] bonjour, ma question est trés simple, existe-t-il sous delphi6 une fonction permettant de supprimer les accents ds un chaine de caractere ?merci.JF Newby vs. dll [ par DeltaFX ] Salut a tous,Je suis un pur newby, et je me retrouve en train d'essayer de pondre une dll avec delphi 7. Jusque là ca va, j'ai suivi des tutos de ci, Evenements d'un TApplication non géré à cause d'un chargment de DLL... [ par OrsE ] Salut tout le monde, Ceci est la suite de ce post, http://www.delphifr.com/forum.v2.aspx?ID=480490 Je le refait car j'ai pu identifier le problème cet prb avec dll et tableau dynamique [ par bd ] actuellement je recois en parametre d'une fonction un tableau de longueur variable. ce tableau est rempli dans la fonction de la dll.au retour dans la


Nos sponsors

Sondage...

CalendriCode

Juillet 2009
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Téléchargements

Logiciels à télécharger sur le même thème :

Comparez les prix Nouvelle version

Photothèque Nouveau !



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,281 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.