PC SOFT

PROFESSIONAL NEWSGROUPS
WINDEVWEBDEV and WINDEV Mobile

Home → WINDEV Mobile (earlier versions) → Fonction malloc en WinDev
Fonction malloc en WinDev
Started by D. WIBIN, Jan., 02 2012 2:56 PM - 1 reply
Posted on January, 02 2012 - 2:56 PM
Bonjour et bonne année 2012,
Pourriez-vous m'aider à transposer la fonction "malloc" en winDev ?

Ma_Variable = (Type_de_Variable *)malloc(Taille_A_Réserver)

Voici un exemple de code.

St_LaStructure est une structure
nPointeur_Vers_Structure_Suivante est un entier
nMembre1 est un entier
sMembre2 est une chaîne
FIN

MaStructure est une St_LaStructure
nMaTailleMémoire est un entier

AppelDLL32("LaDLL.dll","LaFonction",&MaStructure,&nMaTailleMémoire)

MaStructure = (St_LaStructure *)malloc(nMaTailleMémoire)


Bon Dev,
D. Wibin
Posted on January, 02 2012 - 3:40 PM
Et voila comment j'ai résolu mon "problème".
Si vous avez une solution plus esthétique...

St_LaStructure est une structure
nPointeur_Vers_Structure_Suivante est un entier
nMembre1 est un entier
sMembre2 est une chaîne
FIN

MaStructure est une St_LaStructure
nMaTailleMémoire est un entier = Dimension(MaStructure)
MonBuffer est un Buffer

AppelDLL32("LaDLL.dll","LaFonction",&MonBuffer,&nMaTailleMémoire)

MonBuffer = ""
POUR nCPT = 1 _A_ nMaTailleMémoire
MonBuffer+=0
FIN

AppelDLL32("LaDLL.dll","LaFonction",&MonBuffer,&nMaTailleMémoire)

Transfert(&MaStructure,&MonBuffer,Dimension(MaStructure))
//TRAITEMENT Occurrence 1

TANTQUE MaStructure.nPointeur_Vers_Structure_Suivante <> 0
Transfert(&MaStructure,MaStructure.nPointeur_Vers_Structure_Suivante,Dimension(MaStructure))
//TRAITEMENT Occurrence N
FIN