我想從VB 6調用C#COM對象,並且出現錯誤:453,指出很難找到DLL的入口點。 我將c#中的所有模塊製作爲public,我的COM可見性爲TRUE,並註冊了我的.dll文件,並且我有類型庫文件可用,並且還調用P/Invoke調用。仍然我收到錯誤。我貼我的代碼如下試圖從VB 6調用C#COM對象6
VB6:
Private Declare Function DisplayCForm Lib "C:\Users\LP027077\Documents\Visual Studio 2010\Projects\COMWorld\COMWorld\bin\Debug\COMWorld.dll"()
Private Sub Command1_Click()
DisplayCForm
End Sub
C#:
namespace COMWorld
{
[Guid("23047247-38D3-464F-A845-0D42A7ACD622")]
[ComVisible(true)]
public class COMObject
{
[DllImport("Kernel32.dll", EntryPoint = "GetConsoleWindow",SetLastError = true)]
internal static extern IntPtr GetConsoleWindow();
public void COMModule()
{
Form f1 = new Form();
f1.Text = "Hello VB6 from c# .NET";
}
}
}
請幫我在這方面的! 在此先感謝
如果我正確地讀這篇文章,要調用從VB代碼名爲'DisplayCForm'方法,但我沒有看到該方法是在你的DLL中定義...... – PhoenixReborn
你檢查出這個答案嗎? http://stackoverflow.com/questions/1920512/help-call-c-sharp-winforms-dll-from-vb6-project – Christian
我認爲你必須設置你的函數的'別名',但它是一個很長的時間以前,因爲我用VB 6最後 – dotTutorials