Aximp.exe (Importador de controles ActiveX de Windows Forms)Aximp.exe (Windows Forms ActiveX Control Importer)

El Importador de controles ActiveX convierte definiciones de tipos de una biblioteca de tipos COM para un control ActiveX en un control de Windows Forms.The ActiveX Control Importer converts type definitions in a COM type library for an ActiveX control into a Windows Forms control.

Windows Forms solo puede hospedar controles de Windows Forms; es decir, clases derivadas de Control.Windows Forms can only host Windows Forms controls — that is, classes that are derived from Control. Aximp.exe genera una clase contenedora para un control ActiveX que se puede hospedar en un Windows Form.Aximp.exe generates a wrapper class for an ActiveX control that can be hosted on a Windows Form. Esto permite utilizar la misma compatibilidad en tiempo de diseño y la misma metodología de programación que si se tratase de controles usuales de Windows Forms.This allows you to use the same design-time support and programming methodology applicable to other Windows Forms controls.

Para hospedar el control ActiveX, debe generar un control contenedor que se derive de AxHost.To host the ActiveX control, you must generate a wrapper control that derives from AxHost. Este control contenedor contiene una instancia del control ActiveX subyacente.This wrapper control contains an instance of the underlying ActiveX control. También sabe cómo establecer comunicación con el control ActiveX, pero aparece como un control de Windows Forms.It knows how to communicate with the ActiveX control, but it appears as a Windows Forms control. Este control generado contiene el control ActiveX y proporciona sus propiedades, métodos y eventos como si fuesen propios.This generated control hosts the ActiveX control and exposes its properties, methods, and events as those of the generated control.

Esta herramienta se instala automáticamente con Visual Studio.This tool is automatically installed with Visual Studio. Para ejecutar la herramienta, use Símbolo del sistema para desarrolladores de Visual Studio (o Símbolo del sistema de Visual Studio en Windows 7).To run the tool, use the Developer Command Prompt for Visual Studio (or the Visual Studio Command Prompt in Windows 7). Para más información, consulte Símbolos del sistema.For more information, see Command Prompts.

En el símbolo del sistema, escriba lo siguiente:At the command prompt, type the following:

SintaxisSyntax

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

ComentariosRemarks

ArgumentoArgument DescripciónDescription
filefile Nombre del archivo de código fuente que contiene el control ActiveX que se va a convertir.The name of the source file that contains the ActiveX control to convert. Este argumento debe tener la extensión .ocx o .dll.The file argument must have the extension .dll or .ocx.
OpciónOption DescripciónDescription
/delaysign Especifica que Aximp.exe debe firmar el control resultante mediante la opción de firma retardada.Specifies to Aximp.exe to sign the resulting control using delayed signing. Debe especificar esta opción con la opción /keycontainer:, /keyfile: o /publickey:.You must specify this option with either the /keycontainer:, /keyfile:, or /publickey: option. Para obtener más información sobre el proceso de firma retardada, vea Retrasar la firma de un ensamblado.For more information on the delayed signing process, see Delay Signing an Assembly.
/help Muestra las opciones y la sintaxis de los comandos para la herramienta.Displays command syntax and options for the tool.
/keycontainer: containerName/keycontainer: containerName Firma el control resultante con un nombre seguro mediante el par de claves pública y privada que se encuentra en el contenedor de claves especificado mediante containerName.Signs the resulting control with a strong name using the public/private key pair found in the key container specified by containerName.
/keyfile: filename/keyfile: filename Firma el control resultante con un nombre seguro mediante el par de claves pública y privada oficial del editor que se encuentra en filename.Signs the resulting control with a strong name using the publisher's official public/private key pair found in filename.
/nologo Suprime la presentación de la portada de inicio de Microsoft.Suppresses the Microsoft startup banner display.
/out: filename/out: filename Especifica el nombre del ensamblado que se va a crear.Specifies the name of the assembly to create.
/publickey: filename/publickey: filename Firma el control resultante con un nombre seguro mediante la clave pública que se encuentra en el archivo especificado por filename.Signs the resulting control with a strong name using the public key found in the file specified by filename.
/rcw: filename/rcw: filename Utiliza el contenedor invocable en tiempo de ejecución especificado en lugar de generar uno nuevo.Uses the specified runtime callable wrapper instead of generating a new one. Puede especificar varias instancias.You may specify multiple instances. El directorio actual se utiliza para las rutas de acceso relativas.The current directory is used for relative paths. Para más información, vea Runtime Callable Wrapper.For more information, see Runtime Callable Wrapper.
/silent Suprime la presentación de mensajes de aprobación.Suppresses the display of success messages.
/source Genera código fuente de C# para el contenedor de Windows Forms.Generates C# source code for the Windows Forms wrapper.
/verbose Especifica el modo detallado; muestra información adicional del progreso.Specifies verbose mode; displays additional progress information.
/? Muestra las opciones y la sintaxis de los comandos para la herramienta.Displays command syntax and options for the tool.

