|
|
Unas notas
previas interesantes e importantes. |
|
Versiones Delphi
: |
Todos los ejemplos que aparecen en estas lecciones han sido
compilados y probados en Delphi 3 y 5, ambas versiones Client /
Server, teniendo en ambos casos diferencias mínimas en cuanto a los
que aquí nos interesa, la creación de extensiones Web
ISAPI. |
Versiones
Servidor Web : |
Todos los ejemplos que aparecen en estas lecciones han sido
probados usando los Servidores Web PWS (Personal Web Server) sobre
Windows Millenium y IIS 5.0 (Information Internet Server) sobre
Windows 2000 Server. |
|
Fuera de estas versiones de Delphi y Servidores Web no tengo
experiencia ... |
|
|
Creación y
depuración de Dlls : |
Todas las Dlls (Dynamic Link Library) tienen la característica de
almacenarse en memoria a fin de ser usadas múltiples veces
optimizando su velocidad de acceso y siendo el sistema quien
determina cuando deben ser descargadas, por desuso, de memoria. Esto
hace que mientras que estén en memoria no se pueden compilar de
nuevo ya que el sistema nos devuelve un error al compartir al
estar aún en uso. A continuación describo el método para solventar
esta circunstancia así como donde colocar nuestros
trabajos. |
|
|
Creación y
depuración sobre PWS (Personal Web Server) : |
El
directorio por defecto con permisos de ejecución en una instalación
estándar de PWS, por ejemplo la que realiza FrontPage 98, es
C:\Webshare\WWWRoot\cgi-bin que después podrá ser invocada en
el navegador de internet como http://localhost/cgi-bin
y es aquí donde debemos poner nuestras Dlls modificando
convenientemente Project Manager / Project Options / Directories
- Conditionals / Output Directory |
|
Para
forzar a PWS a descargar las Dlls de memoria tras usarlas debemos
cambiar una entrada en el registro de Windows, para ello ejecutamos
el Editor del Registro mediante Menú Inicio / Ejecutar / Regedit
y a continuación modificamos la entrada binaria
HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Services \W3SVC
\ Parameters \ CacheExtensions poniendola a 0 (cero) - Si no
existe debemos crearla y ponerla a 0. |
|
|
Creación y
depuración sobre IIS (Internet Information Server) : |
El
directorio por defecto con permisos de ejecución en una instalación
estándar de IIS en una instalación estándar de Windows 2000 es
C:\Inetput\Scripts que después podrá ser invocada en el
navegador de internet como http://localhost/scripts y
es aquí donde debemos poner nuestras Dlls modificando
convenientemente Project Manager / Project Options / Directories
- Conditionals / Output Directory |
|
Paras forzar a IIS a descargar las Dlls de memoria tras usarlas
debemos usar el Administrador de Servicios de Internet que podemos
encontrar en Inicio / Programas / Herramientas Administrativas /
Administrador de Servicios de Internet en el que desplegamos
nuestro servidor y seleccionamos el Sitio Web por defecto y
con botón derecho del ratón vemos sus propiedades. En la carpeta
Directorio particular seleccionamos Configuración en
la sección Configuración de Aplicación y desmarcamos el
Chekbox denominado Almacenar aplicaciones Isapi en
caché de la carpeta Asignaciones para la Aplicación.
Tal como se muestra en las imágenes más
abajo: |
|

|
|

|
|
|
|
Más
información sobre estos asuntos en Microsoft Developer Network (MSDN) |
|
|
Ejecutar una Dll
desde Delphi : |
Para
ejecutar una Dll desde Delphi debemos configurar la opción
Run del IDE de Delphi con el fin de decirle qué
aplicación será la que llame a ésta, que le sirva de host, y dónde
está ubicada nuestra Dll así como los parámetros que debamos
pasarle. Para ello seleccionamos en Delphi la opción del menú Run
/ Parameters y escribimos en Host Application el Path
completo del Internet Explorer, en este caso C:\ Archivos de
programa \ Internet Explorer \ IEXPLORE.EXE y en Run
parameters el Path completo de nuestra Dll, en este caso
http://localhost / scripts / MiDeEleEle.dll tal como muestra
la imagen a continuación. |
|

|
|
|