AutoIt - DllCall - мой вызов dll не возвращает значение - PullRequest
0 голосов
/ 05 февраля 2020

Я создал свою собственную DLL, используя - C#, vb. net и FreeBasi c - Функция заключается в добавлении 2 номеров. Возвращаемое значение либо пустое (когда используется FreeBasi c), либо 0 (для c# и vb. net).

Может кто-нибудь помочь мне в этом вопросе?

Код AutoIt прост, как показано ниже:

#include <MsgBoxConstants.au3>
;Local $hDLL = DllOpen(@ScriptDir & "\clsAddMul.dll") ; vb.net & c#
Local $hDLL = DllOpen(@ScriptDir & "\Math1.dll") ;FreeBasic

Local $aResult = 555

$aResult = DllCall($hDLL, "Int", "_add", "Int", 7, "Int", 8)
;$aResult = DllCall($hDLL, "int", "_add", "int", 7, "int", 8)

DllClose($hDLL)

MsgBox (0, "Result", "Total = " & $aResult)

Код функции выглядит следующим образом:

1 - код FreeBasi c:

Extern "Windows-MS"

Function _add(no1 As Integer, no2 As Integer) As Integer Export
    Dim result As Integer
    result = no1 + no2
'   result = 10

'   Return no1+no2  
    Return result   

End Function
End Extern

Аналогично без Extern и Export и др * * тысяча двадцать-одна. для VB. net и c# также. Не включен здесь, это очень простой пример.

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