Bạn hiện đang ngoại tuyến, hãy chờ internet để kết nối lại

Làm thế nào để gọi một Visual Basic.NET hoặc Visual Basic 2005 hội từ Visual Basic 6.0

QUAN TRỌNG: Bài viết này được dịch bằng phần mềm dịch máy của Microsoft chứ không phải do con người dịch. Microsoft cung cấp các bài viết do con người dịch và cả các bài viết do máy dịch để bạn có thể truy cập vào tất cả các bài viết trong Cơ sở Kiến thức của chúng tôi bằng ngôn ngữ của bạn. Tuy nhiên, bài viết do máy dịch không phải lúc nào cũng hoàn hảo. Loại bài viết này có thể chứa các sai sót về từ vựng, cú pháp hoặc ngữ pháp, giống như một người nước ngoài có thể mắc sai sót khi nói ngôn ngữ của bạn. Microsoft không chịu trách nhiệm về bất kỳ sự thiếu chính xác, sai sót hoặc thiệt hại nào do việc dịch sai nội dung hoặc do hoạt động sử dụng của khách hàng gây ra. Microsoft cũng thường xuyên cập nhật phần mềm dịch máy này.

Nhấp chuột vào đây để xem bản tiếng Anh của bài viết này:817248
GIỚI THIỆU
Bài viết này mô tả cách sử dụng Microsoft Visual Basic.NET hoặc Microsoft Visual Basic 2005 để xây dựng một hội đồng quản lý mà có thể được gọi là từ Microsoft Visual Basic 6.0.
THÔNG TIN THÊM

Hướng dẫn để lộ.NET loại để COM

Khi bạn muốn để lộ các loại trong một Microsoft.Quốc hội NET để Thành phần đối tượng mô hình (COM) các ứng dụng, hãy xem xét sau đây COM interop yêu cầu thiết kế thời. Quản lý loại)lớp học, giao diện, struct, Enumvà những người khác) tương tác tốt với các ứng dụng khách hàng COM khi bạn thực hiện theo các hướng dẫn này:
  • Xác định giao diện và thực hiện chúng một cách rõ ràng trong các lớp học. COM interop cung cấp một cơ chế để tự động tạo ra một giao diện đó chứa tất cả các thành viên của các lớp học và các thành viên của lớp cơ sở. Tuy nhiên, It's tốt nhất để cung cấp giao diện rõ ràng và thực hiện chúng một cách rõ ràng.
  • Tuyên bố được quản lý tất cả các loại mà bạn muốn để lộ cho COM như công cộng. Chỉ công cộng loại trong một hội đồng được đăng ký và xuất khẩu sang các loại thư viện. Vì vậy, chỉ có các loại công cộng được hiển thị cho COM.
  • Tuyên bố tất cả các loại thành viên (phương pháp, tài sản, các lĩnh vực, và sự kiện) mà bạn muốn để lộ cho COM là công cộng. Các thành viên của loại hình công cộng phải cũng được công chúng được hiển thị cho COM. Bởi mặc định, tất cả các loại công cộng và các thành viên có thể nhìn thấy. Sử dụng các ComVisibleAttribute thuộc tính nếu bạn có để ẩn một loại hoặc một thành viên từ kiểm soát loại hoặc tài khoản của tầm nhìn cho các ứng dụng khách hàng COM.
  • Loại phải có nhà xây dựng công cộng mặc định là instantiated qua COM. Managed, loại hình công cộng có thể nhìn thấy COM. Tuy nhiên, Nếu không có một nhà xây dựng công cộng mặc định (một nhà xây dựng mà không có đối số), COM khách hàng không thể tạo ra một thể loại. COM khách hàng vẫn có thể sử dụng các gõ nếu các loại instantiated theo cách khác và trường hợp là quay trở lại máy sử dụng COM. Bạn có thể bao gồm các nhà thầu bị quá tải chấp nhận khác nhau đối số cho các loại. Tuy nhiên, nhà thầu chấp nhận đối số có thể chỉ được gọi là từ quản lý (.NET) mã.
  • Loại không thể trừu tượng. Không phải khách hàng COM cũng không.NET khách hàng có thể tạo thể hiện của các loại trừu tượng.
  • Sử dụng các COMClass tiêu bản bằng Visual Basic.NET hay Visual Basic 2005. Khi bạn thêm một lớp mới mà bạn dự định sẽ phơi bày cho các ứng dụng COM, xem xét việc sử dụng các COMClass bản mẫu được cung cấp bởi Visual Basic.NET hay bởi Visual Basic 2005. COMClass tiêu bản tạo ra một lớp học bao gồm các COMClassAttribute thuộc tính và tạo ra các GUIDs cho CLSID, giao diện ID, và ID sự kiện tiếp xúc của loại hình của bạn. Ngoài ra, các COMClass tiêu bản tạo ra một nhà xây dựng công cộng mà không có tham số. Điều này là cách dễ nhất để tạo ra một lớp mới mà sau các nguyên tắc cho việc tạo ra COM callable loại.

