Udostępnij za pośrednictwem


Porady: rejestrowanie podstawowych zestawów międzyoperacyjnych

Klasy mogą być marshalled tylko przez międzyoperacyjności COM i są zawsze marshalled jako interfejsy. W niektórych przypadkach interfejs używany do marshalingu klasy jest znany jako interfejs klasy. Aby uzyskać informacje o zastępowaniu interfejsu klasy wybranym interfejsem, zobacz COM Callable Wrapper.

Mimo że każdy deweloper, który chce używać typów COM z aplikacji .NET Framework, może wygenerować zestaw międzyoperacyjny, tworząc w ten sposób problem. Za każdym razem, gdy deweloper importuje i podpisuje bibliotekę typów COM, deweloper tworzy zestaw unikatowych typów, które są niezgodne z zaimportowanymi i podpisanymi przez innego dewelopera. Rozwiązaniem tego typu problemu z niezgodnością jest uzyskanie przez każdego dewelopera zestawu podstawowego międzyoperacowego dostarczonego przez dostawcę i podpisanego podstawowego zestawu międzyoperaciowego.

Jeśli planujesz uwidaczniać typy COM innych firm innym aplikacjom, zawsze używaj podstawowego zestawu międzyoperacyjnego dostarczonego przez tego samego wydawcę, co zdefiniowana przez nią biblioteka typów. Oprócz zapewnienia gwarantowanej zgodności typów podstawowe zestawy międzyoperacowe są często dostosowywane przez dostawcę w celu zwiększenia współdziałania.

Nawet jeśli nie planujesz uwidocznić typów COM innych firm, użycie podstawowego zestawu międzyoperacyjnego może ułatwić współpracowanie ze składnikami COM. Jednak ta strategia nie zapewnia izolacji od zmian, które dostawca może wprowadzić do typów zdefiniowanych w podstawowym zestawie międzyoperacyjnym. Gdy aplikacja wymaga takiej izolacji, wygeneruj własny zestaw międzyoperacyjny zamiast używać podstawowego zestawu międzyoperacyjnego.

Aby można było odwoływać się do nich w programie Visual Studio, należy zarejestrować wszystkie pozyskane podstawowe zestawy międzyoperamentowe na komputerze deweloperów. Program Visual Studio szuka podstawowego zestawu międzyoperaowego i używa go po raz pierwszy, gdy odwołujesz się do typu z biblioteki typów MODELU COM. Jeśli program Visual Studio nie może zlokalizować podstawowego zestawu międzyoperacyjnego skojarzonego z biblioteką typów, zostanie wyświetlony monit o uzyskanie go lub oferty utworzenia zestawu międzyoperacyjnego. Podobnie importer biblioteki typów (Tlbimp.exe) używa również rejestru do lokalizowania podstawowych zestawów międzyoperacyjnych.

Chociaż nie jest konieczne zarejestrowanie podstawowych zestawów międzyoperacyjnych, chyba że planujesz korzystać z programu Visual Studio, rejestracja zapewnia dwie zalety:

  • Zarejestrowany podstawowy zestaw międzyoperajności jest wyraźnie oznaczony pod kluczem rejestru oryginalnej biblioteki typów. Rejestracja to najlepszy sposób lokalizowania podstawowego zestawu międzyoperacyjnego na komputerze.

  • Możesz uniknąć przypadkowego generowania i używania nowego zestawu międzyoperacyjnego, jeśli w pewnym momencie w przyszłości użyjesz programu Visual Studio, aby odwołać się do typu, dla którego masz niezarejestrowany podstawowy zestaw międzyoperacyjny.

Użyj narzędzia rejestracji zestawów (Regasm.exe), aby zarejestrować podstawowy zestaw międzyoperaowy.

Aby zarejestrować podstawowy zestaw międzyoperajowy

  1. W wierszu polecenia wpisz:

    regasm assemblyname

    W tym poleceniu nazwa zestawu to nazwa pliku zarejestrowanego zestawu. Regasm.exe dodaje wpis dla podstawowego zestawu międzyoperacyjnej pod tym samym kluczem rejestru co oryginalna biblioteka typów.

Przykład

Poniższy przykład rejestruje podstawowy zestaw międzyoperacyjności CompanyA.UtilLib.dll .

regasm CompanyA.UtilLib.dll

Zobacz też