Jak volat v jazyce Visual Basic.NET nebo jazyka Visual Basic 2005 sestavení z aplikace Visual Basic 6.0

Překlady článku Překlady článku
ID článku: 817248 - Produkty, které se vztahují k tomuto článku.
Rozbalit všechny záložky | Minimalizovat všechny záložky

Na této stránce

ÚVOD

Tento článek popisuje, jak pomocí jazyka Microsoft Visual Basic.NET nebo Microsoft Visual Basic 2005 sestavení spravovaného sestavení, kterou lze volat z aplikace Microsoft Visual Basic 6.0.

Další informace

Pokyny pro vystavení.NET typů com

Pokud chcete zobrazit typy v Microsoft.ČISTÉ sestavení na Aplikace Component Object Model (COM), zvažte následující volání interop modelu COM. požadavky v době návrhu. (Spravovaných typůTřída, rozhraní, Struktura, výčeta jiné) interakce s aplikacemi COM klienta při je postupujte podle těchto pokynů:
  • Definovat rozhraní a explicitně je implementace tříd. Volání interop modelu COM poskytuje mechanismus pro automatické vygenerování rozhraní, obsahuje všechny členy třídy a členy její základní třídě. Však je vhodné poskytnout explicitní rozhraní a jejich implementaci explicitně.
  • Deklarovat všechny spravované typy, které chcete vystavit com jako veřejné. Pouze veřejné typů v sestavení jsou registrovány a vyvážené do knihovnu typů. Proto jsou pouze veřejné typy viditelné modelu COM.
  • Deklarovat všechny členy typu (metody, vlastnosti, polí, a události) chcete vystavit com jako veřejné. Musí členové veřejné typy být také veřejné mají být zobrazeny na modelu COM. Ve výchozím nastavení všechny typy veřejné a členy jsou viditelné. Použít ComVisibleAttribute atribut, máte-li skrýt typ nebo člena z ovládacího prvku typ nebo člen viditelnost COM klientským aplikacím.
  • Typy musí mít veřejný výchozí konstruktor se Vytvoření instance pomocí modelu COM. spravované, veřejné typy jsou viditelné modelu COM. Však bez veřejný výchozí konstruktor (konstruktor bez argumentů) COM klienty nelze vytvořit instanci typu. COM klienti mohou stále používat Pokud je typ instance jiným způsobem a je instance vrácena, zadejte COM klienta. Mohou zahrnovat přetížená konstruktory, které přijímají různé argumenty pro tyto typy. Konstruktory, které přijímají argumenty mohou pouze volat z spravované (.Kód NET).
  • Typy nemohou být abstraktní. Žádný z klientů modelu COM ani.NET klienti mohou vytvářet instance abstraktní typy.
  • Použít COMClass Šablona v jazyce Visual Basic.NET nebo Visual Basic 2005. Pokud jste přidáte novou třídu, kterou chcete zpřístupnit aplikace modelu COM, zvažte použití na COMClass Šablona, která je zajištěna pomocí jazyka Visual Basic.NET nebo jazyka Visual Basic 2005. COMClass šablona vytvoří třída, která zahrnuje COMClassAttribute atribut a generuje GUID pro identifikátor CLSID, ID rozhraní a ID události, které jsou vystaveny podle typu. Navíc COMClass šablona vytvoří veřejný konstruktor bez parametrů. To je Nejjednodušším způsobem, jak vytvořit novou třídu, která se řídí pokyny pro vytváření COM callable typy.

Registrace.ČISTÉ sestavení pro volání interop modelu COM. a vytvoření knihovny typů

Visual Basic 6.0 úspěšně pracovat s spravovaných komponenta, je nutné zaregistrovat sestavení InterOp modelu COM. a generovat typ Knihovna. Tato registrace musí být provedena v každém počítači, kde COM klientská aplikace spolupracuje s sestavení. Knihovna typů obsahuje typ informace o vystavených typů v sestavení modelu COM klientským aplikacím. Tento proces závisí na, pokud pracujete na rozvoj počítač nebo v cílovém počítači.

