C Dll aus VB aufrufen



  • Hallo zusammen

    Vielleicht kann mir jemand weiterhelfen.
    Ich habe eine C dll gemacht die von Access und Excel aus aufgerufen werden muss. Die Funktionen kann ich aufrufen mit und ohne Parameter.
    Das einzige Problem was ich noch habe ist wenn ich eine Structur übergeben muss:

    typedef struct
    {
      char caName[100];
      char caCreateTime[11];
      char caCreator[100];
      char caPath[300];
    
    }Tag_LinkData;
    int	  __stdcall GetLink_g(int iID, Tag_LinkData *ptag_LinkData);
    

    Die Dll stürtzt immer ab wenn ich von der dll aus etwas in die Structur hineinschreiben will.
    Ich habe die Structur so nachgebaut im vba:

    Type Tag_LinkData
        caName As String
        caCreateTime As String
        caCreator As String
        caPath As String
    End Type
    
    Dim LinkData As Tag_LinkData  <-- Deklaration
    iRc = iLinkMgr_GetLink(10, LinkData)  <-- Aufruf
    

    Hat jemand erfahrungen oder soll ich mich in einem VBA Forum beraten lassen.



  • Ein VB String ist kein char[100], sondern ein BSTR. Es gab da auch noch die Möglichkeit was mit Arrays zu machen, aber ich weiß leider nimmer genau wie das ging, ist viel zu lange her...


Anmelden zum Antworten