Đăng ký các.NET Cynulliad Cenedlaethol COM interop và tạo ra một thư viện kiểu

Cho Visual Basic 6.0 thành công tương tác với một quản lý thành phần, bạn phải đăng ký hội đồng cho COM interop và tạo ra một loại thư viện. Đăng ký này phải được thực hiện trên mỗi máy tính trong trường hợp một COM ứng dụng khách hàng tương tác với hội đồng. Thư viện loại cung cấp loại thông tin về các loại tiếp xúc với trong hội đồng cho các ứng dụng khách hàng COM. Quá trình cho việc này phụ thuộc vào nếu bạn đang làm việc trên sự phát triển máy tính hoặc trên máy tính đích.

Trên máy tính phát triển, Microsoft Visual Studio.NET hoặc Microsoft Visual Studio 2005 tự động tạo ra một thư viện kiểu và đăng ký nó trong quá trình xây dựng nếu các Đăng ký cho COM Interop kiểm tra hộp được chọn theo các của dự án Cấu hình bất động sản. Nếu bạn sử dụng các COMClass tiêu bản khi bạn tạo lớp, Visual Studio.NET hoặc thị giác Studio 2005 tự động chọn các Đăng ký cho COM Interophộp kiểm. Để xác minh rằng các Đăng ký cho COM Interop kiểm tra hộp được chọn trong Visual Studio.NET hoặc trong Visual Studio 2005, làm theo các bước sau:
  1. Bắt đầu Visual Studio.NET hoặc Visual Studio 2005.
  2. Mở các giải pháp có chứa các dự án mà bạn muốn để xây dựng cho COM interop.
  3. Trên các Xem trình đơn, nhấp vào Giải pháp Thám hiểm.
  4. Trong giải pháp Explorer, bấm chuột phải vào các dự án mà bạn muốn để xây dựng cho COM interop, và sau đó nhấp vàoThuộc tính.
  5. Nhấp vào Cấu hình thuộc tính, và sau đó bấm vào các Xây dựng nút.

    Chú ý Trong Visual Studio 2005, nhấp vào Biên dịch ở bên trái ngăn.
  6. Nhấn vào đây để chọn các Đăng ký cho COM Tương hỗ hộp kiểm. Tùy chọn này chỉ khả dụng trong lớp học thư viện các dự án.
  7. Nhấp vào Ok để đóng những Bất động sản Các trang hộp thoại.
Nếu Visual Studio.NET hoặc Visual Studio 2005 không được cài đặt hoặc Nếu bạn đã tự tạo ra và đăng ký một kiểu tập tin thư viện (.tlb) cho Hội đồng quản lý, sử dụng đăng ký hội công cụ (RegAsm.exe) với các / TLB chuyển đổi. Bạn cũng nên sử dụng các / Codebase chuyển đổi nếu hội đồng quản lý là một hội đồng tư nhân và bạn có ý định đưa hội đồng được quản lý trong một thư mục khác nhau từ quá trình máy chủ lưu trữ (EXE).

Một hội đồng tư nhân được triển khai với một ứng dụng và sẵn sàng cho việc sử dụng độc quyền của ứng dụng đó. Các ứng dụng khác không chia sẻ hội đồng tư nhân. Hội đồng tư nhân được thiết kế để được cài đặt vào thư mục tương tự như quá trình máy chủ lưu trữ (EXE). Với một ứng dụng khách COM, Điều này có nghĩa rằng hội đồng nằm trong thư mục tương tự như ứng dụng đó. Một hội đồng được chia sẻ là có sẵn để sử dụng bởi nhiều ứng dụng trên các máy tính. Để tạo ra một hội đồng được chia sẻ, bạn phải đăng nhập hội đồng với một mạnh mẽ tên và cài đặt lắp ráp vào bộ nhớ Cache hội toàn cầu (GẤC) trên các máy tính đích.

Cho biết thêm thông tin về làm thế nào để đăng các lắp ráp một mạnh mẽ tên và cài đặt lắp ráp vào hội đồng toàn cầu Bộ nhớ cache (GẤC), ghé thăm Web site sau của Microsoft:Bạn nên sử dụng cả các /TLB: chuyển đổi và các / Codebase chuyển đổi khi bạn đăng ký hội đồng. Các /TLB: chuyển đổi tạo ra và đăng ký thư viện kiểu, và các / Codebase chuyển đổi đăng ký vị trí của hội đồng được quản lý trong các Windows registry. Nếu bạn không sử dụng các / Codebase chuyển đổi và hội đồng đã không được cài đặt vào toàn cầu Lắp ráp Cache (GẤC), bạn phải đặt một bản sao của lắp ráp vào thư mục của mỗi ứng dụng khách COM (EXE) để các hội đồng có thể được định vị bằng các phổ biến ngôn ngữ runtime (CLR).