V počítači, rozvoj, Microsoft Visual Studio.NET nebo Microsoft Visual Studio 2005 automaticky Vytvoří knihovnu typů a zaregistruje během procesu vytváření, pokud Registr pro volání Interop modelu COM. je zaškrtnuto políčko ve skupinovém rámečku projektu Konfigurace Vlastnosti. Pokud jste použili COMClass šablonu při vytváření třídy, Visual Studio.NET nebo Visual Automaticky vybere Studio 2005 Registr pro volání Interop modelu COM.Zaškrtávací políčko. Ověřit, zda Registr pro volání Interop modelu COM. Kontrola je zaškrtnuto v aplikaci Visual Studio.NET nebo Visual Studio 2005, postupujte kroky:
  1. Spusťte aplikaci Visual Studio.NET nebo Visual Studio 2005.
  2. Roztok obsahující projekt, který chcete otevřít sestavení InterOp modelu COM..
  3. V Zobrazení nabídky, klepněte na tlačítko Řešení Explorer.
  4. V aplikaci Solution Explorer klepněte pravým tlačítkem myši projekt, který chcete sestavit pro volání interop modelu COM a klepněte na tlačítkoVlastnosti.
  5. Klepněte na tlačítko Vlastnosti konfiguracea pak Klepněte Sestavení uzel.

    Poznámka: V aplikaci Visual Studio 2005 klepněte na tlačítko Kompilace v levém podokno.
  6. Klepnutím vyberte Registr pro COM Spolupráce Zaškrtávací políčko. Tato možnost je povolena pouze v knihovně třídy projekty.
  7. Klepněte na tlačítko OK Zavřete Vlastnost Stránky Dialogové okno.
Pokud aplikace Visual Studio.NET nebo Visual Studio 2005 není nainstalován nebo Máte-li ručně generovat a zaregistrovat soubor typu knihovny (.tlb) spravované sestavení, použití sestavení registrační nástroj (RegAsm.exe) se / TLB přepnete. Měli používat také / Codebase Přepnete-li sestavení spravovaného soukromé sestavení a hodláte umístit spravované shromáždění v jiné složce než hostitelský proces (EXE).

Soukromé sestavení nasazení aplikace a je k dispozici pro výhradní použití této aplikace. Nejsou k dispozici další aplikace Sdílejte soukromé sestavení. Soukromé sestavení jsou určeny k instalaci do stejné složky jako hostitelský proces (EXE). S aplikací modelu COM klienta To znamená, že sestavení je umístěn ve stejné složce jako aplikace. Je k dispozici pro více aplikací na sdíleném sestavení počítač. Chcete-li vytvořit sdílené sestavení, musí podepsat sestavení s silná Zadejte název a instalace sestavení do Global Assembly Cache (GAC) v cílový počítač.

Další informace o tom, jak se přihlásit sestavení se silným názvem a instalace sestavení do globální sestavení V mezipaměti (GAC), navštivte následující Web společnosti Microsoft:
http://msdn2.microsoft.com/en-us/library/xc31ft41 (vs.71) .aspx
Měli byste použít obě / TLB: Přepnout a / Codebase přepnete při registraci sestavení. Na / TLB: přepínač generuje a zaregistruje knihovny typů a / Codebase přepínač registruje umístění spravované shromáždění Registr systému Windows. Pokud nepoužíváte / Codebase přepínač a sestavení nebyl nainstalován do globální Assembly Cache (GAC), je nutné umístit kopii sestavení do vybrané složky jednotlivé klientské aplikace modelu COM (EXE) tak, že sestavení mohou nalézt společný jazykový modul runtime (CLR).

Generování a registrace knihovny typů a registraci umístění spravované shromáždění, zadejte následující příkaz: na příkazovém řádku:
Regasm AssemblyName.dll / TLB: FileName.tlb / codebase

