'How to use node-rfc in vscode-extension development

i have a specific problem with running the library node-rfc. When I run a simple script with node-rfc everything works fine, but when I want to use the library in vs code extesion i have error "The SAP NW RFC SDK could not be loaded, check the installation "

I also have settings in vs code to always includes libraries. I also installing node in the directory where the debugger starts.

do you have any idea what is wrong? I'm out of ideas :(

To Reproduce i'm use helloworld-sample https://github.com/siasty/abaprfc.git

Screenshots screen

Environment
{
platform: { name: 'win32', arch: 'x64', release: '10.0.19044' },
env: {
SAPNWRFC_HOME: 'C:\nwrfcsdk',
RFC_INI: '',
nwrfcsdk_lib_on_path: true
},
versions: {
node: '16.14.2',
v8: '9.4.146.24-node.20',
uv: '1.43.0',
zlib: '1.2.11',
brotli: '1.0.9',
ares: '1.18.1',
modules: '93',
nghttp2: '1.45.1',
napi: '8',
llhttp: '6.0.4',
openssl: '1.1.1n+quic',
cldr: '40.0',
icu: '70.1',
tz: '2021a3',
unicode: '14.0',
ngtcp2: '0.1.0-DEV',
nghttp3: '0.1.0-DEV'
},
noderfc: {
version: '2.6.1',
nwrfcsdk: { major: 7500, minor: 0, patchLevel: 9 }
}
}

error log when running extension

Error: Procedura inicjowania biblioteki do³¹czanej dynamicznie (DLL) nie powiod³a siê.
\\?\d:\abaprfc\node_modules\node-rfc\lib\binding\sapnwrfc.node

 The SAP NW RFC SDK could not be loaded, check the installation: https://github.com/SAP/node-rfc/blob/master/doc/installation.md#sap-nwrfc-sdk-installation
