electron-vue跨平台桌面应用开发实战教程(八)——edgejs调用C# dll

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

本文链接:https://blog.csdn.net/David1025/article/details/104502313

本文来介绍下怎么使用electron-edge-js来调用C#动态链接库,由于是调用C#动态链接库,所以也只能在windows平台上使用,这一点需要注意

在开始之前,同样需要安装node-gyp和windows-build-tools,具体安装方法请参照上一篇

1.安装electron-edge-js

  1. npm install electron-edge-js --save

2.准备C# dll文件

dll文件请去gitee中获取,这里没办法上传
electron-vue-demos

3.调用dll中方法

因为是windows专属功能,这里我们要放到windows的判断中

  1. // 只在windows平台下加载
  2. edge = require('electron-edge-js')
  3. invoke = edge.func({
  4. assemblyFile: path.resolve('resources/dll/electronedge.dll'),
  5. typeName: 'electronedge.Class1',
  6. methodName: 'Invoke'
  7. })

具体调用方法

  1. if (process.platform === 'win32') {
  2. invoke('这是自定义字符串', function (err, val) {
  3. if (err) throw err
  4. console.log(val)
  5. this.$message({
  6. message: 'dll返回的内容为:' + val,
  7. type: 'success'
  8. })
  9. })
  10. } else {
  11. this.$notify.error({
  12. title: '错误',
  13. message: '此功能为windows专属功能,mac无法使用'
  14. })
  15. }

但是这个时候我们运行程序就会报这个错
在这里插入图片描述
这个时候我们需要做以下处理:
在vue.config.js文件中增加

  1. externals: ['electron-edge-js']

这个时候我们程序就运行正常了

更多内容请关注公众号
在这里插入图片描述