Dela via


Aximp.exe (Windows Forms ActiveX Control Importer)

ActiveX Control Importer konverterar typdefinitioner i ett COM-typbibliotek för en ActiveX-kontroll till en Windows Forms-kontroll.

Windows Forms kan bara vara värd för Windows Forms-kontroller, det vill: klasser som härleds från Control. Aximp.exe genererar en omslutningsklass för en ActiveX-kontroll som kan finnas i ett Windows-formulär. På så sätt kan du använda samma designtidsstöd och programmeringsmetod som gäller för andra Windows Forms-kontroller.

För att vara värd för ActiveX-kontrollen måste du generera en omslutningskontroll som härleds från AxHost. Den här omslutningskontrollen innehåller en instans av den underliggande ActiveX-kontrollen. Den vet hur du kommunicerar med ActiveX-kontrollen, men den visas som en Windows Forms-kontroll. Den genererade kontrollen är värd för ActiveX-kontrollen och exponerar dess egenskaper, metoder och händelser som de för den genererade kontrollen.

Det här verktyget installeras automatiskt med Visual Studio. Om du vill köra verktyget använder du Visual Studio Developer Command Prompt eller Visual Studio Developer PowerShell.

Skriv följande vid kommandotolken:

Syntax

aximp [options]{file.dll | file.ocx}  

Kommentarer

Argument beskrivning
fil Namnet på källfilen som innehåller ActiveX-kontrollen som ska konverteras. Filargumentet måste ha tillägget .dll eller .ocx.
Alternativ Description
/delaysign Anger att Aximp.exe för att signera den resulterande kontrollen med fördröjd signering. Du måste ange det här alternativet med antingen /keycontainer:alternativet , /keyfile:eller /publickey: . Mer information om processen för fördröjd signering finns i Fördröj signering av en sammansättning.
/help Visar kommandosyntax och alternativ för verktyget.
/keycontainer:containerName Signerar den resulterande kontrollen med ett starkt namn med hjälp av det offentliga/privata nyckelparet som finns i nyckelcontainern som anges av containerName.
/keyfile:filnamn Signerar den resulterande kontrollen med ett starkt namn med utgivarens officiella offentliga/privata nyckelpar som finns i filnamnet.
/nologo Undertrycker microsofts startbanderoll.
/out:filnamn Anger namnet på sammansättningen som ska skapas.
/publickey:filnamn Signerar den resulterande kontrollen med ett starkt namn med hjälp av den offentliga nyckeln som finns i filen som anges av filnamnet.
/rcw:filnamn Använder den angivna runtime-anropsbara omslutningen i stället för att generera en ny. Du kan ange flera instanser. Den aktuella katalogen används för relativa sökvägar. Mer information finns i Runtime Callable Wrapper( Runtime Callable Wrapper).
/silent Undertrycker visning av lyckade meddelanden.
/source Genererar C#-källkod för Windows Forms-omslutningen.
/verbose Anger utförligt läge. visar ytterligare förloppsinformation.
/? Visar kommandosyntax och alternativ för verktyget.

Aximp.exe konverterar ett helt ActiveX-kontrolltypbibliotek samtidigt och skapar en uppsättning sammansättningar som innehåller vanliga språkkörningsmetadata och kontrollimplementering för de typer som definierats i det ursprungliga typbiblioteket. De genererade filerna namnges enligt följande mönster:

Vanlig språkkörningsproxy för COM-typer: progid.dll

Windows Forms-proxy för ActiveX-kontroller (där Ax betyder ActiveX): Axprogid.dll

Kommentar

Om namnet på en medlem i ActiveX-kontrollen matchar ett namn som definierats i .NET Framework prefixar Aximp.exe medlemsnamnet med "Ctl" när den skapar axhost-härledda klassen. Om din ActiveX-kontroll till exempel har en medlem med namnet "Layout" byter den namn till "CtlLayout" i klassen AxHost-härledd eftersom layouthändelsen har definierats i .NET Framework.

Du kan undersöka dessa genererade filer med verktyg som Ildasm.exe (IL Disassembler).

Det går inte att använda Aximp.exe för att generera en .NET-sammansättning för ActiveX WebBrowser-kontrollen (shdocvw.dll).

När du kör Aximp.exe över shdocvw.dll skapas alltid en annan fil med namnet shdocvw.dll i katalogen som verktyget körs från. Om du placerar den här genererade filen i katalogen Dokument kan det orsaka problem för Utforskaren i Windows. När datorn startas om letar Windows i katalogen Dokument före katalogen system32 för att hitta en kopia av shdocvw.dll. Den använder kopian som hittas i Dokument och försöker läsa in de hanterade omslutningarna. Utforskaren fungerar inte korrekt eftersom den förlitar sig på återgivningsmotorn i versionen av shdocvw.dll som finns i katalogen system32. Om det här problemet uppstår tar du bort kopian av shdocvw.dll i katalogen Dokument och startar om datorn.

Exempel

Följande kommando genererar MediaPlayer.dll och AxMediaPlayer.dll för kontrollen Mediespelare msdxm.ocx.

aximp c:\systemroot\system32\msdxm.ocx  

Se även