ich brauch Hilfe und zwar hab ich mir eine Struktur geschrieben, und will jetzt eine Funktion aus einer DLL importieren und den Rückgabewert der Funktion soll als diese Struktur erfolgen. Leider klappt das alles nicht so wie ich es mir gedacht habe!
Ich hatte bei der Struktur eine Vorlage von C++, und diese in Visual Basic nachprogrammiert, dann wurde die gleiche Funktion in C++ verwendet, aber als ich nun die Funktion in VB anwenden wollte kam folgender Fehler:
was mich denk ich darauf schließen lässt, das ich was an der Struktur falsch gemacht habe...Quote:
Die Typensignatur der Methode ist nicht PInvoke-kompatibel.
Die Struktur in C++:
PHP Code:
struct File_t {
char unknown01[4];
unsigned int* filerevision;
void* unknown012;
unsigned int sections;
void* uknown02;
void* uknown03;
void* uknown04;
FileInfo_t* fileInfo; //FileInfo_t ist eine andere Struktur
char unknownFileHeader[32];
ArtToolInfo_t** unknown05; //ArtToolInfo_t ist eine andere Struktur
char unknown[28];
};
PHP Code:
Public Structure File_t
Dim unknown01() As Char
Dim filerevision As Integer
Dim unknown012
Dim sections As Integer
Dim uknown02
Dim uknown03
Dim uknown04
Dim fileInfo As FileInfo_t 'FileInfo_t ist eine andere Struktur
Dim unknownFileHeader() As Char
Dim unknown05 As ArtToolInfo_t 'ArtToolInfo_t ist eine andere Struktur
Dim unknown() As Char
End Structure
Die Funktion in C++:
PHP Code:
File_t* __stdcall _ReadEntireFile(const char* filename);
PHP Code:
<DllImport("Test.dll")> Public Function ReadEntireFile(ByVal filename As String) As File_t
End Function
Wisst ihr was ich falsch gemacht habe?
MfG