Share via


Registratievrije COM-interop

Com-interoperabiliteit zonder registratie activeert een onderdeel zonder het Windows-register te gebruiken om assemblygegevens op te slaan. In plaats van een onderdeel op een computer te registreren tijdens de implementatie, maakt u manifestbestanden in Win32-stijl op het moment van ontwerpen die informatie bevatten over binding en activering. Deze manifestbestanden, in plaats van registersleutels, leiden de activering van een object door.

Het gebruik van activering zonder registratie voor uw assembly's in plaats van ze te registreren tijdens de implementatie biedt twee voordelen:

  • U kunt bepalen welke DLL-versie wordt geactiveerd wanneer meer dan één versie op een computer is geïnstalleerd.

  • Eindgebruikers kunnen XCOPY of FTP gebruiken om uw toepassing naar een geschikte map op hun computer te kopiëren. De toepassing kan vervolgens vanuit die map worden uitgevoerd.

In deze sectie worden de twee typen manifesten beschreven die nodig zijn voor com-interoperabiliteit zonder registratie: toepassings- en onderdeelmanifesten. Deze manifesten zijn XML-bestanden. Een toepassingsmanifest dat wordt gemaakt door een toepassingsontwikkelaar, bevat metagegevens die assembly's en assembly-afhankelijkheden beschrijven. Een onderdeelmanifest, gemaakt door een onderdeelontwikkelaar, bevat informatie die zich anders in het Windows-register bevindt.

Vereisten voor com-interoperabiliteit zonder registratie

  1. Ondersteuning voor com-interoperabiliteit zonder registratie varieert enigszins, afhankelijk van het type bibliotheekassembly; met name of de assembly onbeheerd is (COM naast elkaar) of beheerd (. OP BASIS VAN NET). In de volgende tabel ziet u de besturingssysteem- en .NET Framework-versievereisten voor elk assemblytype.

    Assemblytype Besturingssysteem Versie van .NET Framework
    COM naast elkaar Microsoft Windows XP Niet vereist.
    . OP BASIS VAN NET Windows XP met SP2 NET Framework versie 1.1 of hoger.

    De Windows Server 2003-familie ondersteunt ook com-interoperabiliteit zonder registratie voor . Assembly's op basis van NET.

    Voor een . Net-klasse die compatibel is met activering zonder register van COM, moet de klasse een parameterloze constructor hebben en moet openbaar zijn.

COM-onderdelen configureren voor activering zonder registratie

  1. Als een COM-onderdeel kan deelnemen aan activering zonder registratie, moet het worden geïmplementeerd als een assembly naast elkaar. Assembly's naast elkaar zijn onbeheerde assembly's. Zie Assembly's naast elkaar gebruiken voor meer informatie.

    Com-assembly's naast elkaar gebruiken, a . Ontwikkelaars van NET-toepassingen moeten een toepassingsmanifest opgeven dat de bindings- en activeringsgegevens bevat. Ondersteuning voor niet-beheerde assembly's naast elkaar is ingebouwd in het Windows XP-besturingssysteem. De COM-runtime, ondersteund door het besturingssysteem, scant een toepassingsmanifest op activeringsgegevens wanneer het onderdeel dat wordt geactiveerd, zich niet in het register bevindt.

    Activering zonder registratie is optioneel voor COM-onderdelen die zijn geïnstalleerd in Windows XP. Zie Side-by-side Assembly's gebruiken voor gedetailleerde instructies voor het toevoegen van een side-by-side assembly aan een toepassing.

    Notitie

    Naast elkaar uitvoeren is een .NET Framework-functie waarmee meerdere versies van de runtime en meerdere versies van toepassingen en onderdelen die een versie van de runtime gebruiken, tegelijkertijd op dezelfde computer kunnen worden uitgevoerd. Side-by-side uitvoering en side-by-side assembly's zijn verschillende mechanismen voor het bieden van side-by-side functionaliteit.

Zie ook