Este documento contiene información de última hora para Microsoftreg; Transaction Server (MTS).
Para obtener más información, vea los siguientes temas:
Configurar Microsoft Transaction Server
Novedades de MTS 2.0
Documentación del producto MTS
Las siguientes secciones contienen información de última hora que no se trata en la documentación normal, además de limitaciones y problemas conocidos.
Al instalar MTS, establezca de la siguiente forma la identidad del paquete de sistema antes de crear ningún nuevo paquete:
Asegúrese de que la cuenta de usuario para las identidades del paquete del sistema y otros paquetes MTS tiene el derecho de usuario de Windows NT "Iniciar sesión como servicio". Puede comprobarlo mediante el Administrador de usuarios de Windows NT:
Esta información reemplaza completamente la documentación anterior que describía cómo utilizar Oracle con Microsoft Transaction Server, incluida la de la documentación de Ayuda en pantalla de Microsoft Transaction Server 2.0.
Puede habilitar los componentes transaccionales de MTS para que tengan acceso a una base de datos Oracle 7.3.3 a través de ODBC. MTS funciona con Oracle 7 Workgroup Server para Windows NT, Oracle 7 Enterprise Server para Windows NT, Oracle 7 Enterprise Servers en UNIX y Oracle Parallel Server en UNIX.
El componente MTS puede tener acceso a una base de datos de Oracle 8 tanto en Windows NT como en Unix siempre que el componente de Microsoft Transaction Server utilice el software de cliente de Oracle 7.3.3. MTS no es compatible con el software de cliente de Oracle 8.
Esta sección incluye los siguientes temas:
Es necesario el siguiente software para obtener acceso a una base de datos de Oracle desde componentes de MTS.
Componente | Versión |
Oracle Database para Windows NT | 7.3.3 (con revisión 4 o posterior) |
Oracle Database para UNIX | 7.3.3 (con revisiones) |
Oracle SQL*Net | 2.3.3 (con revisión 2.3.3.0.3 o posterior) |
Oracle OCIW32.DLL | 1.0.0.5 o posterior |
Oracle SQLLIB18.DLL | 1.8.3.0.1 o posterior |
Oracle XA73.LIB | 7.3.3.2.0 o posterior |
Microsoft Transaction Server 2.0 | 2.0 |
Controlador ODBC para Oracle de Microsoft (MSORCL32.DLL) | 02.73.7283.1 o posterior |
Objetos de datos ActiveX (ADO) | 1.5 |
Nota importante: Versiones anteriores del software no funcionarán correctamente. Asegúrese de que instala estas versiones o posteriores del software. No hacerlo es, con diferencia, el origen más común de problemas al intentar utilizar Microsoft Transaction Server con Oracle.
Si la base de datos de Oracle reside en Windows NT, puede instalar tanto la versión 7.3.3 de Oracle Workgroup Server para Windows NT como la 7.3.3 de Oracle Enterprise Server para Windows NT. Oracle 7.3.2 y versiones anteriores de Oracle para Windows NT no son compatibles y no funcionarán en conjunción con las transacciones de MTS.
Debe instalar la versión de revisión Oracle 7.3.3 que se enumera en la tabla anterior. La versión 7.3.3 de Oracle no funcionará con MTS a menos que se instale esta versión de revisión.
Debe enviar un informe de problemas a Oracle Customer Support Organization (la organización de soporte de cliente de Oracle) para obtener esta versión de revisión. Esta versión de revisión no estaba disponible en el sitio Web público de Oracle en el momento que se escribió esta nota.
Puede instalar Oracle 8 para Windows NT siempre que los componentes de Microsoft Transaction Server utilicen el software de cliente de Oracle 7.3.3. MTS no es compatible con el software de cliente de Oracle 8.
Si la base de datos de Oracle reside en UNIX, debe instalar la versión 7.3.3 (o posterior) de Oracle para esa plataforma UNIX. En la mayoría de los casos, también necesitará instalar una versión de revisión de Oracle 7.3.3 para Oracle en UNIX.
Debe consultar con el soporte de cliente de Oracle para determinar si es necesaria una versión de revisión de Oracle 7.3.3 para la plataforma UNIX. Explique que va a tener acceso a la base de datos Oracle en UNIX mediante la nueva compatibilidad de transacciones XA que ahora se incluye en la versión Oracle 7.3.3 para Windows NT.
Se sabe que las siguientes versiones con revisión funcionan:
Plataforma | Revisión de Oracle |
HP 9000 | 7.3.3.3 |
IBM AIX | 7.3.3.2 |
Sun Solaris | 7.3.3.2 |
Puede instalar Oracle 8 para Unix siempre que los componentes de Microsoft Transaction Server utilicen el software de cliente de Oracle 7.3.3. MTS no es compatible con el software de cliente de Oracle 8.
Si los componentes de Microsoft Transaction Server tienen acceso a una base de datos Oracle en un sistema remoto Windows NT o Unix, asegúrese de que el siguiente software de cliente de Oracle está presente en el sistema Microsoft Transaction Server. Asegúrese de que el software de cliente tiene el nivel de versión adecuado. La tabla del comienzo de la sección Software necesario especifica que versiones son necesarias.
Componente |
Oracle SQL*Net |
Oracle OCIW32.DLL |
Oracle SQLLIB18.DLL |
Oracle XA73.LIB |
Debe instalar la versión especificada de Oracle SQL*Net en el sistema de Microsoft Transaction Server.
Debe instalar la versión especificada de OCIW32.DLL de Oracle en el sistema de Microsoft Transaction Server.
Se sabe que la siguiente versión de OCIW32.DLL de Oracle funciona:
Versión 1, 0, 0, 5 Martes, 18 de marzo de 1997 2:47:52 p.m. Tamaño 18KB.
Se sabe que la siguiente versión de OCIW32.DLL de Oracle falla:
Versión 7.x Jueves, 1 de febrero de 1996 12:50:06 a.m. Tamaño 36 KB
Obtuvimos la versión correcta de esta DLL del CD de instalación de Oracle 7.3.3, del directorio \WIN32\V7\RSF73.
Debe instalar la versión especificada de SQLLIB18.DLL de Oracle en el sistema de Microsoft Transaction Server.
Debe instalar la versión especificada de XA73.LIB de Oracle en el sistema de Microsoft Transaction Server.
Debe instalar Microsoft Transaction Server 2.0 si desea tener acceso a una basa de datos de Oracle mediante Microsoft Transaction Server bajo control de transacciones.
Se necesita el controlador 2.0 de ODBC para Oracle de Microsoft (MSORCL32.DLL) versión 02.73.7283.1 o posterior. El programa Windows NT 4.0 Option Pack instala automáticamente esta DLL.
Si desea tener acceso a una base de datos de Oracle, le recomendamos que utilice el nuevo controlador ODBC para Oracle 2.0 de Microsoft, incluso aunque no necesite compatibilidad con transacciones. Este nuevo controlador ofrece mejor rendimiento que el controlador para Oracle 1.0, al que sustituye. El controlador 1.0 secuenciaba toda la actividad en el nivel del controlador; había un único proceso de peticiones a través del controlador. El controlador para Oracle 2.0 secuencia todas las actividades en el nivel de conexión. Esto permite que se utilicen en paralelo varias conexiones con bases de datos.
Si las aplicaciones utilizan ADO, debe instalar ADO versión 1.5. Versiones anteriores de ADO no funcionarán con el nuevo Administrador de controladores ODBC 3.5. ADO 1.5 se incluye con Windows NT 4.0 Option Pack.
Para configurar la compatibilidad con Oracle de los componentes transaccionales de MTS
Si su base de datos Oracle se encuentra en un sistema Windows NT, instale Oracle versión 7.3.3 para Windows NT.
Si su base de datos Oracle se encuentra en un sistema UNIX, instale Oracle versión 7.3.3 para ese sistema.
Asegúrese de que está instalada la versión correcta de OCIW32.DLL de Oracle como se describe en la sección Software necesario.
Si la base de datos de Oracle se encuentra en un sistema Windows NT, instale la versión de revisión de Oracle 7.3.3 que se enumera en la sección Software necesario.
Si la base de datos de Oracle se encuentra en un sistema UNIX, instale la versión de revisión de Oracle 7.3.3 que sea necesaria para su versión de UNIX.
Si los componentes de Microsoft Transaction Server tienen acceso a una base de datos Oracle en un sistema Windows NT o Unix remoto, asegúrese de que el software de cliente de Oracle correcto está presente en el sistema de Microsoft Transaction Server.
Instale la versión de revisión de Oracle especificada en el sistema de Microsoft Transaction Server y asegúrese de que el software de cliente coincide con los niveles de versión enumerados en la tabla de la sección Software necesario.
Al instalar Microsoft Transaction Server 2.0, se instalará el siguiente software.
Si nunca instaló Microsoft Transaction Server 2.0 Beta, omita este paso.
Si instaló anteriormente Microsoft Transaction Server 2.0 versión beta, utilice el Explorador de Windows para determinar si el archivo DTCXATM.LOG está presente en el sistema. Si es así, detenga el servicio Microsoft DTC y elimine el archivo DTCXATM.LOG.
Sólo debe eliminar el archivo DTCXATM.LOG una vez, cuando actualice por primera vez desde la versión beta de Microsoft Transaction Server 2.0. Nunca debe eliminar el archivo DTCXATM.LOG después de ello, porque puede contener información vital de recuperación.
Realice los siguientes pasos para habilitar la compatibilidad con transacciones XA de Oracle:
Grant Select on V$XATRANS$ to public.
Consulte la documentación del servidor de Oracle para obtener más información acerca de cómo configurar la compatibilidad con transacciones XA de Oracle.
Las bases de datos de Oracle tienen una seguridad integrada que utiliza la autenticación de Windows NT para validar a los usuarios de las bases de datos. Esto permite a un usuario iniciar una sesión en Oracle sin proporcionar una cuenta de usuario y contraseña independientes. Los usuarios pueden mantener una única cuenta de usuario y contraseña tanto para Windows NT como para Oracle.
Si los componentes de MTS siempre suministran una cuenta de usuario y una contraseña al conectarse a bases de datos de Oracle, no utiliza seguridad integrada. Esto es cierto tanto si las aplicaciones especifican la cuenta de usuario y la contraseña directamente como si lo hacen indirectamente mediante un DSN de ODBC. En ambos casos, no utiliza seguridad integrada y puede omitir este paso.
Si utiliza seguridad integrada, debe configurar MS DTC para que se ejecute bajo un nombre de usuario y una contraseña autorizados a conectarse a la base de datos de Oracle. Esto es necesario porque durante la recuperación de base de datos, MS DTC abre la base de datos de Oracle para informar del resultado de las transacciones dudosas. Vea "Cambiar la cuenta de usuario bajo la que se ejecuta Microsoft Distributed Transaction Coordinator" a continuación. Utilice las herramientas de administración de seguridad de Oracle para asegurarse de que el nombre de usuario que especifica está autorizado para abrir la base de datos de Oracle.
Para obtener más información acerca de las características de seguridad integrada de Windows NT de Oracle, consulte la documentación de Oracle.
Si desea crear más de unas pocas docenas de conexiones a una base de datos de Oracle, debe configurar el servidor de Oracle para que admita conexiones adicionales de base de datos. Vea "Configurar Oracle para admitir un número grande de conexiones" a continuación para obtener más información.
Tras instalar y configurar la compatibilidad con Oracle, debe validar la instalación de Oracle mediante el programa de prueba de Oracle que se instala con MTS. El programa de prueba de Oracle utiliza las interfaces OCI de XA de Oracle en una forma muy similar a la que las utiliza MTS.
El programa de prueba de Oracle determina si puede conectarse a una base de datos de Oracle mediante la característica XA de Oracle. El programa de prueba de Oracle utiliza interfaces y características de transacción estándares de Oracle. No utiliza Microsoft Transaction Server ni Microsoft Distributed Transaction Coordinator. Por lo tanto, el fallo del programa de prueba indica que el sistema Oracle está incorrectamente instalado o configurado. Si el programa de prueba de Oracle falla, reinstale y vuelva a configurar Oracle o póngase en contacto con la organización de soporte de Oracle para obtener asistencia.
Para ejecutar el programa de prueba de Oracle
Elimine todos los archivos de rastreo de Oracle existentes del equipo que contiene los componentes MTS que tienen acceso a la base de datos de Oracle. La forma más fácil de hacerlo es utilizar Windows Explorer para ubicar y eliminar todos los archivos *.TRC.
Si el programa de prueba de Oracle falla, los archivos de rastreo le pueden ayudar a determinar el origen del problema. Al eliminar todos los archivos de rastreo obsoletos, le es más fácil encontrar los recién creados.
Si nunca instaló Microsoft Transaction Server 2.0 versión beta, puede omitir este paso.
Sólo debe eliminar el archivo DTCXATM.LOG una vez, cuando actualice por primera vez desde la versión beta de Microsoft Transaction Server 2.0. Nunca debe eliminar el archivo DTCXATM.LOG después de ello, porque puede contener información vital de recuperación.
c:>TestOracleXaConfig.exe -U<Id usuario> -P<Contraseña> -S<Nombre_servicio como se contiene en el archivo TNS>.
Si ejecuta el programa de prueba sin parámetros, el programa mostrará información de Ayuda que describe los parámetros necesarios.
El programa de prueba mostrará información acerca de cada operación de Oracle que realice e indicará si cada operación tuvo éxito.
Tras validar la instalación y configuración de Oracle mediante el programa de prueba de Oracle, debe utilizar la aplicación Sample Bank suministrada con Microsoft Transaction Server para asegurarse de que Microsoft Transaction Server puede tener acceso a la base de datos de Oracle.
Para validar la compatibilidad con Oracle mediante Sample Bank
Propietario scott
Nombre de tabla Account
Nombre de columna 1 AccountNo de tipo NUMBER
Nombre de columna 2 Balance de tipo NUMBER
AccountNo Balance
1 1000
2 1000
[ODBC]
DRIVER=Microsoft ODBC for Oracle
UID=scott
PWD=micontraseña
ConnectString=miservidor
SERVER=miservidor
Oracle cambia en ocasiones los nombres de las DLL al lanzar nuevas versiones de su producto. Microsoft Transaction Server se basa en conocer los nombres de algunas DLL de Oracle. MTS busca actualmente los nombres de las DLL proporcionadas con la versión 7.3.3 de Oracle. Si Oracle cambia el nombre de estas DLL, debe modificar los valores en las siguientes claves del Registro:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Transaction Server\Local Computer\My Computer
Bajo esta clave hay dos valores con nombre de cadena.
Si configura MicrosoftÒ Distributed Transaction Coordinator (DTC) para que se ejecute bajo una cuenta que no sea la del sistema, debe especificar una cuenta que sea miembro del grupo Administradores. Si no, MS DTC puede no iniciarse y verá el siguiente mensaje en el Registro de sucesos de Windows NT.
XATM log object failed to set log encryption key
(El objeto de registro XATM no puede establecer la clave de cifrado de registro)
Puede configurar el Id. de usuario para MS DTC como sigue:
Si desea crear más de unas pocas docenas de conexiones a una base de datos de Oracle, debe configurar el servidor de Oracle para que admita conexiones adicionales de base de datos.
Se pueden producir uno o varios de los siguientes errores si no lo hace:
Si ocurre cualquiera de estos problemas, piense en aumentar los siguientes parámetros de configuración del servidor de Oracle:
Sessions
El valor de sessions
debe ser normalmente el triple del número total de conexiones de base de datos que espera que hagan las aplicaciones.
Queuesize
Si queue size
para el proceso Oracle Listener no es adecuado, a veces Listener cae por detrás y rechaza las peticiones de apertura de base de datos. Esto sucede si Oracle Listener recibe demasiadas peticiones de conexión y su cola se desborda. Un cliente que encuentre este problema informa con el mensaje 'ORA-12541: No Listener' y los archivos de registro o rastreo del cliente mostrarán el mensaje ECONREFUSED.
Para corregir este problema:
Recomendamos que seleccione un valor generoso para QUEUESIZE
porque el sistema de Oracle normalmente abre más de una conexión de base de datos para cada conexión de base de datos transaccional que abre la aplicación. Como resultado la cola de Oracle Listener se puede llenar y desbordarse.
Para adaptarse a 100 peticiones, cambie el archivo LISTENER.ORA como sigue:
QUEUESIZE = 100
Si las aplicaciones utilizan ADO, asegúrese de que instala ADO 1.5. Consulte la sección Software necesario para obtener más información.
La conectividad con bases de datos de Oracle no es compatible con los componentes de Microsoft Transaction Server que se ejecutan en la plataforma Alpha de Digital. La compatibilidad con Oracle en la plataforma Alpha de Digital se agregará en una versión futura.
Es importante que la versión correcta de OCIW32.DLL esté instalada en el equipo. Debe comprobar la versión de esta DLL cada vez que reinstale Oracle o Microsoft Transaction Server.
Las aplicaciones de Microsoft Transaction Server que residen en clústeres de MSCS (Wolfpack) no pueden tener acceso a bases de datos XA, bases de datos Oracle incluidas. Esto es a consecuencia de una limitación en Microsoft Distributed Transaction Coordinator.
Actualmente, Microsoft Distributed Transaction Coordinator almacena la información de cifrado relacionada con la recuperación de XA en el registro de Windows NT. Esta información no se puede duplicar actualmente entre los dos nodos de un clúster MSCS. Como resultado, Microsoft DTC no se puede utilizar con ninguna base de datos que cumpla las normas XA en un entorno de clústeres. Intentaremos eliminar esta restricción en una versión futura.
Si la aplicación realiza transacciones que abarcan dos o más equipos, debe asegurarse de que los MS DTC de esos equipos están configurados para comunicarse entre sí. MS DTC se ejecuta de forma predeterminada bajo la identidad de la cuenta del sistema. MS DTC en un equipo se puede comunicar con MS DTC de otro equipo sólo si las cuentas Invitado de ambos equipos están activadas. Si desactiva la cuenta Invitado en cualquiera de las máquinas o en el dominio de Windows NT al que pertenecen, debe configurar MS DTC para que se ejecute bajo algún otro nombre de usuario que se pueda comunicar con el equipo remoto. Vea "Cambiar la cuenta de usuario bajo la que se ejecuta Microsoft Distributed Transaction Coordinator" más arriba.
Los clientes que utilizan MS DTC en un entorno MSCS deben instalar Windows NT QFE Q116844. Este QFE corrige un problema de Llamada a procedimiento remoto (RPC) que puede hacer que un cliente MS DTC se bloquee al intentar conectarse a MS DTC en un servidor en clúster. Esta corrección también forma parte de Windows NT QFE1, disponible en el sitio Web de descarga de Windows NT Option Pack.
Los servidores en clúster deben establecer en la propiedad Remote Server Name (Nombre de servidor remoto) un nombre de servidor virtual mediante MTS Explorer. Esto permite que los clientes remotos tengan acceso a los componentes de MTS dentro del clúster y, en caso de fallo, garantiza que los clientes hagan referencia al clúster, no a un nodo específico dentro de ese clúster.
Para paquetes MTS en clústeres MSCS, la cuenta de usuario asociada a la identidad del paquete debe ser un administrador del sistema o debe tener permisos de acceso Control total en el clúster (como se establece en cluadmin). Si no ejecuta el paquete bajo la identidad de un administrador del sistema, MTS no podrá conectar con MS DTC.
MTS necesita que los directorios de Windows NT tengan la misma ruta de acceso en todos los nodos dentro de un clúster de MSCS (por ejemplo, c:\winnt).
Debe cerrar todos los recursos de clúster de MSCS (como SQL Server) a los que afecta la instalación de MTS antes de ejecutar el programa de instalación de MTS.
Puede instalar SQL Server 6.5 después de instalar MTS. Se recomienda que instale SQL Server 6.5 antes de instalar MTS. Si instala SQL Server 6.5 después de instalar MTS, el programa de la instalación de MTS intentará asegurarse de que MS DTC funciona adecuadamente.
Para su comodidad, MTS incluye la secuencia de comandos INSTCAT.SQL. Esta secuencia de comandos actualiza los procedimientos almacenados en catálogo para el controlador ODBC de SQL Server. Si no lo ha hecho ya, ejecute esta secuencia de comandos mediante la utilidad isql de SQL Server.
La autorización de seguridad no está habilitada de forma predeterminada.
No puede establecer un grupo como identidad de un paquete.
Al establecer la identidad de un paquete, MTS valida la contraseña que escribe. Sin embargo, si cambia la contraseña de la cuenta sin actualizar la contraseña en MTS Explorer, el paquete no se puede ejecutar.
El archivo de registro de MS DTC se puede ubicar ahora en un directorio comprimido. Sin embargo, para un rendimiento óptimo, no comprima ni almacene en un directorio comprimido el archivo de registro de Microsoft DTC. MS DTC debe descomprimir el archivo de registro antes de que se pueda utilizar.
Al restablecer el archivo de registro de MS DTC en Windows 95, puede que vea un cuadro de diálogo llamado "MTxOCI" seguido por un segundo cuadro de diálogo llamado ""Fallo al crear el archivo de registro MS DTC." Si ocurre esto, debe deshabilitar el inicio automático de MS DTC como se describe en "Supervisar transacciones MTS en Windows 95." Reinicie el equipo y restablezca el archivo de registro. A continuación, puede volver a habilitar el inicio automático de MS DTC.
Otros problemas al restablecer el archivo de registro de MS DTC se pueden corregir si cierra MTS Explorer, reinicia MTS Explorer e intenta restablecer de nuevo. En algunos casos, pueden hacer falta varios intentos antes de tener éxito.
La documentación para iniciar y detener MS DTC en MicrosoftÒ WindowsÒ 95 debe decir lo siguiente:
De forma predeterminada, Microsoft Distributed Transaction Coordinator (MS DTC) está configurado para iniciarse automáticamente cuando se inicia un sistema Windows NT o Windows 95. Para evitar que MS DTC se inicie automáticamente tras reiniciar un equipo Windows 95, utilice el editor del Registro para buscar la clave de Registro HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\RunServices y, a continuación, elimine la entrada de valor llamada MSDTC. Si desea habilitar de nuevo el inicio automático de MS DTC, utilice el editor del Registro para crear una entrada de valor llamada MSDTC con el valor de cadena "msdtcw -start"
bajo la clave de Registro HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\RunServices .
Observe que el nombre del servicio es "msdtcw"
, no "msdtc"
, y que hay un espacio antes del guión.
No puede administrar remotamente una instalación de MTS 2.0 desde un equipo que ejecute una versión anterior de MTS. Intentar hacerlo devolverá un código de error o hará que MTS Explorer termine inesperadamente.
El cierre individual de paquetes no se admite al administrar remotamente un equipo MTS 1.x.
Tras instalar MTS 2.0, puede que vea una Violación de acceso al cerrar MicrosoftÒ Visual BasicÒ 5.0. Este es un problema conocido de Visual Basic 5.0 que se puede corregir si instala Visual StudioÔ Service Pack 2 desde http://www.microsoft.com/vstudio. Consulte el artículo Q167213 de la Knowledge Base para obtener más información acerca de este problema.
Hay un problema conocido que ocurre cuando, si un proceso de servidor de MTS termina inesperadamente (por un fallo, una declaración o una violación de acceso), los subsiguientes intentos de reiniciar la aplicación crean múltiples procesos MTS. (El comportamiento correcto debe ser sólo un proceso MTS por paquete.) En el caso de terminación inesperada de proceso de servidor, debe reiniciar el equipo Windows 95.
Hay un problema conocido que puede causar interbloqueos al utilizar más de aproximadamente 40 conexiones de canalizaciones con nombre desde un cliente Windows 95 a MS Distributed Transaction Coordinator (DTC). Para corregir este problema, cambie el protocolo entre el controlador ODBC y SQL Server a TCP/IP.
COM permite que un servidor emule a otro mediante las claves de Registro TreatAs o AutoTreatAs. Suponga que un cliente crea un componente de un CLSID dado mediante CoCreateInstance. Si la clave TreatAs o AutoTreatAs está presente bajo ese CLSID en el Registro, COM creará en su lugar el componente indicado por esta clave. Esto efectivamente enruta las peticiones de cliente al servidor de emulación. (El mismo enrutamiento es posible mediante ProgID si el cliente hace referencia a sus servidores mediante ProgID en lugar de CLSID.)
Los componentes que se emulan mediante TreatAs o AutoTreatAs no son componentes validos de MTS y no se pueden importar. Si la emulación se va a agregar después de que se importe el componente, el componente se debe eliminar del catálogo MTS y, a continuación, reemplazarlo con el componente que emula.
Dentro de un proceso de servidor, los objetos de la misma actividad deben registrarse con modelos de subprocesamiento compatibles. Son válidas las siguientes combinaciones:
Observe que esto significa que los componentes de subproceso único de MTS no pueden ser creados por una página Active Server que se ejecute dentro de proceso con IIS o dentro de proceso con una aplicación de IIS mediante aislamiento de proceso.
Se desaconseja totalmente crear servidores locales que no sean MTS mediante el método CreateInstance del objeto de contexto. Tales servidores no se escalarán bien y pueden tener como resultado instancias adicionales de servidor que no sean cerradas por MTS. Si necesita crear un servidor local que no sea MTS, utilice CoCreateInstance.
No utilice suplentes de COM dentro de MTS. En su lugar, cargue los servidores dentro de proceso en procesos de servidor de MTS.
El control de acceso a paquetes de MTS basado en funciones no funciona correctamente cuando los paquetes tienen como aplicación para el usuario multliplexores que suplantan múltiples clientes (por ejemplo, Internet Information Server). Los paquetes de MTS utilizados en estos entornos se deben configurar con la seguridad deshabilitada.
Esto se puede corregir si instala Windows NT QFE1, que está disponible en el sitio Web de descarga de Windows NT Option Pack. Después de instalar este QFE, la seguridad basada en funciones funcionará correctamente con IIS.
Cuando crea aplicaciones IIS seguras que utilizan aislamiento de procesos, IIS crea un paquete MTS que se establece para ejecutarse como IWAM_<nombre de equipo>. Si desea cambiar la identidad de estos paquetes, también debe agregar la identidad del nuevo paquete al grupo "MTS Trusted Impersonators" o la seguridad no funcionará correctamente en otros componentes de MTS fuera de proceso a los que llame el paquete. Si no se hace esto, parecerá que el que llama es IWAM_<nombre de equipo> en lugar de el cliente real de IIS.
ADO borra cualquier información que pueda haber colocado en el objeto ErrorInfo. Hay una solución de código para este problema que necesita implementarse en el tratamiento de errores.
Para Visual Basic, el código es similar al siguiente:
ErrorHandler: ' limpieza If Not adoRS Is Nothing Then Set adoRS = Nothing End If If Not adoConn Is Nothing Then Set adoConn = Nothing End If Err.Raise Err.Number, "Bank.Accout.Post", Err.Description Exit Function
Para Visual C++, el código es similar al siguiente:
// // Aquí se guarda ErrorInfo porque el siguiente // código de limpieza de ADO puede borrarlo. // IErrorInfo * pErrorInfo = NULL; GetErrorInfo(NULL, &pErrorInfo); if (adoRsBalance) adoRsBalance->Release(); if (adoCoConnection) adoCoConnection->Release(); AtlReportError( CLSID_CAccount, pErrMsg, IID_IAccount, hr); // // poner el error de nuevo en TLS // SetErrorInfo(NULL, pErrorInfo);
Para Visual J++, el código es similar al siguiente:
if (adoRsBalance != null) { if (adoRsBalance.getState() == ObjectStateEnum.adStateOpen) adoRsBalance.Close(); ComLib.release (adoRsBalance); } if (adoConn != null) { if (adoConn.getState() == ObjectStateEnum.adStateOpen) adoConn.Close(); ComLib.release (adoConn); }
Nota En Java debe cerrar explícitamente los objetos Recordset y las conexiones así como liberar explícitamente los objetos ADO.
La documentación afirma incorrectamente que se proporciona una versión de página Active Server (ASP) del cliente de Sample Bank.
MTS 1.0 tenía un límite de 100 métodos por componente. En MTS 2.0 este límite es ahora 1024 métodos.
Los componentes que utilizan RDO 2.0 y a los que tienen acceso concurrentemente múltiples clientes pueden experimentar violaciones de acceso. Esto se ha observado en servidores que tienen múltiples procesadores. Este problema no se ha observado en componentes que utilizan ADO.
Los ejemplos de Visual Basic Scripting (VBScript) para automatizar la administración de MTS se encuentran en \Archivos de programa\Mts\Samples, no en \Archivos de programa\Mtx\Samples\WSH como se indica en la documentación.
Para compilar los componentes Java de Sample Bank en Windows 95, ejecute midl.exe sobre el archivo Account.idl y, a continuación, ejecute SetJavaDev.bat.
Los componentes MTS no se deben generar como DLL de extensión de MFC porque sólo las aplicaciones MFC pueden cargar tales DLL. Un componente de COM y por lo tanto un componente de MTS, se debe generar de tal forma que pueda ser cargado en cualquier proceso, independientemente del tipo de aplicación que inició el proceso.
Para obtener más información acerca de las DLL de extensión de MFC, vea Programmer's Guide de Microsoft Visual C++.
Cuando un proceso de Mtx.exe que ejecuta componentes de Visual Basic 4.0 se "Cierra por estar inactivo durante x minutos", hay un problema conocido que tiene como resultado una Violación de acceso de lectura. Actualmente no hay solución conocida a este problema. Se piensa que si se utilizan más de dos componentes de Visual Basic 4.0 en un proceso es más posible que ocurra. Una solución es establecer el paquete como "Dejar ejecutando cuando esté inactivo". Este problema sólo aparece al utilizar componentes generados con Visual Basic 4.0 -- no existe el problema con Visual Basic 5.0.
Si su componente de servidor utiliza RDO, no permita nunca que un rdoConnection con un rdoResultset activo quede fuera de alcance, o se producirá un interbloqueo. Debe cerrar manualmente rdoResultset o rdoConnection para evitar el interbloqueo. La siguiente secuencia da lugar a un interbloqueo:
Para evitar el interbloqueo, cierre manualmente el conjunto de resultados (o la conexión) al final del paso 1, lo que provoca que las llamadas a ODBC cierren inmediatamente la instrucción (y la conexión). El problema radica en el retardo provocado por el mensaje expuesto en la ventana oculta, que retrasa los cierres ODBC.
Siempre que vuelve a compilar un proyecto de DLL de OLE en Visual Basic 4.0, Visual Basic vuelve a escribir las entradas de registro para todos los componentes (clases de Visual Basic) que residan en esa DLL. Además, Visual Basic puede generar nuevos GUID (según la configuración del proyecto) para identificar los componentes de esa DLL. Es decir, sus componentes MTS ya no están debidamente registrados en el catálogo de MTS.
Existen dos maneras de resolver este problema. En primer lugar, hay un botón Actualizar en Transaction Server Explorer, así como el comando Actualizar todos los componentes en el menú Herramientas. Si utiliza este comando, Microsoft Transaction Server corregirá todas las incoherencias de las entradas de componentes en el registro que se encuentran actualmente en el panel derecho de Explorer.
Si instala la versión de programación de Microsoft Transaction Server, active la opción VB Addin para activar una característica que actualizará automáticamente sus componentes antes de volver a compilarlos. La próxima vez que ejecute Visual Basic 4.0, el complemento se instalará automáticamente en el IDE de Visual Basic. También puede activar y desactivar la característica según el proyecto si activa o desactiva el comando MTxServer RegRefresh | Actualización automática después de compilar en el menú Complementos de Visual Basic. Si decide que desea actualizar todos sus componentes de Microsoft Transaction Server en un momento determinado, puede utilizar el comando MTxServer RegRefresh | Actualizar todos los componentes ahora del menú Complementos.
Importante El complemento de Visual Basic se ha actualizado para funcionar con Visual Basic versiones 4.0 y 5.0. Una vez instalado, actualizará automáticamente el catálogo de Transaction Server con los cambios realizados durante cada compilación. Ya no estará disponible la opción de menú de complemento que permitía activar y desactivar la actualización automática.
La utilización del complemento permite una correcta actualización del catálogo de MTS, incluso después de compilaciones de Visual Basic que generen nuevos GUID de componentes. Por otra parte, la opción Servidor OLE compatible del cuadro de diálogo Opciones del proyecto de Visual Basic podrá utilizarse para impedir que Visual Basic genere nuevos GUID de componentes.
La actualización del catálogo de MTS depende de que no modifique los ProgID de sus componentes. En Visual Basic 4.0, el ProgID de un componente se formaba con la concatenación siguiente: nombre de proyecto.nombre de clase. Si modifica alguno de estos elementos, tendrá que volver a instalar sus componentes en MTS Explorer.
Si genera un componente en Visual Basic 4.0 sin seleccionar la opción Servidor OLE compatible, se sustituirán el CLSID y el IID antiguos en cada compilación. Esto entraña algunos inconvenientes cuando se programa un componente MTS, incluso con el complemento de Visual Basic activado:
Cuando comunique un error, incluya la siguiente información en su informe:
Si tiene una pregunta técnica acerca de Microsoft® Transaction Server, utilice esta documentación en pantalla o consulte la Ayuda haciendo clic en el botón Ayuda durante un procedimiento. Si sigue teniendo dudas, Microsoft ofrece soporte técnico y servicios que van desde herramientas de ayuda automática a la asistencia directa de un ingeniero de soporte de Microsoft. Nota: los servicios disponibles en Estados Unidos y Canadá se proporcionan en inglés (v. Vea Soporte técnico en español y Soporte técnico a nivel mundial a continuación).
Soporte técnico en línea de Microsoft: Este novedoso sitio utiliza la tecnología más reciente de Microsoft para ayudarle a tener acceso a la información técnica y a los recursos más relevantes para responder a sus preguntas de soporte. Utilice los Asistentes para solución de problemas para hacer diagnósticos y responder a respuestas técnicas fácilmente. O bien, seleccione artículos técnicos, ayudas de programación o preguntas frecuentes en Microsoft Knowledge Base con más de 75.000 artículos. Visite http://www.microsoft.com/support/ ahora y vea qué fácil es encontrar las respuestas que necesita.
Soporte de pago por incidente: Si todavía necesita respuestas a sus dudas técnicas puede adquirir Pay-Per-Incident Support (Soporte de pago por incidente). En Estados Unidos y Canadá y con un costo de 195 dólares por incidente, llame al teléfono (800) 936-5900, 24 horas al día, siete días a la semana, incluso festivos.
Nota: Las tarifas de soporte para las llamadas a los números (800)# se facturarán a su tarjeta de crédito VISA, MasterCard o American Express.
Soporte anual con prioridad: Si prevé un volumen alto de incidentes de soporte o necesita un acceso con prioridad a los ingenieros de soporte técnico de Microsoft, puede adquirir una Priority Annual Comprehensive Account (Cuenta anual global de prioridad). En Estados Unidos de América y Canadá, para obtener más información o para adquirir una cuenta anual con un costo de 1.695 dólares por 10 incidentes, llame al número (800) 936-3500, 24 horas al día, 7 días a la semana, incluso festivos. Para enviar un incidente con una cuenta existente, llame al número (800) 936-4900, 24 horas al día, 7 días a la semana, incluso festivos.
Envío de preguntas mediante Internet: En Estados Unidos de América y Canadá, también puede enviar sus preguntas de soporte de pago por incidente o anual prioritario mediante Internet con respuesta por Web. Para obtener más detalles, vaya al soporte técnico en línea de Microsoft en http://www.microsoft.com/support/.
Priority Plus: El soporte técnico de Microsoft también ofrece cuentas especiales para negocios de tamaño medio que requieren una resolución prioritaria de incidentes incluido un soporte comercial crítico y el acceso a información determinada para ayudar a profesionales de tecnologías de la información y de Ayuda técnica en el planteamiento de soporte para un mejor desarrollo de los productos. Para obtener más información, en EE.UU. y Canadá, llame al número (800) 936-3500, 24 horas al día, siete días a la semana, incluso festivos.
Línea de consulta prioritaria: Reciba servicios de consultoría por horas para preguntas de soporte que estén fuera del territorio tradicional del soporte técnico. Se incluye el diseño y planeamiento para el despliegue, el desarrollo de software, la revisión de código y el planeamiento de implementación. Priority Consult Line (Línea de consulta prioritaria) trata todos los productos de Microsoft, incluidos aquellos productos de Microsoft que se utilizan para desarrollar soluciones de Internet e intranet. Para obtener más información o adquirir servicios de consultoría por horas con un costo de 195 dólares por hora (mínimo una hora), llame al número (800) 936-5200, de 6:00 a.m. a 6:00 p.m. hora del Pacífico, de lunes a viernes, festivos excluidos.
Programas y servicios profesionales: El soporte técnico de Microsoft también ofrece programas y servicios de soporte profesional para negocios de tamaño grande que necesitan una relación directa con Microsoft. Para obtener más información, vea la sección de soporte técnico del archivo de Ayuda o visite el soporte técnico en línea de Microsoft en http://www.microsoft.com/support/.
Teléfono de texto: Los servicios de teléfono de texto (TTY/TTD) de Microsoft están disponibles para las personas con deficiencias auditivas. En Estados Unidos de América, utilice un módem TTY/TTD y llame al número (425) 635-4948. En Canadá, utilice un módem TTY/TTD y llame al número (905) 568-9641.
Para obtener información específica en español sobre servicios de soporte Microsoft, póngase en contacto directamente con la subsidiaria de Microsoft que atiende a su país a través de los números que se incluyen a continuación. El soporte de Microsoft abarca desde los servicios de información electrónica de bajo costo hasta planes de soporte anuales. Si desea información detallada, consulte la sección de soporte técnico de la Ayuda en pantalla. Los servicios de soporte técnico de Microsoft están sujetos a los precios, términos y condiciones vigentes de Microsoft, y pueden cambiar sin aviso previo.
Servicios de información
Desde el sitio World Wide Web de Microsoft ubicado en: http://www.microsoft.com/ puede visitar los sitios Web de las subsidiarias de habla hispana existentes en cada país, para ello elija el país cuyas páginas desea visitar. La información centralizada específica para Latinoamérica también está en http://www.microsoft.com/latam/soporte. La información específica para España está en http://microsoft.com/spain/support/.
Soporte estándar y Soporte prioritario
Póngase en contacto con la subsidiaria de Microsoft que atiende a su país a través de la lista de teléfonos que se incluye más adelante. En Estados Unidos o Canadá, vea Soporte técnico en inglés.
A continuación se enumeran las subsidiarias de habla hispana de Microsoft y los países a los que sirven. Si no hay una oficina de Microsoft en su país, póngase en contacto con el establecimiento donde adquirió el producto de Microsoft. Si desea más información acerca de las subsidiarias, consulte en el producto la sección Soporte técnico a nivel mundial de la Ayuda en pantalla.
Cuando llame, deberá estar delante de su PC y tener a mano la documentación del producto.
Subsidiaria, sitio Web y tipo de servicios |
Teléfono de cada servicio |
Argentina |
|
Microsoft de Argentina S.A. |
|
Servicios al Cliente: |
(54) (1) 316-4600 |
Bolivia Vea Uruguay |
|
Brasil |
|
Microsoft Informática Ltda. |
|
Phone: |
(55) (11) 5514 - 7100 |
Caribe y Centro América |
|
Microsoft Caribbean, Inc. |
|
Caribe |
|
Servicio al Cliente: |
(506) 293 - 5339 |
Puerto Rico |
1-800-297-5982 |
Fax: |
(1) (954) 491-8849 |
Centro América |
|
Soporte Técnico: |
(506) 293 - 5860 |
Chile |
|
Microsoft Chile S.A. |
|
Teléfono: |
56-2-330-6000 |
Colombia |
|
Microsoft Colombia |
|
Línea de Respuesta Microsoft (Santafé de Bogotá D.C.) |
(571) 523-0022 |
Ecuador |
|
Corporación Microsoft del Ecuador S.A. |
|
PBX: |
(593) 2 - 460453 |
España |
|
Microsoft Ibérica SRL | |
Teléfono de Soporte Técnico: |
902 197 198 |
México |
|
Microsoft México, S.A. de C.V. |
|
Aplicaciones y Sistemas Operativos de Escritorio:
Fast Tips & FaxBack: |
(52) (5) 265-3399 |
Paraguay Vea Uruguay |
|
Perú |
|
Microsoft Perú S.A. |
|
http://www.microsoft.com/peru/soporte | |
Servicios al Cliente: Fax: |
(51)(1) 422-4116 (51)(1) 440-2619 |
Uruguay/Paraguay/Bolivia |
|
Soporte Técnico Microsoft |
|
Teléfono: |
(598) (2) 774934 |
Venezuela |
|
Microsoft Venezuela S.A. |
|
Teléfono: |
(582) 265 99 22 |
Soporte técnico a nivel mundial: Los servicios de soporte y los precios pueden variar fuera de Estados Unidos de América y Canadá. Para obtener información acerca del soporte disponible fuera de Estados Unidos de América y Canadá, póngase en contacto con la subsidiaria local de Microsoft en su área. Para obtener una lista mundial de subsidiarias de Microsoft, visite el soporte técnico en línea de Microsoft en http://www.microsoft.com/support/.
Los servicios de soporte de Microsoft están sujetos a los precios, términos y condiciones de Microsoft vigentes en ese momento que pueden cambiar sin previo aviso.
© 1998 Microsoft Corporation
Estos materiales se proporcionan tal cual, y con fines informativos únicamente.
Ni Microsoft ni sus proveedores otorgan ninguna garantía, expresa o implícita, con respecto al contenido de estos materiales o a la exactitud de la información contenida en los mismos, incluyendo, pero sin limitarse a, las garantías implícitas de comerciabilidad e idoneidad para un fin determinado. Debido a que algunos estados o jurisdicciones no permiten la exclusión de garantías implícitas, la limitación anterior puede no serle aplicable.
Ni Microsoft ni sus proveedores serán responsables de los posibles daños consecuenciales, incidentales, directos, indirectos o especiales que puedan producirse, ni de posibles pérdidas o lucro cesante. Debido a que algunos estados o jurisdicciones no permiten la exclusión de garantías implícitas, la limitación anterior puede no serle aplicable. En todo caso, la responsabilidad total de Microsoft y de sus proveedores por cualquier circunstancia que pudiera derivarse de estos materiales, ya sea contractual, por agravios o de otra naturaleza, no superará el precio recomendado de venta al público de estos materiales.
© 1998 Microsoft Corporation. Reservados todos los derechos.