Hola JediAuror, no entiendo muy bien lo que quieres hacer.
Si en principio tienes conectada la pistola por COM1, ¿para qué quieres manejar el puerto del teclado?.
Yo todas las pistolas que uso se conectan por el mismo cable que el teclado, de forma que cada vez que lee un CB es como si lo escribieras en un control, en el que en ese momento tenga el foco.
Me parece que el problema que tienes es que al conectarlo por COM1, lo que recibes lo vuelcas a un campo de texto(siempre el mismo).
La verdad no sé cómo saber qué control tiene el foco, pero puedes crearte una variable pública de tipo integer, y dándole valores (1,2,3...) según esté en un control, es decir, si está en Text1 valor=1, en Text2 valor=2 y así sucesivamente. Luego en función del valor de la variable, vuelcas lo que recibas por el COM al control que le corresponda.
Claro si tienes muchos controles dónde tener que poner los datos es un poco coñazo, pero a falta de tortas..........
Es un método un poco chapucero pero seguro.
Saludos y suerte.