如何使用 COM 元件,使用 Visual C#.NET 的 Visual Studio.NET 中或在 Visual C# 2005 的 Visual Studio 2005 中

重要:本文是以 Microsoft 機器翻譯軟體翻譯而成,而非使用人工翻譯而成。Microsoft 同時提供使用者人工翻譯及機器翻譯兩個版本的文章,讓使用者可以依其使用語言使用知識庫中的所有文章。但是,機器翻譯的文章可能不盡完美。這些文章中也可能出現拼字、語意或文法上的錯誤,就像外國人在使用本國語言時可能發生的錯誤。Microsoft 不為內容的翻譯錯誤或客戶對該內容的使用所產生的任何錯誤或損害負責。Microsoft也同時將不斷地就機器翻譯軟體進行更新。

按一下這裡查看此文章的英文版本:816152
結論
本文將逐步告訴您,如何使用 「 COM 元件從 Microsoft Visual Studio.NET 中使用 Microsoft Visual C#.NET,或在使用 Microsoft Visual C# 2005 Microsoft Visual Studio 2005 中。

back to the top

需求

下列清單列出建議的硬體、 軟體、 網路基礎結構和您可能需要 Service Pack:
  • Visual C#.NET 或 Visual C# 2005

本文假設您已熟悉下列主題:
  • Visual C#.NET 或 Visual C# 2005
  • COM
back to the top

使用從 Visual Studio.NET 的 COM 元件

您可以使用 Microsoft Visual Studio.NET 程式碼中的 COM 元件從使用 Microsoft.NET Framework 元件物件模型 (COM) 互通性階層 (或 COM Interop)。使用 Visual Studio.NET 或 Visual Studio 2005,您可以輕鬆地存取並使用 COM 元件。

附註本文使用簡單的 COM 元件命名 MyCOMComponent 供示範之用。這個元件包含單一類別,類別 1,使用單一的方法 [新增]Add 方法將兩個數字相加,並傳回總和。請參閱 "Complete Code Listing for MyCOMComponent" 用於來源之程式碼的 < > 一節此元件。本文中所使用的技術套用到任何 COM 元件。
  1. 啟動 Microsoft Visual Basic 6.0。
  2. 建立名為 MyCOMComponent 一個新 ActiveX Dll
  3. 類別 1 中貼上下列代碼]
    'Sample COM Component Source Code'Written in Visual Basic 6.0''Project Name: MyCOMComponent'Project Type: COM DLL'File Name: MyCOMComponent.dll''Class Name: Class1Option ExplicitPublic Function Add(ByVal Num1 As Long, ByVal Num2 As Long) As Long  Add = Num1 + Num2End Function
    視窗。
  4. 在 [檔案] 功能表上按一下 製成 MyCOMComponent.dll
  5. 建立專案] 對話方塊中,按一下 [確定]。 建立 MyCOMComponent.Dll。
  6. 關閉 Microsoft Visual Basic 6.0。
  7. 啟動 Microsoft Visual Studio.NET 或 Microsoft Visual Studio 2005。在 Visual C#.NET 中或在 Visual C# 2005年中建立新的 主控台應用程式,並命名 MyCOMClient 專案。
  8. 在 [專案] 功能表上按一下 [加入參考]。
  9. 在 [加入參考] 對話方塊中,按一下 [COM] 索引標籤通知 清單檢視 控制項列出所有 COM 元件登錄在本機電腦的字母順序排列。
  10. 找不到,和選取 MyCOMComponent.dll 檔案,按一下 [開啟舊檔,],然後再按一下 [確定] 以關閉對話方塊]。

    附註 在 Visual 的 Studio 2005 中您不必按一下 [開啟]
  11. 在 [類別 1 程式碼] 視窗中將下列程式碼加入至 Main 函式:
    int mySum = 0;MyCOMComponent.Class1Class  myCOM = new MyCOMComponent.Class1Class();mySum = myCOM.Add(1,2);Console.Write("1 + 2 = {0}", mySum.ToString());Console.ReadLine();
  12. 在 [偵錯] 功能表上按一下 [[開始],以建置並執行應用程式]。

    主控台視窗中顯示下列輸出:
    1 + 2 = 3
back to the top

完整的 Visual C#.NET 程式碼清單

using System;namespace MyCOMClient{	/// <summary>	/// Summary description for Class1.	/// </summary>	class Class1	{		/// <summary>		/// The main entry point for the application.		/// </summary>		[STAThread]		static void Main(string[] args)		{			int mySum = 0;			MyCOMComponent.Class1Class  myCOM = new MyCOMComponent.Class1Class();			mySum = myCOM.Add(1,2);			Console.Write("1 + 2 = {0}", mySum.ToString());			Console.ReadLine();		}	}}
back to the top

完成 For MyCOMComponent 的程式碼清單

'Sample COM Component Source Code'Written in Visual Basic 6.0''Project Name: MyCOMComponent'Project Type: COM DLL'File Name: MyCOMComponent.dll''Class Name: Class1Option ExplicitPublic Function Add(ByVal Num1 As Long, ByVal Num2 As Long) As Long  Add = Num1 + Num2End Function
back to the top

疑難排解

如同任何的 COM 元件中,您必須註冊 MyCOMComponent 才能使用它們。請確定您在註冊 MyCOMComponent 使用 Regsvr32.exe 等工具。

back to the top
参考
如需詳細資訊請造訪下列 Microsoft 開發 o 人 h 員 û 工 u 具 ã 網路 (MSDN) 網站]:
back to the top

警告:本文為自動翻譯

內容

文章識別碼:816152 - 最後檢閱時間:05/16/2007 07:42:40 - 修訂: 2.5

Microsoft Visual C# 2005 Express Edition, Microsoft Visual C# .NET 2003 標準版, Microsoft Visual C# .NET 2002 Standard Edition

  • kbmt kbcontrol kbwindowsforms kbcominterop kbinterop kbhowtomaster KB816152 KbMtzh
意見反應