Java调用C#编写的DLL

目录

1.编写DLL

1.1新建项目(Visual Studio)

 1.2编写测试用例

 1.3生成解决方案,导出DLL

 1.4第一次生成解决方案时报错的处理办法

 2.本地注册DLL

2.1下载jacob-1.18(下载地址如下)

2.2将jacob-1.18-x64.dll放到C:\Windows\System32文件夹下

 2.3注册自己写的组件

 3.java调用

3.1pom.xml引入jar包

3.2程序调用

 4.记录调用dll时的报错及解决办法

4.1com.jacob.com.ComFailException: Can't map name to dispid

4.2com.jacob.com.ComFailException: Can't co-create object

4.3com.jacob.com.ComFailException: Can't get object clsid from progid

1.编写DLL

1.1新建项目(Visual Studio)

 

 1.2编写测试用例

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace MyTest
{
    public class TestClass
    {
        /**
         * public TestClass()测试用例 传入两个整数,返回两个整数之和
         * 此方法不能用static修饰,不然在java端调用时会报错
         * com.jacob.com.ComFailException: Can't map name to dispid:sum
         */
        public int sum(int a, int b) {
            int tem = a + b;
            return tem;
        }
    }
}

 1.3生成解决方案,导出DLL

以下设置必须要有,不然会在注册dll的时候不提示“成功注册了类型”

 生成-生成解决方案

 1.4第一次生成解决方案时报错的处理办法

1.4.1出现“无法注册程序集dll- 拒绝访问。请确保您正在以管理员身份运行应用程序。对注册表项的访问被拒绝

WIN+R,运行对话框中输入gpedit.msc,开启

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

New 对象()

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值