Để tạo và đăng ký thư viện kiểu và đăng ký với vị trí của hội đồng quản lý, gõ lệnh sau đây tại dấu nhắc lệnh:
Regasm AssemblyName.dll /TLB: FileName.tlb / codebase

Tạo một COM callable hội trong Visual Basic.NET

  1. Bắt đầu Visual Studio.NET hoặc Visual Studio 2005.
  2. Trên các Tệp trình đơn, điểm đếnMới, sau đó bấm Dự án.
  3. Dưới Các loại dự án, bấm Thị giác Các dự án cơ bản.

    Chú ý Cú nhấp chuột trực quan Studio2005 Visual Basic dướiCác loại dự án.
  4. Dưới Khuôn mẫu, bấm Lớp học Thư viện.
  5. Tên dự án TestProj, và sau đó bấm vàoOk.

    Theo mặc định, Class1 được tạo ra.
  6. Trên các Xem trình đơn, nhấp vào Giải pháp Thám hiểm.
  7. Nhấp chuột phải Class1.VB, sau đó bấmXóa bỏ. Nhấp vào Ok xác nhận xoá của Class1.vb nguồn tập tin.
  8. Trên các Dự án trình đơn, nhấp vào Thêm Lớp học.
  9. Dưới Khuôn mẫu, bấm COM Lớp học.
  10. Tên lớp COMClass1.vb, và sau đó bấm vàoMở

    COMClass1 được tạo ra với đoạn mã sau.
    <ComClass(ComClass1.ClassId, ComClass1.InterfaceId, ComClass1.EventsId)> _Public Class ComClass1#Region "COM GUIDs"    ' These  GUIDs provide the COM identity for this class     ' and its COM interfaces. If you change them, existing     ' clients will no longer be able to access the class.    Public Const ClassId As String = "6DB79AF2-F661-44AC-8458-62B06BFDD9E4"    Public Const InterfaceId As String = "EDED909C-9271-4670-BA32-109AE917B1D7"    Public Const EventsId As String = "17C731B8-CE61-4B5F-B114-10F3E46153AC"#End Region    ' A creatable COM class must have a Public Sub New()     ' without parameters. Otherwise, the class will not be     ' registered in the COM registry and cannot be created     ' through CreateObject.    Public Sub New()        MyBase.New()    End SubEnd Class
  11. Thêm các chức năng sau đây để COMClass1.
       Public Function myFunction() As Integer      Return 100   End Function
  12. Trong giải pháp Explorer, bấm chuột phải vàoTên dự án, sau đó bấmThuộc tính.
  13. Dưới Cấu hình thuộc tính, bấmXây dựng.
  14. Xác minh rằng các Đăng ký cho COM Interophộp kiểm chọn và bấm Ok.
  15. Trên các Xây dựng trình đơn, nhấp vào Xây dựng Giải pháp để xây dựng các dự án.
  16. Bắt đầu Visual Basic 6.0.
  17. Trên các Tệp trình đơn, nhấp vào Mới Dự án, và sau đó bấm vào để chọn Tiêu chuẩn EXE trong cácDự án mới hộp thoại.

    Theo mặc định, một hình thức đó là tên Form1 được tạo ra.
  18. Trên các Dự án trình đơn, nhấp vàoTham khảo.
  19. Trong các Tài liệu tham khảo có sẵn danh sách, bấm đúp vào để chọn TestProj, sau đó bấmOk.
  20. Thêm một nút lệnh mẫu.
  21. Bấm đúp Command1 để mở mã cửa sổ.
  22. Thêm mã sau đây để các Command1_Click sự kiện.
    Dim myObject As TestProj.COMClass1Set myObject = New TestProj.COMClass1MsgBox myObject.myFunction
  23. Trên các Chạy trình đơn, nhấp vàoBắt đầu.
  24. Nhấp vào nút lệnh.

    Bạn sẽ nhận được một tin nhắn có hiển thị 100.
THAM KHẢO
Để biết thêm chi tiết, hãy truy cập trang Web Microsoft sau đây Trang web:
Interoperating với không được quản lý mã
http://msdn2.Microsoft.com/en-US/Library/sd10k43k (vs.71) .aspx

Cảnh báo: Bài viết này đã được dịch tự động

Thuộc tính

ID Bài viết: 817248 - Xem lại Lần cuối: 08/28/2011 11:00:00 - Bản sửa đổi: 2.0

Microsoft Visual Basic 2005, Microsoft Visual Basic .NET 2003 Standard Edition, Microsoft Visual Basic .NET 2002 Standard Edition, Microsoft Visual Basic 6.0 Professional Edition, Microsoft .NET Framework 2.0, Microsoft .NET Framework 1.1, Microsoft .NET Framework 1.0

  • kbvs2005applies kbvs2005swept kbnamespace kbdll kbcominterop kbinterop kbautomation kbhowtomaster kbmt KB817248 KbMtvi
Phản hồi