Я загружаю pascal dll в Python и хочу выполнить функцию loadIRB, чьи входные и выходные параметры определены следующим образом:
loadIRB
function loadIRB(const fn: PAnsiChar ) : PtrUInt;
- Параметр: fn (PAnsiChar): Pathname
- Return: PtrUInt: 0 - ошибка
else: ссылка на дескриптор файла
Я пробовал следующий код и некоторые модификации, но я абсолютноне знаю, что я делаю неправильно, так как функция всегда возвращает нулевой указатель.Загрузка DLL работает, и AA00.irb - это файл, который я хочу открыть.Может ли кто-нибудь помочь мне с этим?
class RETURN(Structure):
_fields_ = [
("return_pt", c_uint),
]
dll = windll.LoadLibrary(dll_path)
string1 = "AA00.irb"
b_string1 = string1.encode('ansi')
func = dll.loadIRB
func.argtypes = [c_char_p]
func.restype = POINTER(RETURN)
ret = func(b_string1)