Aximp.exe convierte una biblioteca de tipos completa de controles ActiveX de una vez y produce un conjunto de ensamblados que contienen los metadatos de Common Language Runtime y la implementación de controles para los tipos definidos en la biblioteca de tipos original.Aximp.exe converts an entire ActiveX Control type library at one time and produces a set of assemblies that contain the common language runtime metadata and control implementation for the types defined in the original type library. Los archivos generados se nombran conforme al siguiente patrón:The generated files are named according to the following pattern:

Proxy de Common Language Runtime para tipos COM: progid.dllcommon language runtime proxy for COM types: progid.dll

Proxy de Windows Forms para controles ActiveX (donde Ax significa ActiveX): Axprogid.dllWindows Forms proxy for ActiveX controls (where Ax signifies ActiveX): Axprogid.dll

Nota

Si el nombre de un miembro del control ActiveX coincide con un nombre definido en .NET Framework, Aximp.exe agregará el prefijo "Ctl" al nombre del miembro al crear la clase derivada AxHost.If the name of a member of the ActiveX control matches a name defined in the .NET Framework, Aximp.exe will prefix the member name with "Ctl" when it creates the AxHost derived class. Por ejemplo, si el control ActiveX tiene un miembro denominado "Layout", el nombre de este se cambia a "CtlLayout" en la clase derivada AxHost porque el evento Layout está definido en .NET Framework.For example, if your ActiveX control has a member named "Layout," it is renamed "CtlLayout" in the AxHost derived class because the Layout event is defined within the .NET Framework.

Puede examinar estos archivos generados con herramientas como Ildasm.exe (Desensamblador de IL).You can examine these generated files with tools such as Ildasm.exe (IL Disassembler).

No se puede utilizar Aximp.exe con el fin de generar un ensamblado .NET para el control ActiveX WebBrowser (shdocvw.dll).Using Aximp.exe to generate a .NET assembly for the ActiveX WebBrowser control (shdocvw.dll) is not supported.

Cuando se ejecuta Aximp.exe sobre shdocvw.dll, siempre se crea otro archivo denominado shdocvw.dll en el directorio desde el que se ejecuta la herramienta.When you run Aximp.exe over shdocvw.dll, it will always create another file named shdocvw.dll in the directory from which the tool is run. Si este archivo generado se ubica en el directorio Documents and Settings, causará problemas a Microsoft Internet Explorer y al Explorador de Windows.If this generated file is placed in the Documents and Settings directory, it causes problems for Microsoft Internet Explorer and Windows Explorer. Cuando se reinicia el equipo, Windows busca una copia de shdocvw.dll en el directorio los Documents and Settings antes que en el directorio system32.When the computer is rebooted, Windows looks in the Documents and Settings directory before the system32 directory to find a copy of shdocvw.dll. Usará la copia que encuentre en Documents and Settings e intentará cargar los contenedores administrados.It will use the copy it finds in Documents and Settings and attempt to load the managed wrappers. Internet Explorer y el Explorador de Windows no funcionarán correctamente, porque se basan en el motor de representación de la versión de shdocvw.dll ubicada en el directorio system32.Internet Explorer and Windows Explorer will not function properly because they rely on the rendering engine in the version of shdocvw.dll located in the system32 directory. Si se produce este problema, elimine la copia de shdocvw.dll del directorio Documents and Settings y reinicie el equipo.If this problem occurs, delete the copy of shdocvw.dll in the Documents and Settings directory and reboot the computer.

Si se utiliza Aximp.exe con shdocvw.dll con el fin de crear un ensamblado .NET para utilizarlo en el desarrollo de aplicaciones, también pueden producirse problemas.Using Aximp.exe with shdocvw.dll to create a .NET assembly for use in application development can also cause problems. En este caso, la aplicación cargará la versión del sistema de shdocvw.dll y la versión generada, por lo que la versión del sistema podría tener prioridad.In this case, your application will load both the system version of shdocvw.dll and the generated version, and may give the system version priority. En este caso, al intentar cargar una página web dentro del control ActiveX WebBrowser, es posible que a los usuarios les aparezca un cuadro de diálogo para abrir o guardar.In this case, when you attempt to load a Web page inside the WebBrowser ActiveX control, users may be prompted with an Open/Save dialog box. Cuando el usuario haga clic en Abrir, la página web se abrirá en Internet Explorer.When the user clicks Open, the Web page will be opened in Internet Explorer. Esto solo ocurre en los equipos que ejecutan Internet Explorer versión 6 o una versión anterior.This occurs only with computers that are running Internet Explorer version 6 or earlier. Para evitar este problema, use el control WebBrowser administrado o Visual Studio para generar el elemento shdocvw.dll administrado como se describe en Cómo: Adición de referencias a bibliotecas de tipos.To prevent this problem, use the managed WebBrowser control or use Visual Studio to generate the managed shdocvw.dll as described in How to: Add References to Type Libraries.

EjemploExample

El comando siguiente genera los archivos MediaPlayer.dll y AxMediaPlayer.dll para el control de Media Player msdxm.ocx.The following command generates MediaPlayer.dll and AxMediaPlayer.dll for the Media Player control msdxm.ocx.

aximp c:\systemroot\system32\msdxm.ocx  

Vea tambiénSee also