Windows Script Components  

Elemento <registration>

Define la información que se utilizará para registrar el componente de secuencia de comandos como un componente COM.

<registration progid="IdDePrograma" classid="GUID" description="descripción"
   version="versión" [remotable=indicadorRemoto]/> 

– o bien –

<registration progid="IdDePrograma" classid="GUID" description="descripción"
      version="versión" [remotable=indicadorRemoto]>
   <script>
      (secuencia de comandos de registro y de eliminación del Registro)
   </script>
</registration>

Argumentos

IdDePrograma
(Opcional) Nombre de texto que los programadores utilizan para hacer referencia al componente de secuencia de comandos cuando crean una instancia de él. Por ejemplo, si el Id. de programa del componente de secuencia de comandos es Componente.MiComponente, puede crear una instancia de él en Microsoft® Visual Basic con una instrucción como la siguiente:
Set componente de secuencia de comandos = CreateObject("Componente.MiComponente") 
Nota   Aunque es opcional un atributo progid, debe incluir un atributo progid o classid (o ambos). Si sólo se especifica el atributo progid, el Id. de clase se genera automáticamente. Si sólo se crea el Id. de clase, no se registra ningún Id. de programa y el objeto sólo se puede crear si se hace referencia al Id. de clase directamente.
GUID
(Opcional) GUID que se ha generado mediante un programa de generación de Id. de clase, como Uuidgen.exe. Si no se incluye un Id. de clase, el programa de registro asigna un Id. de clase al componente de secuencia de comandos.
descripción
(Opcional) Descripción de texto del componente de secuencia de comandos que se almacena en el Registro y que se utiliza en determinadas herramientas, como el examinador de objetos de Visual Basic.
versión
(Opcional) Número de versión que se le asigna. La versión se agrega al Id. de programa con un punto (por ejemplo, MiComponente.1) cuando las aplicaciones solicitan un nombre específico de versión. Utilice sólo números (no se permiten puntos).
Nota   Los atributos de registro pueden aparecer en cualquier orden en el elemento <registration>.
indicadorRemoto
(Opcional) Valor booleano que indica si se puede crear una instancia remota del componente de secuencia de comandos mediante DCOM. Para obtener más información, consulte Crear instancias remotas de componentes de secuencia de comandos del tema "Utilizar un componente de secuencia de comandos en una aplicación".

Observaciones

Después de crear un componente de secuencia de comandos, se puede registrar con un programa como Regsvr32.exe, que lee la información del elemento <registration> y la escribe en el Registro de Windows. Por ejemplo, un componente de secuencia de comandos se puede registrar de esta forma:

regsvr32 file:\\miservidor\MiComponente.wsc   
Nota   No es necesario incluir un elemento <registration> en todos los casos. Por ejemplo, no es necesario registrar un componente de secuencia de comandos que implemente el controlador de interfaz de comportamiento de DHTML en Microsoft® Internet Explorer 5.0 porque Internet Explorer registra los componentes de secuencia de comandos de comportamiento a medida que se detectan en la página. Para obtener información acerca de los requisitos de registro, consulte la información del controlador de interfaz que implemente y tenga en cuenta también en qué host se utilizará el componente de secuencia de comandos.

Si no incluye información de Id. de clase, el programa de registro asigna un Id. de clase al componente de secuencia de comandos en el momento en el que se registra. Sin embargo, el componente de secuencia de comandos tendrá un Id. de clase distinto en cada equipo en el que se registre. Es muy recomendable proporcionar un Id. de clase al componente de secuencia de comandos, a fin de asegurar que el componente de secuencia de comandos tiene el mismo Id. de clase en todos los equipos en los que se registre.

Si se permite que el programa de registro cree un Id. de clase, puede provocar problemas si se utiliza el componente de secuencia de comandos con herramientas de programación que almacenen los Id. de clase. Si durante el registro se crea un nuevo Id. de clase cada vez, éste no coincidirá con el Id. de clase almacenado por la aplicación.

Otra posibilidad es ejecutar secuencias de comandos cuando se registre y elimine del Registro un componente de secuencia de comandos. Para ello, incluya un elemento <script> dentro del elemento <registration>. Para ejecutar la secuencia de comandos durante el registro, escriba una función register( ). Para ejecutar la secuencia de comandos cuando el componente de secuencia de comandos se haya eliminado del Registro, incluya una función unregister( ).

Ejemplo

A continuación se muestra un elemento <registration> típico que incluye un Id. de programa y un Id. de clase.

<registration
   progid="Componente.PruebaComponente"
   classid="{2154c700-9253-11d1-a3ac-0aa0044eb5f}"
   description="Mi componente de prueba"
   version="1"/>

El siguiente elemento <registration> permite crear una instancia del componente de secuencia de comandos mediante DCOM:

<registration>
   progid="Componente.PruebaComponente"
   classid="{2154c700-9253-11d1-a3ac-0aa0044eb5f}"
   version="1"
   description="Mi componente de prueba"
   remotable=true/>    

El ejemplo siguiente muestra un elemento <registration> que incluye una secuencia de comandos que se ejecutará cuando el componente de secuencia de comandos se registre y se elimine del Registro.

Nota   Es necesario incluir una sección CDATA para hacer opaca la secuencia de comandos del elemento <script>. Para obtener más información, consulte Archivos de componentes de secuencia de comandos y compatibilidad XML.
<registration
   progid="Componente.PruebaComponente"
   classid="{2154c700-9253-11d1-a3ac-0aa0044eb5f}">
   version="1"
   description="Mi componente de prueba">

   <script language="VBScript">
      Function register()
         MsgBox "Se registró el componente 'Mi componente de prueba'."
      End Function
      Function unregister()
         MsgBox "Se eliminó del Registro 'Mi componente de prueba'."
      End Function
   </script>
   ]]>
</registration>   

Consulte también

Crear información de registro | Registrar un componente de secuencia de comandos

Ayuda de Javascript y Vbscript para Javascripts.astalaweb.com.