O COM callable sestavení vytvořte v jazyce Visual Basic.NET

  1. Spusťte aplikaci Visual Studio.NET nebo Visual Studio 2005.
  2. V Soubor příkazNovýa klepněte na tlačítko Projekt.
  3. Ve skupinovém rámečku Typy projektů, klepněte na tlačítko Vizuální Základní projekty.

    Poznámka: Klepněte na Visual Studio2005 Visual Basic ve skupinovém rámečkuTypy projektů.
  4. Ve skupinovém rámečku Šablony, klepněte na tlačítko Třída Knihovna.
  5. Pojmenujte projekt TestProj a klepněte na tlačítkoOK.

    Ve výchozím nastavení je vytvořen Class1.
  6. V Zobrazení nabídky, klepněte na tlačítko Řešení Explorer.
  7. Klepněte pravým tlačítkem myši Class1.VBa klepněte na tlačítkoOdstranit. Klepněte na tlačítko OK Potvrdit odstranění zdrojový soubor Class1.vb.
  8. V Projekt nabídky, klepněte na tlačítko Přidat Třída.
  9. Ve skupinovém rámečku Šablony, klepněte na tlačítko COM Třída.
  10. Zadejte název třídy COMClass1.vb a klepněte na tlačítkoOtevřít

    COMClass1 je vytvořen s následujícím kódem.
    <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 Sub
    
    End Class
  11. Přidejte následující funkce COMClass1.
       Public Function myFunction() As Integer
          Return 100
       End Function
  12. V aplikaci Solution Explorer klepněte pravým tlačítkem myšiNázev projektua klepněte na tlačítkoVlastnosti.
  13. Ve skupinovém rámečku Vlastnosti konfigurace, klepněte na tlačítkoSestavení.
  14. Ověřte, zda Registr pro volání Interop modelu COM.Zaškrtávací políčko je zaškrtnuté a klepněte na tlačítko OK.
  15. V Sestavení nabídky, klepněte na tlačítko Sestavení Řešení Vytvoření projektu.
  16. Spusťte aplikaci Visual Basic 6.0.
  17. V Soubor nabídky, klepněte na tlačítko Nový Projekta klepněte na tlačítko Vybrat Standardní EXE vNový projekt Dialogové okno.

    Ve výchozím nastavení formuláře, který je je vytvořen s názvem Formulář1.
  18. V Projekt nabídky, klepněte na tlačítkoOdkazy.
  19. V Dostupné odkazy seznam, Poklepáním vyberte TestProja klepněte na tlačítkoOK.
  20. Přidáte příkazové tlačítko do formuláře.
  21. Poklepejte na položku Command1 Otevřete kód okno.
  22. Přidejte následující kód Command1_Click událost.
    Dim myObject As TestProj.COMClass1
    Set myObject = New TestProj.COMClass1
    MsgBox myObject.myFunction
  23. V Spustit nabídky, klepněte na tlačítkoSpustit.
  24. Klepněte na příkazové tlačítko.

    Byste měli obdržet zpráva, která se zobrazí 100.

Odkazy

Další informace navštivte následující Web společnosti Microsoft Server:
Spolupráce s nespravovaným kódem.
http://msdn2.microsoft.com/en-us/library/sd10k43k (vs.71) .aspx

Vlastnosti

ID článku: 817248 - Poslední aktualizace: 20. května 2011 - Revize: 8.0
Informace v tomto článku jsou určeny pro produkt:
  • 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
Klíčová slova: 
kbvs2005applies kbvs2005swept kbnamespace kbdll kbcominterop kbinterop kbautomation kbhowtomaster kbmt KB817248 KbMtcs
Strojově přeložený článek
Důležité: Tento článek byl přeložen pomocí software společnosti Microsoft na strojový překlad, ne profesionálním překladatelem. Společnost Microsoft nabízí jak články přeložené překladatelem, tak články přeložené pomocí software na strojový překlad, takže všechny články ve Znalostní databázi (Knowledge Base) jsou dostupné v češtině. Překlad pomocí software na strojový překlad ale není bohužel vždy dokonalý. Obsahuje chyby ve skloňování slov, skladbě vět, nebo gramatice, podobně jako když cizinci dělají chyby při mluvení v češtině. Společnost Microsoft není právně zodpovědná za nepřesnosti, chyby nebo škody vzniklé chybami v překladu, nebo při použití nepřesně přeložených instrukcí v článku zákazníkem. Společnost Microsoft aktualizuje software na strojový překlad, aby byl počet chyb omezen na minimum.
Projděte si také anglickou verzi článku:817248

Dejte nám zpětnou vazbu

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com