乐筑天下

搜索
欢迎各位开发者和用户入驻本平台 尊重版权,从我做起,拒绝盗版,拒绝倒卖 签到、发布资源、邀请好友注册,可以获得银币 请注意保管好自己的密码,避免账户资金被盗
查看: 48|回复: 0

vba调用c#函数

[复制链接]

5

主题

5

帖子

3

银币

初来乍到

Rank: 1

铜币
25
发表于 2021-11-23 00:02:00 | 显示全部楼层 |阅读模式
Vba 如何调用c# 函数
先看三个网站
1 COM 类示例2   vba调用c#dll 3   Regasm.exe(程序集注册)COM注册命令 实例:代码 using System;using System.Runtime.InteropServices;using System.Text;namespace ClassLibrary6{   public class Class1   {       [Guid("EAA4976A-45C3-4BC5-BC0B-E474F4C3C83F")]       public interface ComClass1Interface       {            [DispId(1)]            double Fwj(double x1, double y1, double x2, double y2);       }        [Guid("7BD20046-DF8C-44A6-8F6B-687FAA26FA71"),            InterfaceType(ComInterfaceType.InterfaceIsIDispatch)]       public interface ComClass1Events       {       }        [Guid("0D53A3E8-E51A-49C7-944E-E72A2064F938"),           ClassInterface(ClassInterfaceType.None),            ComSourceInterfaces(typeof(ComClass1Events))]       public class ComClass1 : ComClass1Interface       {            public double Fwj(double x1, double y1, double x2, double y2)            {                double Fwj;                double PI = 3.1415926;                double dx = x2 - x1;                double dy = y2 - y1 +0.0000000001;                Fwj = PI - Math.Sign(dy) * PI /2 - Math.Atan(dx / dy);                 return Fwj;            }       }   }} 注册com在视图终端中输入 sn –k ClassLibrary6.snk 对com进行注册在ClassLibrary6目录下生成一个 ClassLibrary6.snk,把ClassLibrary6.snk拷贝到 ClassLibrary6目录下的ClassLibrary6文件中打开AssemblyInfo.cs。在里面加入[assembly:AssemblyKeyFile("ClassLibrary6 项目属性->应用程序->程序集信息->选中“使程序集COM可见项目属性->生成->选中“为COM互操作注册” 生成解决方案在debug文件中生成三个文件file:///C:/Users/flz/AppData/Local/Temp/msohtmlclip1/01/clip_image003.png在代码中new 一个对象就可以调用这个c#的函数了。
Sub jjj()
Dim o As New ClassLibrary6.ComClass1
s = o.Fwj(1, 1, 10, 10)
MsgBox s
End Sub

本帖以下内容被隐藏保护;需要你回复后,才能看到!

游客,如果您要查看本帖隐藏内容请回复
回复

使用道具 举报

发表回复

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

QQ|关于我们|小黑屋|乐筑天下 繁体中文

GMT+8, 2024-11-22 02:10 , Processed in 0.136472 second(s), 54 queries .

© 2020-2024 乐筑天下

联系客服 关注微信 帮助中心 下载APP 返回顶部 返回列表