Remplacer un caractere par un autre par le biais d'une DLL

Toutes les astuces qui n'entre pas dans les autres catégories

Remplacer un caractere par un autre par le biais d'une DLL

Messagepar Ex Stagiaire » 24 Jan 2005 à 10:51

Fichier C compilé en DLL :
Code : Tout sélectionner
#include <stdio.h>
#include <stdlib.h>
#include <string.h>


char * DLL_Chaine_RemplacerCaractere (char * source, char * oldCarac, char * nouvCarac){
   char *dest;
   char *ptr;
    int l = strlen(source);

   /* On duplique la chaîne*/
   dest = (char *)malloc(sizeof(char) * (l + 1));
   strcpy(dest,source);

   /* Remplacement du caractere par sa nouvelle valeur */
    while(ptr = strchr(dest, (int)*oldCarac)){
        *ptr = *nouvCarac;
   }

   return dest;
}

La DLL compilée doit se trouver dans le dossier Notes (au meme endroit que le nlnotes.exe).

Fichier .def definissant les interfaces de la DLL :
Code : Tout sélectionner
LIBRARY lbGenerale INITINSTANCE

EXPORTS
       DLL_Chaine_RemplacerCaractere   @1


Déclaration de la fonction LS utilisant la DLL :
Code : Tout sélectionner
Declare Function DLL_Chaine_RemplacerCaractere Lib "lbGenerale.dll" (Byval sChaine As String, Byval oldCar As String, Byval nouvCar As String) As String

OU :
Code : Tout sélectionner
Declare Function remplace Lib "lbGenerale.dll" Alias "#1" (Byval sChaine As String, oldCar As String, nouvCar As String) As String


voila
@+
Notes R5.0.9
Dev. pour clients lourds.
Avatar de l’utilisateur
Ex Stagiaire
Empereur des posts
Empereur des posts
 
Message(s) : 1066
Inscrit(e) le : 16 Déc 2004 à 11:19
Localisation : Toulouse

Retour vers Divers