Programación General > Visual C++

 Cómo Mandar Información A Lcd En Visual C++

<< < (3/4) > >>

Diodo:
Una pequeña pagina en ingles sobre el puerto paralelo y como programar aplicaciones visuales para cualquier SO windows con la libreria InpOut32.dll

http://www.logix4u.cjb.net/

saludos

carquemo:
Vale, me explique mal, lo explico de otra manera:
La mayor pega es Windows XP, cuando no eres ni administrador ni nada que se le parezca, las instrucciones _inp, _out, y demás las rechaza en tiempo de ejecución, compilar el codigo lo compila, por que son validas, pero al ejecutarlas, XP dice que no, que por hay no pasa, que si los permisos, y demás, es por la protección que hace XP del hardware, que tienes que ejecutar en modo "sistema", no necesariamente siendo administrador.
Con el C++ Builder casí lo tengo, pero en Visual C++, que es el que al final tendre que usar, no lo consigo.

Perdona por el tiempo perdido, y gracias por la referencia, creo que puede servirme.

touch:
En realidad yo uso C++ Builder, pero analizando tu pregunta inicial , entendi que querias enviar datos a una pantalla LCD (torreta, DISPLAY DE CLIENTE etc) que esta en  el puerto paralelo.

Te envio la rutina que hice en C++ Builder para enviar datos a la torreta (lcd)
ejemplo de uso:

* DEBES DEFINIR UNA IMPRESORA MODO TEXTO , LLAMADA (EN ESTE CASO) TORRERA DIREGIDA CONECTADA AL PUERTO. COM1, LPT1 etc etc

Otro problema que tendras es que la clase AnsiString no esta definida en VC, asi que  debes modificar la funcion par que te funcione. Desgracidamente no soy experto en Micro$oft por eso no puedo traducirla)



--- Código: Text --- // Enviar Datos a la Torretavoid Torreta(AnsiString vLinea){ vLinea=vLinea+&#34;                     &#34;;vLinea=vLinea.SubString(1,20);// Falta ParametrizarString printerPort = &#34;TORRETA&#34;; // o aqui pon String printerPort = &#34;LPT1:&#34;HANDLE printerHandle = 0;PRINTER_DEFAULTS printerOptions;printerOptions.pDatatype = &#34;RAW&#34;;printerOptions.pDevMode = NULL;printerOptions.DesiredAccess = PRINTER_ACCESS_USE;try{        if (!OpenPrinter(printerPort.c_str(), &printerHandle, NULL))  throw &#34;Error when opening printer port&#34;;        DOC_INFO_1 docInfo;        docInfo.pDocName = &#34;TORRETA&#34;;        docInfo.pOutputFile = NULL;        docInfo.pDatatype = &#34;RAW&#34;;        if (!StartDocPrinter(printerHandle, 1, (LPBYTE)&docInfo)) throw &#34;Error when starting printing&#34;;        if (!StartPagePrinter(printerHandle)) throw &#34;Error when starting a new page&#34;;         char* lineToPrint = &#34;&#34;;         DWORD numBytesWritten;         //nsiString vClear=12; // CLR de la torreta         /*lineToPrint=&#34;&#092;x12&#34;; //vClear.c_str(); //         BOOL correct = WritePrinter(printerHandle, (LPVOID*)lineToPrint,         strlen(lineToPrint), &numBytesWritten);         */         lineToPrint=vLinea.c_str(); // convertir linea a cadena         bool correct = WritePrinter(printerHandle, (LPVOID*)lineToPrint,         strlen(lineToPrint), &numBytesWritten);         if (!correct || numBytesWritten &#60; DWORD(strlen(lineToPrint))) throw &#34;Error al imprimir la linea&#34;;         if (!EndDocPrinter(printerHandle)) throw &#34;Error al finalizr la impresion&#34;;        ClosePrinter(printerHandle);}catch (...){// NO se pudo enviar a la torreta}  }   

carquemo:
Hola touch
  La verdad es que parece sencillo pero creo que tiene alguna pega, me explico, si en realidad "estas imprimiendo", ¿quien se encarga de la linea de ACK?, cuando imprimes, cada byte debe ser reconocido, ¿con este codigo no es necesario?.
 Mi idea es conectar el LCD directamente, (como lo hacen para el MXPlay, por si te suena), sin circuiteria ni nada, quiza una resistencia para el contraste, entonces hay al menos dos patas del LCD que debes conectar a las salidas del puerto, y ¿esas como se controlan, con el strobe quiza?, me falta una.
   Yo habia pensado en cambiar directamente las patas, escribiendo en los registros del puerto, pero creo que no se va ha poder hacer.
En cualquier caso, muchas gracias, el codigo me sirve para el Builder.

laupotter:
HOLA DIODO:
Oye esta pregunta que te voy a hacer no es de programación, lo que pasa es que necesito ayuda urgentemente!!!

Mi computadora tiene virus y no se los puedo quitar, por favor ayúdenme!!

El virus que he intentado quitar es Spyware/ISTbar, al igual que el Adware/nCase donde se ha instalado en la computradora un 180 searchAssistant.
Se puede reducir a que tengo Adware y Spyware, y tengo entendido que son hakers y por favor me da mucho problema está muy lenta la computadora y tengo que reiniciarla a cada rato.
He buscado en internet, pero lo que hay gratis es solo el scan pero no me los elimina para eso tengo que comprar el software, yo tengo el Norton 2004 pero ya se venció.

Por favor si me pueden ayudar, lo que pasa es que tambien no entiendo en donde debo buscar las HKEY pues vi como eliminarlo manualmente pero no se donde se encuentren en la computadora.

ESpero respuesta pronto.
saludos bye

Navegación

[0] Índice de Mensajes

[#] Página Siguiente

[*] Página Anterior

Ir a la versión completa