Home Forums HTBasic Forum HTBasic 21.1.011 cannot load DLL built with Delphi XE 5

Viewing 1 post (of 1 total)
  • Author
    Posts
  • #8947
    Andrei PilipovichAndrei Pilipovich
    Participant

      Dear Forum,

      In company we’re in the process of migration that includes HTBasic upgrade from v6.0. to v21.1.011. So far everything was going quite smooth until I faced an issue with loading our custom-built DLL for ADO (msado15.dll) calls written in Delphi XE 5 (and older). Issue is that new version doesn’t load functions with CSUBs throwing Error 7. I was able to DLL LOAD and GET and LIST DLL these functions, but they actually do nothing.

      This is a sample export of one of the functions:

      function ado_connect(Npar : longint;
      		     var UserName : Tstr; var UserName_dim : Dim;
                           var PassWord : TStr; var Password_dim : Dim;
                           var DBSource : TStr; var DBSource_dim : Dim;
                           var Fail : SmallInt):longint;export;cdecl;

      And PRO part

      SUB Ado_connect(Username$,Password$,Dbsource$,INTEGER Fail)
      SUBEND

      I tried to re-make CSB with old DLL and new PRO, but got error from CSUB tool – Missing pre-run information.

      For DLL statements, I was getting this function as:

      IF NOT INMEM("ADOMaceDba") THEN
          DLL LOAD "ADOMaceDba"
          DLL GET "CDECL LONG ADOMaceDba:ado_connect" AS "Ado_connect"
      END IF

      So right now, I’m looking for newer version on Delphi and build newer DLL. I have also started to develop the same functionality with latest MSVC utilizing the same msado15.dll.

      I was suggested to post in the Forum by TransEra support team, since I’m dealing with pretty old stuff 🙂

      I know that it is better to upgrade/re-create DLL, but right now it would be more effective to find quick workaround, continuing to re-write the DLL a bit later.

    Viewing 1 post (of 1 total)
    • You must be logged in to reply to this topic.
    Scroll to Top
    HTB icon

    Please Sign In