Ошибка: ошибка динамического связывания: ошибка Win32 193 при привязке к библиотеке Eztwain3.dll с помощью nodejs ffi - PullRequest
0 голосов
/ 29 октября 2018

Я успешно привязал мои nodejs к «TSCLIB.dll» с помощью ffi, но когда я хочу привязать его к «Eztwain3.dll», у меня всегда появляется «Ошибка: Ошибка динамического связывания: ошибка Win32 193».

C:\Users\dev\Desktop\nodeApp>node scan.js
C:\Users\dev\Desktop\nodeApp\node_modules\ffi\lib\dynamic_library.js:74
    throw new Error('Dynamic Linking Error: ' + err)
    ^

Error: Dynamic Linking Error: Win32 error 193
    at new DynamicLibrary (C:\Users\dev\Desktop\nodeApp\node_modules\ffi\lib\dynamic_library.js:74:11)
    at Object.Library (C:\Users\dev\Desktop\nodeApp\node_modules\ffi\lib\library.js:45:12)
    at Object.<anonymous> (C:\Users\dev\Desktop\nodeApp\scan.js:17:24)
    at Module._compile (module.js:653:30)
    at Object.Module._extensions..js (module.js:664:10)
    at Module.load (module.js:566:32)
    at tryModuleLoad (module.js:506:12)
    at Function.Module._load (module.js:498:3)
    at Function.Module.runMain (module.js:694:10)
    at startup (bootstrap_node.js:204:16)

Показанное выше выполнение появляется, когда я пытаюсь запустить этот скрипт.

const ffi = require('ffi');
const ref = require('ref');

    const platform = process.platform;
    var lib = null;

    if (platform === 'win32') {
        lib = 'Eztwain3.dll';
    } else {
        throw new Error('unsupported plateform for lib')
    }

    var instance = ffi.Library(lib, {

    });

https://imgur.com/a/F4rzZDT
https://imgur.com/a/rminDnN

Я пытался выполнить тот же скрипт с TSCLIB.dll, и он работал без исключений.
Итак, как мне вызвать библиотеку Eztwain3.dll с узлом ffi?

1 Ответ

0 голосов
/ 30 октября 2018

Я решаю свою проблему, изменяя nodejs с 64-битной на 32-битную, потому что моя DLL 32-битная

...