JASoft.org

Resolución de problemas de comunicación con Oracle desde ADO/OLEDB

Resolución de problemas de comunicación con Oracle desde ADO/OLEDB
Cuando se intenta conectar mediante ADO/OLEDB con una base de datos Oracle 9i utilizando los componentes de cliente de esta versión del gestor de datos, se obtiene continuamente un error que dice que las bibliotecas de red y comunicación de oracle no están instaladas. Se trata de un problema bastante desesperante porque no hay pistas de porqué se produce y todo parece estar bien instalado.El mensaje de error que obtenemos dice: "The Oracle(tm) client and networking components were not found. These components are supplied by Oracle Corporation and are part of the Oracle Version 7.3 (or greater) client software installation." El problema se debe a que, tanto las bibliotecas de cliente de Oracle (las que vienen en el CD o el Instant Client que se puede descargar desde la Web de Oracle) como el propio MDAC introducen mal en el registro las entradas que indican al controlador OLEDB qué bibliotecas de Oracle debe utilizar. Lo que está en el registro se corresponde siempre con una versión a... [Más]

Cómo capturar el error 'ASP 0113': Script Timed Out

Cómo capturar el error 'ASP 0113': Script Timed Out
El error de "tiempo de ejecución de Script superado" es el único que no se puede capturar en una página Web debido a que, si el Script tarda mucho, IIS termina su ejecución y por lo tanto, por definición, no podemos capturarlo desde nuestro propio Script.Sin embargo existe un truco muy interesante que nos permitirá hacerlo sin problemas. Se trata de utilizar el modo transaccional de las páginas Web ASP. En este modo, si el script falla por cualquier razón (incluyendo la de que tarde mucho en ejecutarse), el sistema revoca la transacción y llama siempre a la función OnTransactionAbort(), que debe existir en la página. Esto lo podemos aprovechar para hacer lo que queramos tras el error. Por ejemplo, el siguiente código captura el error y muestra un mensaje cuando se produce un "Script timeout": <%@ TRANSACTION=Required LANGUAGE="VBScript" %> 'Esto la convierte en transaccional <HTML> <BODY BGCOLOR="White" topmargin="10" leftmargin="10"> <font size="4" ... [Más]

OXPAS 1.1

OXPAS 1.1
Microsoft Outlook, a partir de su versión XP, viene con una novedad interesante desde el punto de vista de la seguridad pero bastante molesta en cuanto al uso: prohibe el acceso a medio centenar de tipos de archivo cuando éstos vienen adjuntos en un e-mail, de modo que no hay manera de acceder a ellos aunque queramos. Ni siquiera da opción a guardarlos a disco para usarlos bajo nuestra responsabilidad. Esta característica hace que Outlook sea mucho más seguro que antes pero cuando queremos recibir, por ejemplo, un archivo ejecutable proveniente de una fuente de confianza nos veremos incapaces de hacerlo. Para ahorrarme el problema escribí hace ya un par de años este programa: OXPAS (Outlook XP Attachment Security)OXPAS permite desbloquear los tipos de archivos que deseemos, de forma que tengamos acceso a ellos bajo demanda y no nos quedemos sin poder acceder a cosas que nos interesan en nuestro propio correo electrónico. Este programa funciona con Outlook 2002 o superior. Ya verá... [Más]

Implementación sencilla de una interfaz con C# en VS 2003

Implementación sencilla de una interfaz con C# en VS 2003
Esto es un truco bastante útil para ahorrar tiempo programando en C# si usas Visual Studio .NET 2003 y necesitas implementar interfaces en tus objetos. Cuando vas a crear una clase que implementa una o más interfaces, deberás obviamente generar todos los métodos de éstas en la nueva clase. Es esta una tarea muy tediosa si la interfaz en cuestión tiene muchos métodos puesto que tienes que escribirlos a mano. Visual Studio 2003 tiene una característica nueva que es muy fácil que se nos pase por alto y es que, cuando escribes el nombre de la interfaz en la lista de derivación de la clase ( o sea, después de los consabidos dos puntos) basta con presionar la tecla TAB para que se genere el esqueleto de la interfaz automáticamente por nosotros y dentro de una región ya "encogida": Pulsa sobre la figura para ampliarla Aunque te lo indica el entorno mediante un "Tooltip" es bastante fácil pasarlo por alto y hacer lo mismo de siempre. Esto puede ahorrarte mucho tiempo.

Nueva e interesante aplicación de ejemplo - FotoVision

Nueva e interesante aplicación de ejemplo - FotoVision
Microsoft acaba de medio-publicar un nuevo ejemplo que es realmente interesante. Y digo medio publicar porque en el momento de escribir esto todavía no es oficial y de hecho los enlaces de la portada no funcionan bien. Sin embargo es fácil conseguir acceder a los archivos y bajarse la aplicación. Se trata de un ejemplo bastante extenso de un servicio a priori simple: la construcción de una galería de fotos e imágenes en Internet. Sin embargo han construido un ejemplo con vocación empresarial y nada básico que conlleva la programación de aplicaciones de escritorio, aplicaciones Web, aplicaciones para la Compact framework y por supuesto servicios Web. En la siguiente figura podéis ver algunas capturas. El ejemplo está lleno de detalles de calidad y código interesante (por ejemplo código para manipulación de imágenes o código para evitar los SPAM-Bots). La aplicación de Pocket PC sincroniza y guarda para visualizar off-line las imágenes e incluso permite hacer anotaciones sobre ellas... [Más]

