не могу заставить модуль node-ffi работать

просто для тестирования я создал небольшую DLL в Delphi. Код:

library MyDll;
uses
    SysUtils,
    Classes,
    Vcl.Dialogs;
function DllMessage(const echo: string): string;  export;
begin
    //ShowMessage('Hello world from a Delphi DLL') ;
    Result := 'Echo:  ' + echo;
end;
exports DllMessage;
begin
end

Я просто хочу запустить что-то такое же простое, как это, с этим кодом nodejs:

var ffi = require('ffi');
console.log("1");
var mylib = ffi.Library('MyDll', {'DllMessage': [ 'string', [ 'string' ] ] });
console.log(2");
var outstring = mylib.DllMessage('abc');
console.log("3" + outstring);

проблема в том, что я вижу "1" и "2" на консоли и больше ничего. Пожалуйста, помогите, есть идеи?

заранее спасибо


person tsadak    schedule 13.06.2017    source источник


Ответы (1)


Передайте ваши строковые данные в качестве буфера

var message = Buffer.from('abc')
var outstring = mylib.DllMessage(message);
console.log("3" + outstring);
person Babatope.Festus    schedule 17.04.2020