如何从C#应用程序调用COM-DLL?

时间:2010-11-03 13:00:39

标签: c# com

您好 我有一个在ATL中实现的COM DLL,现在我想在C#中开发一个测试exe来测试这些功能。

如何从C#应用程序调用COM-DLL?

我已经使用LoadLibrary()进行了测试,但AFAIK这是针对Win32本机DLL的。另外我不确定在LoadLibrary()中某处调用CoCreateInstance?

[DllImport("kernel32.dll", CharSet = CharSet.Auto)]
  static extern IntPtr LoadLibrary(string lpFileName);

        private int LoadDLL()
        {
            dllPath = lblDllPath.Text;
            int i_hmod = 0;
            IntPtr hMod = LoadLibrary(dllPath);
            i_hmod = hMod.ToInt32();
            if (i_hmod > 0)
            {
                txtOutput.Text += "Dll successfully loaded\r\n";
            }
            else
            {
                txtOutput.Text += "LoadLibrary failed\r\n";
            }
            return i_hmod;
        }

日Thnx

1 个答案:

答案 0 :(得分:3)

您应该能够直接向DLL项目添加对DLL的引用 - 将创建一个包装器,您可以调用将委派给COM组件的包装器方法。