Para leer codigos de barras, tan solo necesitas un lector de codigos de barras. No tienes que modificar nada en tu programa pues estos lectores simulan que el codigo que leen lo han introducido por el teclado. Es decir a los efectos de programacion es como si el usuario teclease el codigo.
Los lectores los hay de varios tipos, aunque los mejores son los laser, leen a mas distancia y automaticamente sin pulsar ningun boton. Tambien el codigo de barras puede ser mayor. Dentro de este tipo, los tienes fijos y moviles. Los fijos son los que tienen los supermercados en las cajas. Luego tienes los moviles que son tipo pistola con cable, y tu acercas el lector al codigo que quieres leer.
En cuanto a la impresion, alguna vez lei aqui en el foro que hay librerias que lo hacen, no se cuales, pero las hay. Yo siempre he solucionado el problema instalando impresoras especiales que los imprimen. Casi todos los modelos de las marcas Fujitsu y Kyocera los imprimen directamente como si fuera un tipo de letra. Tu mandas una secuencia de escape, en la que especificas el tipo de codigo, la altura, la longitud, si quieres que ademas de las barras salga el codigo, la orientacion, etc. imprime directamente. Yo siempre me he arreglado asi.
Saludos.-