C#COM互操作库
我目前正在将遗留的VBA应用程序移植到.Net应用程序。在此过程中,现有VBA应用程序的用户需要添加一些功能。因此,我没有在VBA中编写它们&然后在C#中编写它们,而是在C#中编写了新功能,我希望通过COM将其公开给现有的VBA应用程序,并将其保留在当前的.Net应用程序版本中 该解决方案包含几个项目,一个用于UI的项目,一个用于业务逻辑的项目,一个用于数据访问层的项目 这些新特性只是修改数据的一些新表单的一个例子。因此,理想情况下,他们会单击access中的表单命令按钮,通过COM互操作访问这些C#表单 我应该如何通过COM互操作公开这些表单。 我希望做的只是添加另一个项目MyProject.COM,它将包含我的接口ICOMManager,用于向access公开方法以启动所需的表单。我的CommManager类将只是在.net应用程序中实例化所需的表单并显示它们。 此项目MyProject.COM将引用UI层和业务逻辑层 当我想使用REGASM注册此项目时,我将如何包括对这些其他项目的引用C#COM互操作库,c#,vba,com,interop,regasm,C#,Vba,Com,Interop,Regasm,我目前正在将遗留的VBA应用程序移植到.Net应用程序。在此过程中,现有VBA应用程序的用户需要添加一些功能。因此,我没有在VBA中编写它们&然后在C#中编写它们,而是在C#中编写了新功能,我希望通过COM将其公开给现有的VBA应用程序,并将其保留在当前的.Net应用程序版本中 该解决方案包含几个项目,一个用于UI的项目,一个用于业务逻辑的项目,一个用于数据访问层的项目 这些新特性只是修改数据的一些新表单的一个例子。因此,理想情况下,他们会单击access中的表单命令按钮,通过COM互操作访问这
感谢您提供的帮助或建议。啊,好的,所以我觉得这比我想象的要容易得多 查看regasm生成的reg文件后,我发现tlb(类型库)只是一个指针,它可以找到执行.Net组件的库 因此,一旦我注册了tlb,并确保它指向其他项目文件所在的安装目录,它就可以工作了