Java executar arquivo de outra linguagem compilado para imprimir um texto [RESOLVIDO]

Pessoal,

Alguém tem algum código em outra linguagem (C++ ou outro) que receba um parâmetro ‘String texto’ e pega esse texto e imprime na impressora Generic Text Only? Também gostaria de saber como executar esse arquivo pelo Java depois.

Ps.: Não posso imprimir direto do java nesse caso devido à esse problema:
http://www.guj.com.br/java/268597-generic-text-only-e-problema-printer-is-not-accepting-job#1407702

SOLUÇÃO:

http://www.guj.com.br/java/268597-generic-text-only-e-problema-printer-is-not-accepting-job#1407702

Cara, desenvolvi esse método para meus softwares, nunca tive problema, usava impressão direto na porta da impressora (Windows e Linux) porém resolvi trabalhar da forma correta que é a impressão na impressora padrão do sistema operacional usando o spooler de impressão do mesmo.

/**
     * Envia uma impressão em modo de texto para a impressao padrão instalada no sistema operional
     * @param TextoImpressao
     */
    public void imprimirTextoImpressoraPadrao(String textoSerImpresso) {

        //Pegando a impressora padrao
        PrintService ps = PrintServiceLookup.lookupDefaultPrintService();

        try {

            DocPrintJob dpj = ps.createPrintJob();
            InputStream stream = new ByteArrayInputStream(textoSerImpresso.getBytes());

            DocFlavor flavor = DocFlavor.INPUT_STREAM.AUTOSENSE;
            Doc doc = new SimpleDoc(stream, flavor, null);
            dpj.print(doc, null);


        } catch (Exception e) {
            
        }
    }

Perceba que meu código é bem mais limpo e otimizado do que os encontrados em todo lugar, te garanto que está perfeito, não precisa de mais nada, apenas torne a impressão a qual você quer que ele imprima como padrão e pronto, funciona e testado em Windows Linux. Outra dica, use o driver padrão da impressora, nao use a Genérica Somente Texto, se for uma LX-300 ou outras dessa linhas de matricial use o driver que vem no sistema operacional é bem mais garantido que não aconteca problemas. Fica ai a dica pra todos que tiverem problemas.

[quote=ambuzr]Cara, desenvolvi esse método para meus softwares, nunca tive problema, usava impressão direto na porta da impressora (Windows Linux) porém resolvi trabalhar da forma correta que é a impressão na impressora padrão do sistema operacional usando o spooler de impressão do mesmo.

/**
     * Envia uma impressão em modo de texto para a impressao padrão instalada no sistema operional
     * @param TextoImpressao
     */
    public void imprimirTextoImpressoraPadrao(String textoSerImpresso) {

        //Pegando a impressora padrao
        PrintService ps = PrintServiceLookup.lookupDefaultPrintService();

        try {

            DocPrintJob dpj = ps.createPrintJob();
            InputStream stream = new ByteArrayInputStream(textoSerImpresso.getBytes());

            DocFlavor flavor = DocFlavor.INPUT_STREAM.AUTOSENSE;
            Doc doc = new SimpleDoc(stream, flavor, null);
            dpj.print(doc, null);


        } catch (Exception e) {
            
        }
    }

Perceba que meu código é bem mais limpo e otimizado do que os encontrados em todo lugar, te garanto que está perfeito, não precisa de mais nada, apenas torne a impressão a qual você quer que ele imprima como padrão e pronto. Outra dica, use o driver padrão da impressora, nao use a Genérica Somente Texto, se for uma LX-300 ou outras dessa linhas de matricial use o driver que vem no sistema operacional é bem mais garantido que não aconteca problemas. Fica ai a dica pra todos que tiverem problemas.[/quote]

então kara… esse código faz o mesmo que eu postei na minha dúvida:
http://www.guj.com.br/java/268597-generic-text-only-e-problema-printer-is-not-accepting-job#1407702

também estava usando assim, mas o problema ainda continua…

vc sabe como eu crio uma rotina em qquer outra linguagem e chamo no java? =S

Depois de compilado, use o método Runtime.getRuntime().exec para executar um programa externo.