//--------------------------------------------------------------------------- #include <windows.h> #pragma argsused int WINAPI DllEntryPoint(HINSTANCE hinst, unsigned long reason, void* lpReserved) { return 1; } //Exemple de passage d'un char* extern __declspec(dllexport) __stdcall void MonMessage (char* message) { char MonMess[20] = "Bonjours"; strcpy( message,MonMess); } //Exemple pour retourner un entier extern __declspec(dllexport) __stdcall int MonEntier (void) { return 8; } //Exemple pour passer en paramettre un entier extern __declspec(dllexport) __stdcall void MonEntier2 (int* LeNum) { *LeNum = 12; }
Imports System.Console ' Module Module1 'Declaration des Fonction de la Dll Declare Auto Function MonNumero Lib "MaDll.dll" Alias "MonEntier" () As Integer Declare Auto Sub MonNumero2 Lib "MaDll.dll" Alias "MonEntier2" (ByRef Num As Integer) Declare Auto Sub Montexte Lib "MaDll.dll" Alias "MonMessage" (ByVal Mess() As Byte) ' Sub Main() Dim MonNum As Integer Dim MonNum2 As Integer Dim Text As String Dim Buffer(50) As Byte ' MonNum = MonNumero() MonNumero2(MonNum2) ' Montexte(Buffer) 'Converion des Byte en String Text = System.Text.ASCIIEncoding.UTF7.GetString(Buffer) ' 'Ecriture dans la console Write("Le Numero est : " & MonNum & vbCrLf) Write("Le Numer2 est : " & MonNum2 & vbCrLf) Write("Le Texte est : " & Text & vbCrLf) ' 'Attente d'une touche ReadLine() End Sub End Module
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question