Delphi вызов функции DLL - PullRequest
       1

Delphi вызов функции DLL

0 голосов
/ 20 февраля 2020

У меня проблемы с вызовом функции из библиотеки DLL, я объявил функцию следующим образом:

Function LicenseIsActive(): boolean;
StdCall; external 'VaultManagerTest.dll';

Я попытался изменить метод соглашения о вызовах, но безуспешно.

Функция в dll:

public bool LicenseIsActive() 
 {
  return License.Active;             
}

Сообщение об ошибке при запуске отладчика:

enter image description here

1 Ответ

0 голосов
/ 22 февраля 2020

Вы не можете вызвать функцию напрямую (по причинам, указанным в комментариях), но вот простой обходной путь, который не использует интерфейс COM.

Напишите исполняемый файл C#, который возвращает логический через код завершения, что-то вроде этого:

using VaultManagerTest;

public class Test
{
   public static int Main()
   {
      return License.Active ? 1 : 0;
   }
}

В Delphi запустите исполняемый файл, дождитесь его завершения sh и проверьте его код выхода.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...