
Oui oui , y faut que tu travaille un peu, parce que KCC y demande, y demande mais y paye pas beaucoup

Encore milles merci
Code : Tout sélectionner
;*ptr will point to the zeroth element.
ProcedureDLL ListeDll(*ptr.INTEGER)
If *ptr\i
PokeS(*ptr\i, "Index 0")
EndIf
*ptr + SizeOf(INTEGER)
If *ptr\i
PokeS(*ptr\i, "Index 1")
EndIf
EndProcedure
Code : Tout sélectionner
Dim Essai.s(30)
;It is important that you initialise the array elements before having the dll adjust the strings!
Essai(0) = Space(128)
Essai(1) = Space(128)
If OpenLibrary(0, "dll.dll")
CallFunction(0, "ListeDll", @Essai())
Debug Essai(0)
Debug Essai(1)
CloseLibrary(0)
EndIf
Code : Tout sélectionner
Dim Essai.s(10)
LenArray = ArraySize(Essai())
For i = 1 To LenArray
Essai(i) = Space(128)
Next
If OpenLibrary(0, "c:\dll.dll")
CallFunction(0, "ListeDll", @Essai(), LenArray)
For i = 1 To LenArray
Debug Essai(i)
Next
CloseLibrary(0)
EndIf
Code : Tout sélectionner
ProcedureDLL ListeDll(*ptr.INTEGER, LenArray)
Dim Tablo.s(LenArray)
x = 0
x+1:Tablo(x) = "J'aime"
x+1:Tablo(x) = "les "
x+1:Tablo(x) = "bananes"
x+1:Tablo(x) = "parceque ya"
x+1:Tablo(x) = "pas "
x+1:Tablo(x) = "d'os"
x+1:Tablo(x) = "dedans"
For i = 0 To LenArray
If *ptr\i
PokeS(*ptr\i, Tablo(i))
EndIf
*ptr + SizeOf(INTEGER)
Next
EndProcedure