Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Internet (https://www.clubdelphi.com/foros/forumdisplay.php?f=3)
-   -   Componente activex (https://www.clubdelphi.com/foros/showthread.php?t=35999)

levache 28-09-2006 15:37:16

Componente activex
 
Hola

Tengo un pequeño problema.
Me han pedido que programe un componenete activex en Delphi, para usarlo como si fuese un applet de java, es decir que lo quieren llamar desde un javascript y se supone que eso se queda instalado en la maquina del cliente.
En principio yo solo me ocuparia de la parte de delphi, es decir, solo del componente, ni instalarlo ni bajarlo ni nada solo Delphi.
Estoy mirando un poco aqui y alla y deduzco de he de crear un componente COM Object, pero estoy haciendo pruebas veo que no puedo llamar a ninguna libreria estandar.
¿Tendria alguien algun ejemplito o tutorial de este tema?
Es delphi 6, para un componente no visual.

manuweb 07-12-2006 00:18:00

Estoy igual que tu.

¿Alguna ayuda?

Gracias . . .

dec 07-12-2006 01:40:18

Hola,

Pues no sé qué tan actualizado estará, pero, buscando en Google, la segunda o tercera URL ofrece este documento:

How to develop ActiveX invisible component library in Delphi.

Está en formato HTML y en formato PDF... no sé si servirá para empezar, al menos. ;)

manuweb 20-12-2006 11:41:30

Bueno, lo he solucionado.

En el cliente hay una aplicación que se encarga de abrir un cajón portamonedas (va en el COM1).

Hay una aplicación Delphi muy sencilla a la que he llamado abrecaja.exe y está en c:\ (del cliente) (Programa normal, no activeX, aunque me he quedado con la desilusión de poder hacerlo de esa forma)

Esta es la aplicación

Desde HTML he utilizado:

Código PHP:

<script language="javascript">
<!--
function 
abre() 

RegWsh = new ActiveXObject("WScript.Shell"); 
RegWsh.Run("c:\abrecaja.exe"); 
}
//-->
</script> 

También he tenido que poner http://localhost/ como sitio de confianza en el Internet Explorer del cliente y personalizar con todos los permisos.

La intranet está montada con Win Xp SP2, Apache, PHP y MySql.

Gracias a todos por vuestra ayuda.

:) :)

newdelphi7 29-12-2006 06:34:03

Muy interesante pero que tal sobreescribir un *.txt
 
Hola muy interesante, aunque desde php tambien es posible ejecutar el *.exe o desde el mismo javascript como lo tienes, PEROOO mira mi caso ademas de ejecutar el *.exe necesito sobreescribir un *.txt alojado en c:\\imprimir.txt
en la pc cliente.....

Es decir mi aplicacion en PHP sobreescribira el c>imprimir.txt y luego llamara al ejecutable c>imprimir.exe que esta en la pc cliente y este imprimir.exe trabaja bien y imprime con los codigos de ESC de las mini-impresoras o las impresoras de punto de evntas..

El problema esta en que nunca se sobreescribe el archivo imprimir.txt como lo haria con un activex en delphi, utilizo php y wamp.. thanks

manuweb 29-12-2006 10:50:14

Cita:

Empezado por newdelphi7
Hola muy interesante, aunque desde php tambien es posible ejecutar el *.exe o desde el mismo javascript como lo tienes, PEROOO mira mi caso ademas de ejecutar el *.exe necesito sobreescribir un *.txt alojado en c:\\imprimir.txt
en la pc cliente.....

Es decir mi aplicacion en PHP sobreescribira el c>imprimir.txt y luego llamara al ejecutable c>imprimir.exe que esta en la pc cliente y este imprimir.exe trabaja bien y imprime con los codigos de ESC de las mini-impresoras o las impresoras de punto de evntas..

El problema esta en que nunca se sobreescribe el archivo imprimir.txt como lo haria con un activex en delphi, utilizo php y wamp.. thanks

Si ejecuta bien el ejecutable . . ¿por que no haces que ese ejecutable escriba el fichero imprimir.txt?

Saludos.

newdelphi7 30-12-2006 05:01:11

Tienes razon pero no habia trabajdo con Delphy y MYSQL
 
Tienes razon peor nunca habia trabajado con mysql en delphi, pero al parecer tendre que hacer toda mi aplicacion ya hecha en php en delphi nuevamente porque no se puede siobreescribir un fichero en la pc cliente desde php....

BUeno ya me he descargado los componentes ZEOS tratare de instalarlo a ver como hago la coneccion, alguien tiene un manual sencillo de ejemplos de delphi y ,ysql utilizando Zeos.....?

aunque en realidad para concluir si pudiera aunuqe sea pasarle desde php 5 variables a delphi tendria el sistema hecho, pero vere que hago...

AAAAAH no se puede imprimir directamente desde php porque es una mini-impresora star sp-200 y la mando a imprimir desde delphi leyendo el txt de la siguiente manera:

Código:

Var
iImpresora: TextFile;
Fichero: TextFile;
Linea: String;
begin
AssignFile(Fichero,'c:\ticket.txt');
Assignfile(iImpresora,'Lpt1');
Reset(Fichero);
While Eof(Fichero)=False Do
 Begin
 Readln(Fichero,Linea);
 Rewrite(iImpresora);
 Writeln(iImpresora, Linea);
end;
Closefile(Fichero);
end;

Puedo hacer eso mismo desde php es decir no leer el fichero sino mandarle a imprimir directamente por el puerto paralelo......


La franja horaria es GMT +2. Ahora son las 12:54:50.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi