FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
|
#1
|
|||
|
|||
Gracias por responder Delphi.com.ar.
Te comento que ya probé hacer lo que me dijiste (el unansigned no lo toma porque no es variant). La verdad que estoy bastante confundido con lo que pasa. Te comento lo que probé: En vez de declarar la variable PrnFisc local al procedimiento, la declaré en la sección private del form y en el formCreate hice lo siguiente: procedure TfrmPrincipal.FormCreate(Sender: TObject); begin inherited; PrnFisc := CreateComObject(CLASS_PrinterFiscal) as _PrinterFiscalDisp; PrnFisc.PortNumber := 1; PrnFisc.BaudRate := '9600'; MessageDlg('Creado', mtInformation, [mbOk], 0); end; Cuando inserto la linea MessageDlg('Creado', mtInformation, [mbOk], 0);, no tira el error, pero si la comento si lo tira. " Error de aplicación : La instrucción en "0x21c14667" hace referencia a la memoria en "0x21c14667". La memoria no se puede "read"." ????? la verdad que estoy muy , pero muy confundido, ya no se que pensar ni hacer... Por las pruebas que hice, indudablemente hay un problema con la asignación de memoria. Ahora, no se como resolverlo porque ni siquiera sé como empezar.... estoy desesperado... Si se te ocurre algo más te lo voy a agradecer. |
#2
|
||||
|
||||
¿No estas usando funciones de manejo de memoria tipo Move, CopyMemory, ZeroMemory, FillChar?...
¿Si no pones el MessageDlg en que línea se produce el error?... ¿Hay seguridad de que funcione bien la OCX?...
__________________
delphi.com.ar Dedique el tiempo suficiente para formular su pregunta si pretende que alguien dedique su tiempo en contestarla. |
#3
|
|||
|
|||
Cita:
Si no pongo el MessageDlg no tira el error, y si lo inserto al MessageDlg tira el error al cerrar la aplicación. No la tira en una linea en particular, de hecho, la funcionalidad (por ejemplo imprimir un documento No fiscal funciona OK), pero al cerrar la apllicación tira el error. Con respecto al OCX, no te lo puedo asegurar que pasa en el D7, lo que si te puedo asegurar que el mismo OCX en aplicaciones para Micrsoft Visual Fox 6 funciona bien. Lo que me resulta raro, es que diablos???? (por no decir otra palabra) tiene que ver que yo inserte o no el MessageDlg. Saludos, |
#4
|
|||
|
|||
hola,
ensaya asi: crea el objeto try proceso .. finally cierras el objeto end; Tal vez te ayude a cerrar el proceso y no mande error |
#5
|
|||
|
|||
Hola, mcastrog, te comento que tambien lo he probado y nada... la verdad que estoy desesperado....
|
#6
|
|||
|
|||
Hola Oliverinf
Yo tengo un código en que imprimo con unas TMU 200 y me ha funcionado OK! donde se envían los comandos directos por el puerto COM. Si te interesa me avisas.
__________________
Akkan |
#7
|
||||
|
||||
cero comunicación con la printer
Amigos: No consigo hacer andar el OCX con Delphi 7. No obtengo respuestas de la impresora, salvo que el puerto lo abre normalmente.
Ayudas y sugerencias serán muy bien recibidas! |
#8
|
|||
|
|||
Hola Oliverinf. Te cuento que yo también tengo el mismo problema. Luego de mucha prueba y error he encontrado un método para que desaparezca el problema pero no se justificar bien que es lo que hace. En el evento OnClose asigno a la variable PrnFisc el valor nulo, vuelvo a crear el objeto Com y lo vuelvo a poner Nulo, de esta forma:
procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction); begin PrnFisc:=Nil; PrnFisc := CreateComObject(CLASS_PrinterFiscal) as _PrinterFiscalDisp; PrnFisc := Nil; Application.ProcessMessages; Action:=caFree; end; Espero que te sea de alguna ayuda |
|
|
|