使用VBA打开C#表单(.dll)(Access 2010)

时间:2016-07-20 16:27:44

标签: c# vba access

我有一个简单的"登录"屏幕在C#中用户将按下登录,另一个窗口弹出欢迎,并在我在Visual Studio上运行时运行。

这是代码

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace Login_Test
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void button1_Click(object sender, EventArgs e)
        {
            MessageBox.Show("Welcome");
            this.Close();
        }
    }
}

我还有一个VBA表单(Access 2010),用户将单击一个按钮,然后将弹出C#表单,而不是说" welcome"它将重定向到Access中的其他表单。

以下是VBA按钮的代码:

Private Sub Command284_Click()
    Dim objLog As Login_Test.Form1
    Set objLog = New Login_Test.Form1
End Sub

我已经使用了.dll,.tlb,使用了regasm,并在Access上引用了它。

我得到:"运行时错误429 activex组件无法创建对象"按下按钮时。

我错过了什么吗?

1 个答案:

答案 0 :(得分:1)

在管理员模式下启动开发人员命令提示符,运行此synatx:

regasm.exe Login_Test.dll /tlb /CodeBase

您可以将Login_test.dll保留在任何位置,只需在命令中提供完整路径即可。