¿Páginas Web escritas en ensamblador?

¿Páginas Web escritas en ensamblador?
Raro pero cierto... Resulta que acabo de descubrir un personaje en Internet (danés para más señas) que creó en su día un compilador de ensamblador para ASP.NET. De este modo los forofos de este lenguaje pueen crear páginas Web con instrucciones tan cómodas como MOV, JMP y compañía. Por si a alguien C# le parecía demasiado sencillo: Según el propio autor no es que sera muy útil pero desde luego es un experimento interesante. El compilador reconoce la sintaxis de ensamblador y crea a partir de ella código IL de la plataforma .NET. Desde su página web se puede descargar libremente (ocupa sólo 14 KB). Por lo visto ya hace tiempo que lo tiene pero yo no lo conocía. ¿Alguien sabía de su existencia? ¿Alguien lo ha probado aunque sea por curiosidad? Espero tus comentarios...

Más acerca del analizador automático de buenas prácticas para SQL Server

Más acerca del analizador automático de buenas prácticas para SQL Server
Respecto a la nota que publiqué hace una semana sobre la disponibilidad del nuevo analizador de buenas prácticas para SQL Server, quiero añadir ahora un apéndice. Todos los interesados en esta estupenda herramienta estarán interesados también en saber que en la página Web de SQL Dude acaban de publicar una lista de todas las reglas que incorpora la herramienta con una explicación de cada una. La mar de interesante. Echadle un vistazo.

ASP.NET 2.0 añade soporte para FTP

ASP.NET 2.0 añade soporte para FTP
Parece ser que, por fin, ASP.NET en Whidbey añade soporte para el protocolo FTP a través de un par de clases llamadas FtpWebRequest/FtpWebResponse y que son análogas a las de HTTP ya existentes. Éstas soportan también la transferencia cifrada a través de SSL. Lo han confirmado un par de personas del equipo de desarrollo de Visual Studio. Hasta ahora para poder descargar archivos a través de FTP desde nuestros programas había que recurrir a componentes de otras empresas o construirnos unos propios. Por cierto, y respecto a esta última opción, en la KB de MSDN existen sendos artículos que explican cómo hacerlo en C# (HOW TO: Write Pluggable Protocol to Support FTP in Managed Classes by Using Visual C# .NET) y en VB.NET (HOW TO: Write Pluggable Protocol to Support FTP in Managed Classes by Using Visual Basic .NET). En fin, una buena noticia para los desarrolladores Web.

Todo lo que siempre quiso saber sobre ViewState y no se atrevió a preguntar

Todo lo que siempre quiso saber sobre ViewState y no se atrevió a preguntar
Hoy se ha publicado en MSDN un excelente artículo de Scott Mitchell de 4GuysFromRolla.com en el que explica con todo lujo de detalles el funcionamiento de ViewState en las páginas ASP.NET. Como su propio nombre indica ViewState sirve para almacenar el estado de los controles de una página entre las diferentes llamadas consecutivas que se hagan a la misma. En él se basa el funcionamiento de las páginas ASP.NET y es el que consigue que la programación de éstas se asemeje tanto a la tradicional para formularios de escritorio. El artículo presenta todos los conceptos fundamentales sobre el ciclo de vida de una página, el funcionamiento detallado de ViewState y cómo lo podemos aprovechar para otras cosas aparte de las obvias. La parte final profundiza mucho más en el asunto mostrando cómo decodificar el contenido de una cadena ViewState obtenida a partir de cualquier página. Precisamente por este mismo motivo (más de uno se asustará al ver lo fácil que es) ofrece un sistema interesante pa... [Más]

Guía de adaptación de sitios web al SP2 de Windows XP

Guía de adaptación de sitios web al SP2 de Windows XP
Este próximo SP2 para Windows XP introduce cambios bastante importantes respecto a la seguridad y las comunicaciones. Éstos harán que muchas aplicaciones poco cuidadas desde el punto de vista de la seguridad dejen de funcionar correctamente. Ya hace un par de meses Microsoft publicó documentación explicando estos cambios y cómo adaptarse a ellos. Ahora se acaba de publicar en MSDN un documento, "How to Make Your Web Site Work with SP2", que está especialmente dirigido a todos aquellos que nos dedicamos a la programación de aplicaciones Web, ya que Internet Explorer ofrece diversos cambios de seguridad que nos afectan directamente.En este documento se trata en forma de FAQ aquellas particularidades que los programadores web debemos tener presentes en relación con cuestiones como los mecanismos de descarga de archivos, controles ActiveX, ventanas pop-up, Java, diálogos HTML, posicionamiento de ventanas y otros aspectos importantes. Desde mi punto de vista es especialmente destacable qu... [Más]

Este soy yo y este es mi blog técnico, dedicado al software y a la programación.

¡Sígueme en Twitter!

Mis otros blogs

- JM Alarcón @ campusMVP.es
Contenido técnico en español orientado a desarrolladores
- JMAlarcon.es
Blog personal no técnico: sociedad, innovación, empresa...

Krasis

- campusMVP.es:
Los mejores cursos online de programación en español

- SELF LMS:
La plataforma de elearning más potente del mercado.

Histórico