Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Ayuda pasando condigo VB a Delphi (https://www.clubdelphi.com/foros/showthread.php?t=49245)

javier7ar 17-10-2007 00:57:57

Ayuda pasando condigo VB a Delphi
 
Hola gente, necesito ayuda para pasar una instruccion de Visual Basic a Delphi.
La instruccion es:

//=========================
sCmd = Chr$(&H8) + Chr$(&H2)
//=========================

la variable esta declarada en VB asi:
Dim sCmd As String

yo pensaba que era CHR(8) + CHR(2), pero no anda, porque luego de esa asignacion le envia ese comando a una impresora fiscal y a el que uso VB le anda y a mi no. Para variar en internet y ayudas de VB solo encuentro info sobre CHR sin el $ (lo que no se que significa o que efecto tiene) Tampoco se que significa bien el &H, pero supuse que era la notacion que se usa para hexadecimal (ya que el comando que debo mandar esta en hexa)
Bueno, si alguien programo en Visual Basic y me puede dar una manito, se lo agradecere, yo nunca programe en Visual, solo he leido codigo para pasarlo a Delphi.
Desde ya muchas gracias
Saludos

luisgutierrezb 17-10-2007 01:47:45

Delphi Way...

Código Delphi [-]

sCmd := Chr($8) + Chr($2)

Caro 17-10-2007 03:47:14

Hola javier7ar, segun la ayuda de VB &H sirve para representar numeros hexadecimales directamente y lo que encontre de Char$


Sintáxis:

Chr$(código%)

La función Chr$ devuelve una cadena de un caracter cuyo código ANSI es el argumento. El argumento code% es un número entero entre 0 y 255, inclusive. ANSI es el caracter establecido utilizado por Visual Basic. Los códigos de caracter ANSI en el rango de 0 a 31, inclusive, son las mismas que los códigos estándar, no imprimibles ASCII.


lo anterior de esta pagina http://webdia.cem.itesm.mx/ac/rtrejo...bguia.html#chr


Saluditos

javier7ar 18-10-2007 01:48:00

muchas gracias por la ayuda, me ayudo a solucionarlo.
Nos vemos

rockito 22-11-2007 18:34:25

ayuda
 
Hola javier, puedes escribir el codigo de tu solución, es que me pasa lo mismo y no se como arreglarlo.

Gracias

javier7ar 05-12-2007 15:23:20

Disculpa la demora, estaba de viaje. La solucion fue
Código Delphi [-]sCmd := #$08+#$02


que es igual a

Código Delphi [-]sCmd := CHR($08)+CHR($02)


Aparte de eso, para que ande, tuve que agregar un delay despues de enviar cada comando
Código Delphi [-] while (Fiscal.State = EFP_S_Busy) do begin Application.ProcessMessages; end;

que estaba en el ejemplo de VB pero se me habia pasado. Pero esto no tiene nada que ver con la conversion de caracteres de arriba, te lo comento por si estas trabajando con la impresora fiscal epson tm-u220, si le envias todos los comandos bien sin el delay la impresora no hace nada.
Bueno, espero que te sirva
Saludos


La franja horaria es GMT +2. Ahora son las 07:08: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