electron-vue 使用dll

568 阅读1分钟

electron-vue使用dll 需要通过ffi 我这里使用的是ffi-napi

npm i ffi-napi

在vue中dll不会直接直接打包需要配置,在vue.config.vue中加入一下配置

 pluginOptions: {
    electronBuilder: {
      nodeIntegration: true,//让渲染进程可以使用node
      externals: ["ffi-napi"],
      builderOptions: {
        extraResources: [
          // 拷贝静态文件到指定位置,否则打包之后出现找不到资源的问题.将整个resources目录拷贝到 发布的根目录下
          {
            from: "./dll",
            to: "./dll",
          },
        ],
      },
    },
  },

将dll文件夹放在根目录 使用

 
    var dllpath = "dll/dllName.dll";
    if (process.env.NODE_ENV == "production") {
      dllpath = path.resolve(__dirname, "dll/dllName.dll");
    }

    let Dll = ffi.Library(dllpath, {     
    });

这里使用定义的Dll库就成功了,剩下的就是调用dll库的api了