Este documento contiene información sobre los requisitos previos para el producto WebSphere Development Tools para iSeries. Incluye además las limitaciones del producto e información no incluida en la documentación.
El documento Notas sobre la instalación contiene todas las notas y procedimientos de la instalación. Incluye el uso de archivos de respuestas, cómo desinstalar y cómo añadir o eliminar componentes del producto.
El documento Notas sobre el release describe los componentes del producto, los requisitos del sistema detallados y casos prácticos de migración, así como Notas sobre el release de VisualAge(R) para Java(TM) Versión 3.5.3 Enterprise Toolkit para AS/400(R).
Importante: Cómo instalar o eliminar componentes de forma
selectiva
El asistente para Modificar le permite añadir o eliminar componentes.
La página que contiene el texto "Seleccionar componentes a modificar"
deberá incluir esta descripción:
Para añadir un componente faltante, asegúrese de que se marca el recuadro de selección. Para eliminar un componente, borre la marca del recuadro de selección.Encontrará una descripción completa en las Notas sobre la instalación en el apartado Cómo añadir o eliminar componentes después de la instalación.
VisualAge RPG (VARPG)
En la versión 5.1, el diseñador GUI de VARPG ha sido actualizado para que incluya nueva información de ayuda para:
No se han actualizado las versiones HTML y PDF de las publicaciones VARPG. Por ello, contienen las imprecisiones siguientes:
Las palabras clave DLL y LINKAGE no aparecen en el listado de palabras clave de las siguientes secciones de ayuda sensible al lenguaje:
Se han añadido los siguientes atributos de componentes a VisualAge RPG.
Componente | Atributo | Tipo | Descripción | Código de operación válido |
---|---|---|---|---|
Subarchivo | EditColumn | numérico | Devuelve el número de columna de la celda que se ha abierto para editar. | getatr |
EditIndex | numérico | Devuelve el número de fila de la celda que se ha abierto para editar. | getatr | |
EditText | texto | Devuelve el texto editado actualmente de la celda que se está editando. Devuelve una serie vacía si no hay ninguna celda abierta para edición. |
getatr | |
Los atributos de subarchivo siguientes se utilizan para cambiar el orden en que se visualizan las columnas de datos de subarchivos. El orden de las "columnas de datos" es el especificado en tiempo de diseño en la página de lista de campos del cuaderno de propiedades (una "columna de datos" se especifica con el atributo ColNumber). Las "columnas de vista" hacen referencia al orden en que se visualizan las columnas (una columna de vista se especifica con el atributo ViewColumn nuevo de este release). Por omisión, las columnas de datos y las columnas de vista son las mismas. Si un usuario cambia la posición en que se visualiza una columna, sólo cambian las columnas de vista. | ||||
MapViewCol | numérico | Cuando se establece como 1, se visualizará el subarchivo con las columnas resituadas según lo dispuesto en los atributos ColNumber y ViewColumn. ColNumber se establece como el número de la columna de datos a mover, y ViewColumn se establece como la columna de destino. Tenga presente que no se cambia el orden de las columnas de datos. Las columnas de vista se desplazan a derecha o izquierda según se establezca. | setatr | |
ViewColumn | numérico | Se establece como la columna de destino de MapViewCol. | setatr | |
Ejemplo de código para correlacionar la columna de datos 2 con la columna de vista 4 |
C Eval %Setatr('FRA000000B':'SUBF':'ColNumber')=2 C Eval %Setatr('FRA000000B':'SUBF':'ViewColumn')=4 C Eval %Setatr('FRA000000B':'SUBF':'MapViewCol')=1 | |||
DColFRVCol | numérico | Devuelve la columna de datos que corresponde a la columna especificada en ViewColumn. | getatr | |
Ejemplo de código para obtener la columna de datos que corresponde a la columna de vista 4 |
C Eval %Setatr('WIN':'SBF':'ViewColumn')=4 C Eval DataCol4 = %Getatr('WIN':'SBF':'DCOLFRVCOL') | |||
VColFRDCol | numérico | Devuelve la columna de vista que corresponde a la columna especificada en ColNumber. | getatr | |
Ejemplo de código para obtener la columna de vista que corresponde a la columna de datos 4 |
C Eval %Setatr('WIN':'SBF':'ColNumber')=4 C Eval ViewCol4 = %Getatr('WIN':'SBF':'VCOLFRDCOL') | |||
SortAsc | numérico | Se establece como una columna de datos para especificar la ordenación ascendente de los datos de subarchivo. | setatr | |
Ejemplo de código para ordenar la tercera columna en orden ascendente |
C Eval %Setatr('WIN':'SBF':'SortAsc')=3 | |||
SortDesc | numérico | Se establece como una columna de datos para especificar la ordenación descendente de los datos de subarchivo. | setatr | |
Ejemplo de código para ordenar la tercera columna en orden descendente |
C Eval %Setatr('WIN':'SBF':'SortDesc')=3 | |||
Ventana | PrintAsIs | texto | Imprime la imagen y mantiene la proporción. | setatr |
Imagen | PrintAsIs | texto | Imprime la imagen y mantiene la proporción. | setatr |
Texto estático | DropValue | numérico | Se establece en 1 para permitir que el valor de etiqueta cambie tras una operación de soltar (drop). Se establece en 0 para impedir que el valor cambie después de una operación de soltar. El valor por omisión es 1. Por ejemplo, un componente de texto estático tiene la etiqueta "Enviar correo" y se pide a los usuarios que arrastren y suelten una dirección de correo electrónico en la etiqueta para que se lance un diálogo de envío de correo electrónico. Establezca DropValue como 0 para que la etiqueta no cambie y se convierta en la dirección de correo electrónico. | setatr |
Página de cuaderno | OnTop | numérico | Se establece como 1 para que la página especificada pase a ser la página actual.
En versiones anteriores, los usuarios establecían el "PageNumber" del componente de cuaderno como N para que la página N
pasara a ser la página actual. Este método puede originar confusión cuando una página se ha establecido como invisible, porque el soporte de ejecución
suprimirá la página del componente cuaderno. (Cuando la página vuelva a establecerse como visible, el soporte de ejecución la volverá a añadir al cuaderno.) Por ejemplo, si se ejecuta el código siguiente:
C EVAL %SetAtr('frame':'page3':'visible')=0 C EVAL %SetAtr('frame':'notebook':'PageNumber')=3la página actual será la cuarta página (que ahora ocupa la tercera posición, ya que la tercera página original se ha suprimido). Ahora, los usuarios pueden utilizar esta línea para establecer la cuarta página como la página actual: C EVAL %SetAtr('frame':'page4':'OnTop')=1Al no utilizar el número de índice, queda más claro cuál es la página actual. Puede utilizarse GETATR para obtener el valor del atributo OnTop de una página de cuaderno. Devolverá 1 si la página es la página actual, de lo contrario devolverá 0. |
setatr getatr |
Componente | Evento | Descripción |
---|---|---|
Gráfica | Popup | Nuevo evento añadido |
Página de cuaderno | SelPending | Este evento se activa para la página actual cuando el usuario pulsa en otra página. Por ejemplo, la subrutina de acción para este evento podría comprobar si se ha especificado toda la información necesaria. De no ser así, devolverá "NODEFAULT" para que el soporte de ejecución de VARPG no cambie a la otra página. De este modo, ya no es necesario inhabilitar otras páginas o hacerlas invisibles. A continuación encontrará un ejemplo de código:
C NBP_1 BEGACT SELPENDING FRA_1 C if %getatr('FRA_1':'cusno':'text')=*blank C *msg0001 dsply rc1 9 0 Display an error message; C eval RC='*NODEFAULT ' C else C eval RC='*DEFAULT ' C endif C ENDACT RC |
WebSphere Studio para iSeries
Para obtener información sobre los requisitos previos y las limitaciones específicas de IBM WebSphere Studio para iSeries, consulte los archivos README de WebSphere Studio y ReadMe 3.5 FixPack 2. Estas notas pueden verse desde el menú Inicio de Windows seleccionando Programas> IBM WebSphere Development Tools para iSeries> IBM WebSphere Studio para iSeries.
Acerca del soporte BiDi
Cada DTC de WebSphere Studio para iSeries cuenta ahora con una propiedad de atributo de direccionalidad
que
especifica la dirección del texto. Esta propiedad está en la página General de las propiedades del control. Las elecciones posibles son:
LTR | La dirección del texto es de izquierda a derecha |
RTL | La dirección del texto es de derecha a izquierda |
NONE | Sa utiliza la dirección por omisión para el idioma |
Además, el DTC de subarchivo también tiene el atributo de direccionalidad para cada campo en la página 'Propiedades de los campos'. El atributo 'direccionalidad' de la página de propiedades 'General' del DTC de subarchivo define la colocación de las columnas y los campos. El atributo 'direccionalidad' de la página de propiedades 'Propiedades de los campos' define cómo se muestra el texto del campo.
En la página Definición de llamada de programa del Asistente de interacción Web, se ha añadido el atributo
bidistringtype
. A continuación se describen las elecciones posibles.
Tipo de serie | Tipo de texto |
Orientación | Redistribución simétrica |
Contorno numérico |
Contorno texto |
---|---|---|---|---|---|
Valor por omisión | El tipo de serie por omisión para datos no BiDi (LTR) | ||||
ST4 | Visual | LTR | No | Nominal | Contorno |
ST5 | Implícito | LTR | Sí | Nominal | Nominal |
ST6 | Implícito | RTL | Sí | Nominal | Nominal |
ST7 | Visual | LTR contextual | No | Nominal | Nominal |
ST8 | Visual | RTL | No | Nominal | Contorno |
ST9 | Visual | RTL | Sí | Nominal | Contorno |
ST10 | Implícito | LTR contextual | Sí | Nominal | Nominal |
ST11 | Implícito | LTR contextual | Sí | Nominal | Nominal |
Acerca de dos campos nuevos
La primera página del Asistente de configuración de publicación contiene dos campos nuevos, Nombre de servidor de
aplicaciones WAS
y Nombre de motor de servlets WAS
. Contienen los valores por omisión Wdt400AppServer
y Wdt400ServletEngine
codificados previamente
de manera explícita.
Acerca del cambio de una etiqueta de campo
La primera página del Asistente de configuración de publicación contiene un campo etiquetado como Nombre de nodo
WAS
que anteriormente era Nombre de nodo XML
. Cuando especifique el nombre de nodo WAS en el asistente de publicación, utilice el nombre de nodo que aparezca en la
consola administrativa de WAS.
Distributed Debugger y Object Level Trace
Para obtener información sobre los requisitos previos y las limitaciones específicas de IBM Distributed Debugger y Object Level Trace, consulte las Notas sobre el release de IBM Distributed Debugger y Object Level Trace. Estas notas sobre el release pueden verse desde el menú Inicio de Windows seleccionando Programas> IBM WebSphere Development Tools para iSeries> IBM Distributed Debugger> README.
Notas sobre el JDK
IBM Java 2 Software Development Kit (J2SDK), Standard Edition v1.2.2 va incluido con este producto. J2SDK incluye JavaDocs. Si elige utilizar un JDK distinto,
deberá ser la versión 1.2 o superior, para asegurar la funcionalidad
de todo el código Java.
Para utilizar un JDK diferente, determine el directorio base de su JRE (Entorno de ejecución Java). En el editor de CODE, entre el mandato "SET GLOBAL.JREHOME x:\dir", siendo x:\dir el directorio base del JRE. Por ejemplo, "SET GLOBAL.JREHOME C:\JDK1.2\JRE".
Si tiene pensado utilizar el componente VisualAge RPG Media, instale la API Java Media Framework.
Complemento (plug-in) de Diseñador GUI de VisualAge RPG y Java
Actualmente, Netscape Navigator e Internet Explorer de Microsoft
no dan soporte al mismo nivel del J2SDK que VisualAge RPG utiliza. Por consiguiente,
los applets creados con el diseñador GUI de VisualAge RPG no se ejecutarán directamente con estos navegadores.
Para ejecutar los applets VisualAge RPG en estos navegadores, es
necesario instalar Java Plug-in 1.2 (incluido con J2SDK). Puede bajar el J2SDK de la página Web The Source for Java Technology Web en java.sun.com.
Nombres IFS en VisualAge RPG
Utilice siempre nombres de directorios IFS que tengan de 1 a 8 caracteres de longitud y no contengan espacios.
Problemas con la ayuda
WebSphere Development Tools para iSeries utiliza el Sistema de ayuda VisualAge para suministrar la información de ayuda en
línea a través de un navegador web. Si tiene problemas para iniciar, utilizar o realizar búsquedas en la ayuda, puede consultar el documento de resolución de
problemas incluido en el medio de instalación. Coloque el CD 1 o el DVD en la unidad correspondiente y utilice Windows Explorer para ir al archivo
x:\install\help\helpyyy\helpTroubleshooting.htm
, donde
x
es la letra de la unidad e yyy
es el código de idioma, como
se indica a continuación:
Idioma | Código | Idioma | Código | Idioma | Código | Idioma | Código | Idioma | Código |
---|---|---|---|---|---|---|---|---|---|
Alemán | deu | Inglés | enu | Español | esp | Francés | fre | Italiano | ita |
Japonés | jpn | Coreano | kor | Portugués (brasileño) | bra | Chino (simplificado) | chs | Chino (tradicional) | cht |
install\help
del
producto.
WebSphere Studio para iSeries: Invocar la API de DTC de subarchivo
El programa de servicio de sistema principal, QGPL/QDTSSFL.SRVPGM, es necesario cuando el programa de sistema principal de
usuario requiere la invocación de la API de DTC de subarchivo de Websphere Studio para iSeries.
Para la instalación
x:\WDT400\Studio35\Affinity
, donde x:\WDT400
es la unidad y el directorio de instalación del productoftp sistema_iSeries
cd QGPL
binary
Para el entorno de desarrollo
Para el entorno de ejecución, asegúrese de que la biblioteca QGPL esté en la lista de bibliotecas.
Notas para usuarios de versiones anteriores a la V5.1:
Utilización de ejemplos de Enterprise Toolkit para iSeries
Para poder utilizar los ejemplos suministrados en ET/400, debe
restaurar la biblioteca ADTSLAB. Para WebSphere Development Studio
para iSeries V5R1, esta biblioteca está ubicada en QPDA.
Mensajes de pantalla truncados en CODE
A veces los mensajes largos del Editor de CODE se truncan. Seleccione
el mensaje y pulse Ayuda o F1 para ver el mensaje completo.
Determinados componentes de WebSphere Development Tools requieren Internet Explorer como navegador (vea Requisitos de software en las Notas sobre el release). A continuación se describen algunos de los problemas que causa Netscape. Utilice Internet Explorer como navegador por omisión para evitar estas restricciones y problemas.
Búsqueda con Netscape en Windows 2000
Existe un problema conocido con Netscape (versiones 4.5 a 4.74 y posiblemente otras) en algunas máquinas Windows 2000 que puede hacer muy lenta la búsqueda de la ayuda en línea. Cuando se envía un formulario desde estas versiones de Netscape, la aplicación de Netscape utiliza la mayoría de los ciclos de procesador disponibles de la máquina hasta que se recibe una respuesta del sistema remoto. Esto normalmente no constituye ningún problema al realizar una búsqueda remota (p.e., en un sitio Web). Sin embargo, como el programa de búsqueda del producto se ejecuta en la máquina local, el hecho que Netscape ocupe tanto tiempo de CPU significa que queda muy poco tiempo de CPU para que el programa realice la búsqueda. Como resultado de ello, una acción de búsqueda que debería devolver un resultado al cabo de un segundo puede tardar varios minutos en Windows 2000.
Puede evitar este problema de rendimiento seleccionando una ventana distinta que no sea de Netscape después de cada vez que envíe una búsqueda. Esto generalmente hace que Netscape deje de utilizar ciclos de CPU excesivos mientras espera una respuesta y los resultados de la búsqueda normalmente se visualizan al cabo de un segundo después de realizar este cambio de ventana.
O como alternativa, puede utilizar Microsoft Internet Explorer para ver la ayuda. Con este navegador, no se produce dicho problema de rendimiento.
Disconformidad de Netscape Navigator con estándar
Netscape Navigator no opera en conformidad con los estándares para HTML 4. Las
páginas Web generadas desde WebSphere Studio para AS/400 y visualizadas con Netscape
Navigator tendrán los problemas descritos en la tabla siguiente. Estos problemas no aparecen cuando se utiliza Internet Explorer.
Tipo de DTC | Problemas de presentación | Problemas de eventos | Problemas de atributos |
---|---|---|---|
Entryfield (campo de entrada) | Los valores por omisión para el color y el color de fondo no pueden alterarse temporalmente. | OnSelect, OnClick, OnDblClick, OnMouseOver, OnMouseDown, OnMouseUp y OnMouseOut no están soportados. | El atributo "alignment" desplaza todo el campo, no sólo el texto. El atributo "readonly" no está soportado, pero este problema puede solucionarse de la manera siguiente: - seleccione el DTC - abra el recuadro de diálogo de propiedades del control - seleccione la pestaña Sucesos - pulse en el suceso onFocus - entre "this.blur();" en el recuadro Script. |
Recuadro de selección | Ningún problema | OnChange no está soportado. | Ningún problema |
Combobox (recuadro combinado) | Los valores por omisión para el color y el color de fondo no pueden alterarse
temporalmente. Se ignoran los valores de font. |
Ningún problema | Ningún problema |
Listbox (recuadro de lista) | Los valores por omisión para el color y el color de fondo no pueden alterarse
temporalmente. Se ignoran los valores de font. |
Ningún problema | Ningún problema |
MLE | Los valores por omisión para el color y el color de fondo no pueden alterarse
temporalmente. Se ignoran los valores de font. El texto continúa en la línea siguiente de manera incorrecta. |
OnSelect no está soportado. | Ningún problema |
Pushbutton (pulsador) | El color de fondo siempre es gris claro. | OnKeyPress, OnKeyUp, OnKeyDown, OnMouseOut y OnMouseOver no están soportados. | Ningún problema |
Radiobutton (botón de selección) | Ningún problema | OnMouseOut, OnMouseOver, OnKeyUp, OnKeyDown, OnKeyPress y OnChange no están soportados. | Ningún problema |
Internet Explorer y ayuda para AS/400 Toolbox para Java
Algunas páginas de la ayuda de Toolbox para Java no utilizan el juego
de caracteres correcto cuando se visualizan con Internet Explorer.
Los juegos de caracteres correctos para cada idioma son los
siguientes:
Idioma | Nombre del juego de caracteres | |
---|---|---|
Chino simplificado | Chinese Simplified(GB2312) | |
Chino tradicional | Chinese Traditional(Big5) | |
Coreano | Korean | |
Japonés | Japanese(Shift-JIS) |
Distributed Debugger
Cuando se depura un programa o un programa de servicio que se ha iniciado desde una
página Web generada por WebSphere Studio, la finalización del programa o del punto
de entrada del programa de servicio no desencadena la finalización del depurador. Esto impide que se inicien nuevas sesiones de depuración. Para poder volver a depurar, utilice el botón de detención a fin de cerrar la sesión
de depuración actual.
Object Level Trace
Si el rastreo a nivel de objeto (OLT) no se inicia en Windows 95 o Windows 98,
asegúrese de que el espacio del entorno está establecido en el valor
máximo. En el archivo CONFIG.SYS, busque la directiva SHELL y compruebe que el valor /E está
establecido en 32768.
Por ejemplo: SHELL=C:\WINDOWS\COMMAND.COM /p /E:32768
El visor de OLT no se ejecutará correctamente si los archivos de entorno del directorio DbgProf están dañados. En tal caso, debe suprimir todos los archivos del directorio DbgProf. Hay un directorio diferente para cada usuario. Cuando el visor de OLT se inicie, volverá a crear los archivos.
El visor de OLT muestra el error "No se puede abrir la corriente de entrada para dertrdfl." la primera vez que se inicia o después de que se han borrado los archivos de entorno del directorio DbgProf. Este error no afecta al funcionamiento del visor de OLT.
Norton AntiVirus
Si Norton AntiVirus está instalado en una máquina Windows 98 y no
funcionan algunos componentes de WebSphere Development Tools, como el
Debugger o el Object Level Trace (OLT), desactive Norton Antivirus y
vuelva a intentar la operación.
Visite nuestras páginas de la World Wide Web en las direcciones:
ibm.com/software/awdtools/wdt400/ Pulse en Support, y a continuación seleccione un elemento de la sección Support Downloads para obtener actualizaciones a través de la Web.
También puede acceder a estas páginas siguiendo los enlaces de página inicial de software de IBM en la dirección ibm.com/software/
REDP0503 proporciona una excelente visión general de este producto. Vaya al sitio Redbooks, pulse Redpapers en el lado izquierdo y pulse en el título "IBM WebSphere Development Tools for AS/400: An Introduction". Verá un resumen del documento. Pulse Ver en línea para leer una versión PDF del documento.
Siga los grupos de noticias y envíe sus preguntas :
Servidor de noticias:
news.software.ibm.com
Grupos de noticias recomendados:
ibm.software.code400
ibm.software.vajava
ibm.software.varpg
ibm.software.websphere.studio400
license
bajo el directorio
de instalación del producto.
Esta información se ha elaborado para productos y servicios que se ofrecen en Estados Unidos. Es posible que IBM no ofrezca todos los productos, servicios o características que se tratan en este documento en otros países. Consulte con el representante local de IBM para obtener información acerca de los productos y servicios que actualmente están disponibles en su localidad. Las referencias a productos, programas o servicios IBM no pretenden afirmar ni dar a entender que únicamente puedan utilizarse dichos productos, programas o servicios IBM. En su lugar, puede utilizarse cualquier producto, programa o servicio funcionalmente equivalente que no vulnere ninguno de los derechos de propiedad intelectual de IBM. No obstante, es responsabilidad del usuario evaluar y verificar el funcionamiento de cualquier producto, programa o servicio que no sea de IBM.
IBM puede tener patentes o solicitudes de patente pendientes que cubran las materias tratadas en este documento. La entrega de este documento no le otorga ninguna licencia sobre dichas patentes. Puede enviar las consultas sobre licencias, por escrito, a la siguiente dirección:
Director of LicensingEl siguiente párrafo no es aplicable en el Reino Unido ni en ningún otro país donde tales estipulaciones sean contradictorias con la legislación local: INTERNATIONAL BUSINESS MACHINES CORPORATION PROPORCIONA ESTA PUBLICACIÓN "TAL CUAL", SIN NINGÚN TIPO DE GARANTÍA, EXPLÍCITA O IMPLÍCITA, INCLUYENDO, PERO SIN LIMITARSE A, LAS GARANTÍAS IMPLÍCITAS DE NO VULNERACIÓN, COMERCIALIZACIÓN E IDONEIDAD PARA UNA FINALIDAD DETERMINADA. Algunas legislaciones no contemplan la declaración de limitación de responsabilidad de las garantías, ni implícitas ni explícitas, en determinadas transacciones, por lo que cabe la posibilidad de que esta declaración no se aplique en su caso.
Esta información puede contener imprecisiones técnicas o errores tipográficos. Periódicamente se efectúan cambios en la información incluida en este documento; estos cambios se incorporarán en nuevas ediciones de la publicación. IBM puede efectuar mejoras y/o cambios en los productos y/o programas descritos en esta publicación en cualquier momento y sin previo aviso.
Las referencias hechas en esta información a páginas Web de terceros se proporcionan sólo como gentileza para los usuarios y de ninguna manera puede interpretarse que IBM se responsabiliza de dichas páginas Web. Los materiales de estos sitios Web no forman parte de los materiales de IBM para este producto y el uso que se haga de estos sitios Web es de la entera responsabilidad del usuario.
Los licenciatarios de este programa que deseen obtener información acerca del mismo con el fin de: (i) intercambiar la información entre los programas creados independientemente y otros programas (incluido éste) y (ii) utilizar mutuamente la información que se ha intercambiado, deben ponerse en contacto con:
IBM Canada Ltd. Department 071Tal información puede estar disponible, sujeta a los términos y a las condiciones adecuadas, incluyendo en algunos casos el pago de una cuota.
IBM proporciona el programa bajo licencia descrito en esta información, así como todo el material bajo licencia disponible, según los términos del Acuerdo de Cliente de IBM, del Acuerdo Internacional de Programas bajo Licencia de IBM o de cualquier otro acuerdo equivalente entre ambas partes.
Esta documentación describe la interfaz de programación de uso general y la información de guía asociada que proporciona IBM WebSphere Development Tools para iSeries.
Los términos siguientes son marcas o marcas registradas de International Business Machines Corporation en Estados Unidos y/o en otros países:
|
|
|
|
InstallShield es una marca registrada de InstallShield Corporation.
Intel y Pentium son marcas registradas de Intel Corporation.
Java y todas las marcas registradas derivadas de Java son marcas registradas de Sun Microsystems, Inc. en Estados Unidos y/u otros países.
Netscape Navigator es una marca registrada de Netscape Communications Corporation.
ActiveX, Microsoft, SourceSafe, Visual C++, Visual SourceSafe, Windows, Windows NT, Win32, Win32s y el logotipo de Windows son marcas registradas de Microsoft Corporation en Estados Unidos y/o en otros países.
Otros nombres de empresas, productos y servicios pueden ser marcas registradas o marcas de servicio de terceros.