Aximp.exe (Windows Forms ActiveX Control Importer)
ActiveX Control Importer converteert typedefinities in een COM-typebibliotheek voor een ActiveX-besturingselement naar een Windows Forms-besturingselement.
Windows Forms kan alleen besturingselementen voor Windows Forms hosten, dat wil gezegd klassen die zijn afgeleid van Control. Aximp.exe genereert een wrapperklasse voor een ActiveX-besturingselement dat kan worden gehost op een Windows-formulier. Hiermee kunt u dezelfde ontwerp- en programmeermethode gebruiken die van toepassing is op andere Besturingselementen voor Windows Forms.
Als u het ActiveX-besturingselement wilt hosten, moet u een wrapper-besturingselement genereren dat is afgeleid van AxHost. Dit wrapper-besturingselement bevat een exemplaar van het onderliggende ActiveX-besturingselement. Het weet hoe het kan communiceren met het ActiveX-besturingselement, maar het wordt weergegeven als een Besturingselement voor Windows Forms. Dit gegenereerde besturingselement host het ActiveX-besturingselement en toont de eigenschappen, methoden en gebeurtenissen als die van het gegenereerde besturingselement.
Dit hulpprogramma wordt automatisch geïnstalleerd met Visual Studio. Als u het hulpprogramma wilt uitvoeren, gebruikt u de Visual Studio Developer-opdrachtprompt of Visual Studio Developer PowerShell.
Typ het volgende bij de opdrachtprompt:
Syntaxis
aximp [options]{file.dll | file.ocx}
Opmerkingen
Argument | Beschrijving |
---|---|
bestand | De naam van het bronbestand dat het ActiveX-besturingselement bevat dat moet worden geconverteerd. Het bestandsargument moet de extensie .dll of .ocx hebben. |
Optie | Omschrijving |
---|---|
/delaysign |
Hiermee geeft u Aximp.exe om het resulterende besturingselement te ondertekenen met behulp van vertraagde ondertekening. U moet deze optie opgeven met de optie /publickey: of /keyfile: de /keycontainer: optie. Zie Een assembly uitstellen voor meer informatie over het vertraagde ondertekeningsproces. |
/help |
Geeft de opdrachtsyntaxis en opties voor het hulpprogramma weer. |
/keycontainer: containerName |
Ondertekent het resulterende besturingselement met een sterke naam met behulp van het openbare/persoonlijke sleutelpaar dat is gevonden in de sleutelcontainer die is opgegeven door containerName. |
/keyfile: Bestandsnaam |
Ondertekent het resulterende besturingselement met een sterke naam met behulp van het officiële openbare/persoonlijke sleutelpaar van de uitgever in de bestandsnaam. |
/nologo |
Onderdrukt de weergave van de opstartbanner van Microsoft. |
/out: Bestandsnaam |
Hiermee geeft u de naam van de assembly die moet worden gemaakt. |
/publickey: Bestandsnaam |
Ondertekent het resulterende besturingselement met een sterke naam met behulp van de openbare sleutel in het bestand dat is opgegeven door de bestandsnaam. |
/rcw: Bestandsnaam |
Gebruikt de opgegeven runtime aanroepbare wrapper in plaats van een nieuwe te genereren. U kunt meerdere exemplaren opgeven. De huidige map wordt gebruikt voor relatieve paden. Zie Runtime Callable Wrapper voor meer informatie. |
/silent |
Onderdrukt de weergave van geslaagde berichten. |
/source |
Hiermee genereert u C#-broncode voor de Windows Forms-wrapper. |
/verbose |
Hiermee geeft u uitgebreide modus; geeft aanvullende voortgangsinformatie weer. |
/? |
Geeft de opdrachtsyntaxis en opties voor het hulpprogramma weer. |
Aximp.exe converteert een volledige ActiveX-besturingselementtypebibliotheek tegelijk en produceert een set assembly's die de algemene metagegevens van de taalruntime bevatten en implementatie van besturingselementen voor de typen die zijn gedefinieerd in de oorspronkelijke typebibliotheek. De gegenereerde bestanden hebben de naam volgens het volgende patroon:
Algemene runtimeproxy voor COM-typen: progid.dll
Windows Forms-proxy voor ActiveX-besturingselementen (waarbij Ax ActiveX aantekent): Axprogid.dll
Notitie
Als de naam van een lid van het ActiveX-besturingselement overeenkomt met een naam die is gedefinieerd in .NET Framework, wordt Aximp.exe de lidnaam voorafgegaan door 'Ctl' wanneer de axHost-afgeleide klasse wordt gemaakt. Als uw ActiveX-besturingselement bijvoorbeeld een lid heeft met de naam Indeling, wordt de naam 'CtlLayout' in de afgeleide AxHost-klasse gewijzigd, omdat de indelingsgebeurtenis is gedefinieerd in het .NET Framework.
U kunt deze gegenereerde bestanden onderzoeken met hulpprogramma's zoals Ildasm.exe (IL Disassembler).
Het gebruik van Aximp.exe voor het genereren van een .NET-assembly voor het ActiveX WebBrowser-besturingselement (shdocvw.dll) wordt niet ondersteund.
Wanneer u Aximp.exe uitvoert via shdocvw.dll, wordt altijd een ander bestand gemaakt met de naam shdocvw.dll in de map waaruit het hulpprogramma wordt uitgevoerd. Als u dit gegenereerde bestand in de map Documenten plaatst, kan dit problemen veroorzaken voor Windows Verkenner. Wanneer de computer opnieuw wordt opgestart, zoekt Windows in de map Documenten voordat de systeem32-map een kopie van shdocvw.dll. Hierbij wordt de kopie gebruikt die in Documenten wordt gevonden en wordt geprobeerd de beheerde wrappers te laden. Windows Verkenner werkt niet goed omdat deze afhankelijk is van de rendering-engine in de versie van shdocvw.dll die zich in de system32-map bevindt. Als dit probleem optreedt, verwijdert u de kopie van shdocvw.dll in de map Documenten en start u de computer opnieuw op.
Opmerking
Met de volgende opdracht worden MediaPlayer.dll en AxMediaPlayer.dll voor het besturingselement msdxm.ocx
Mediaspeler gegenereerd.
aximp c:\systemroot\system32\msdxm.ocx