environment: {
  "platform": {
    "name": "win32",
    "arch": "x64",
    "release": "10.0.19043"
  },
  "env": {
    "SAPNWRFC_HOME": "C:\\nwrfcsdk",
    "RFC_INI": "",
    "nwrfcsdk_lib_on_path": false
  },
  "versions": {
    "node": "16.13.0",
    "v8": "9.8.177.11-electron.0",
    "uv": "1.42.0",
    "zlib": "1.2.11",
    "brotli": "1.0.9",
    "ares": "1.17.2",
    "modules": "101",
    "nghttp2": "1.45.1",
    "napi": "8",
    "llhttp": "6.0.4",
    "openssl": "1.1.1",
    "cldr": "40.0",
    "icu": "70.1",
    "tz": "2021a3",
    "unicode": "14.0",
    "electron": "17.2.0",
    "microsoft-build": "12680806"
  }
}

    at process.func [as dlopen] (node:electron/js2c/asar_bundle:5:1800)
    at Object.<anonymous> (node:internal/modules/cjs/loader:1246:18)
    at Object.func [as .node] (node:electron/js2c/asar_bundle:5:1800)
    at Module.load (node:internal/modules/cjs/loader:1035:32)
    at node:internal/modules/cjs/loader:876:12
    at Function.<anonymous> (node:electron/js2c/asar_bundle:5:13331)
    at Function.<anonymous> (d:\Program Files\Microsoft VS Code\resources\app\out\vs\workbench\api\node\extensionHostProcess.js:104:32156)
    at Function.<anonymous> (d:\Program Files\Microsoft VS Code\resources\app\out\vs\workbench\api\node\extensionHostProcess.js:104:28749)
    at Function._load (d:\Program Files\Microsoft VS Code\resources\app\out\vs\workbench\api\node\extensionHostProcess.js:99:61429)
    at Module.require (node:internal/modules/cjs/loader:1059:19)
    at require (node:internal/modules/cjs/helpers:102:18)
    at Object.<anonymous> (d:\abaprfc\node_modules\node-rfc\lib\wrapper\noderfc-bindings.js:36:49)
    at Module._compile (node:internal/modules/cjs/loader:1163:14)
    at Object..js (node:internal/modules/cjs/loader:1216:10)
    at Module.load (node:internal/modules/cjs/loader:1035:32)
    at node:internal/modules/cjs/loader:876:12
    at Function.<anonymous> (node:electron/js2c/asar_bundle:5:13331)
    at Function.<anonymous> (d:\Program Files\Microsoft VS Code\resources\app\out\vs\workbench\api\node\extensionHostProcess.js:104:32156)
    at Function.<anonymous> (d:\Program Files\Microsoft VS Code\resources\app\out\vs\workbench\api\node\extensionHostProcess.js:104:28749)
    at Function._load (d:\Program Files\Microsoft VS Code\resources\app\out\vs\workbench\api\node\extensionHostProcess.js:99:61429)
    at Module.require (node:internal/modules/cjs/loader:1059:19)
    at require (node:internal/modules/cjs/helpers:102:18)
    at Object.<anonymous> (d:\abaprfc\node_modules\node-rfc\lib\index.js:20:14)
    at Module._compile (node:internal/modules/cjs/loader:1163:14)
    at Object..js (node:internal/modules/cjs/loader:1216:10)
    at Module.load (node:internal/modules/cjs/loader:1035:32)
    at node:internal/modules/cjs/loader:876:12
    at Function.<anonymous> (node:electron/js2c/asar_bundle:5:13331)
    at Function.<anonymous> (d:\Program Files\Microsoft VS Code\resources\app\out\vs\workbench\api\node\extensionHostProcess.js:104:32156)
    at Function.<anonymous> (d:\Program Files\Microsoft VS Code\resources\app\out\vs\workbench\api\node\extensionHostProcess.js:104:28749)
    at Function._load (d:\Program Files\Microsoft VS Code\resources\app\out\vs\workbench\api\node\extensionHostProcess.js:99:61429)
    at Module.require (node:internal/modules/cjs/loader:1059:19)
    at require (node:internal/modules/cjs/helpers:102:18)
    at d:\abaprfc\out\extension.js:9:29
    at m._executeContributedCommand (d:\Program Files\Microsoft VS Code\resources\app\out\vs\workbench\api\node\extensionHostProcess.js:85:30760)
    at m.$executeContributedCommand (d:\Program Files\Microsoft VS Code\resources\app\out\vs\workbench\api\node\extensionHostProcess.js:85:31302)
    at i._doInvokeHandler (d:\Program Files\Microsoft VS Code\resources\app\out\vs\workbench\api\node\extensionHostProcess.js:89:13826)
    at i._invokeHandler (d:\Program Files\Microsoft VS Code\resources\app\out\vs\workbench\api\node\extensionHostProcess.js:89:13510)
    at i._receiveRequest (d:\Program Files\Microsoft VS Code\resources\app\out\vs\workbench\api\node\extensionHostProcess.js:89:12171)
    at i._receiveOneMessage (d:\Program Files\Microsoft VS Code\resources\app\out\vs\workbench\api\node\extensionHostProcess.js:89:10841)
    at d:\Program Files\Microsoft VS Code\resources\app\out\vs\workbench\api\node\extensionHostProcess.js:89:8947
    at u.invoke (d:\Program Files\Microsoft VS Code\resources\app\out\vs\workbench\api\node\extensionHostProcess.js:58:145)
    at v.fire (d:\Program Files\Microsoft VS Code\resources\app\out\vs\workbench\api\node\extensionHostProcess.js:58:1856)
    at d.fire (d:\Program Files\Microsoft VS Code\resources\app\out\vs\workbench\api\node\extensionHostProcess.js:66:19034)
    at d:\Program Files\Microsoft VS Code\resources\app\out\vs\workbench\api\node\extensionHostProcess.js:104:34275
    at u.invoke (d:\Program Files\Microsoft VS Code\resources\app\out\vs\workbench\api\node\extensionHostProcess.js:58:145)
    at v.fire (d:\Program Files\Microsoft VS Code\resources\app\out\vs\workbench\api\node\extensionHostProcess.js:58:1856)
    at d.fire (d:\Program Files\Microsoft VS Code\resources\app\out\vs\workbench\api\node\extensionHostProcess.js:66:19034)
    at o._receiveMessage (d:\Program Files\Microsoft VS Code\resources\app\out\vs\workbench\api\node\extensionHostProcess.js:66:23615)
    at d:\Program Files\Microsoft VS Code\resources\app\out\vs\workbench\api\node\extensionHostProcess.js:66:21149
    at u.invoke (d:\Program Files\Microsoft VS Code\resources\app\out\vs\workbench\api\node\extensionHostProcess.js:58:145)
    at v.fire (d:\Program Files\Microsoft VS Code\resources\app\out\vs\workbench\api\node\extensionHostProcess.js:58:1856)
    at v.acceptChunk (d:\Program Files\Microsoft VS Code\resources\app\out\vs\workbench\api\node\extensionHostProcess.js:66:15865)
    at d:\Program Files\Microsoft VS Code\resources\app\out\vs\workbench\api\node\extensionHostProcess.js:66:14995
    at Socket.P (d:\Program Files\Microsoft VS Code\resources\app\out\vs\workbench\api\node\extensionHostProcess.js:104:13797)
    at Socket.emit (node:events:390:28)
    at addChunk (node:internal/streams/readable:315:12)
    at readableAddChunk (node:internal/streams/readable:289:9)
    at Socket.push (node:internal/streams/readable:228:10)
    at Pipe.onStreamRead (node:internal/stream_base_commons:199:23)
    at Pipe.callbackTrampoline (node:internal/async_hooks:130:17) {code: 'ERR_DLOPEN_FAILED', stack: 'Error: Procedura inicjowania biblioteki do³¹c…Trampoline (node:internal/async_hooks:130:17)', message: 'Procedura inicjowania biblioteki do³¹czanej …0",
    "microsoft-build": "12680806"
  }
}
'}



Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source