Haroldo, temos alguns clientes que utilizam o nosso sistema via WTS (Windows Terminal Services). O próprio WTS do Windows Server 2003 utiliza a impressora que for padrão do cliente no momento da conexão com o Servidor de Terminal. Então, no nosso sistema Centura, simplesmente não definimos a impressora a ser usada e, com isso, o documento é impresso na impressora padrão do cliente, que foi capturado pelo WTS. Essa impressora padrão pode ser tanto uma impressora local quanto uma impressora da rede. Isso funciona bem com a versão do WTS que vem com o Windows Server 2003. Já no WTS do Windows Server 2000, tivemos alguns problemas. Se não me engano (vou checar isso depois), a impressão só funcionava bem em impressoras locais, ou seja, impressoras ligadas diretamente ao computador. Eu recomendo a você que, se possível, passe a utilizar no seu servidor o Windows Server 2003, juntamente com o WTS que vem com esse sistema operacional. O WTS do Windows Server 2003 está muito melhor, pois nele foram resolvidos alguns problemas (inclusive de impressão) e feitas melhorias, inclusive no gerenciamento da memória, pois notamos que a quantidade de memória necessária por cada cliente conectado é menor no WTS do Windows Server 2003, se comparado ao WTS do Windows Server 2000. Se essa mudança não for possível, verifique se vc consegue imprimir em algum micro com impressora local sem a necessidade de especificar a impressora padrão. Creio que isso vc deve conseguir. Uma outra dica é verificar se os drivers das impressoras utilizadas por seus clientes constam na lista interna de drivers do servidor onde roda o WTS. Se alguma não estiver nessa lista, instale o driver dessa impressora, e depois pode apagá-la da lista de impressoras disponíveis. Esse procedimento fará com que o driver, antes ausente, fique disponível caso o WTS precise.
 
Qualquer outro esclarecimento, fique à vontade para perguntar.
 
Um abraço.
 
Ricardo Gomes.
----- Original Message -----
From: Haroldo
Sent: Tuesday, August 10, 2004 11:39 AM
Subject: [sqlwin] Como definir impressoras em cliente remoto

Bom dia lista.
 
Alguém aqui utiliza Terminal Server ou Meta Frame, como cliente de sistema.
 
Estou tendo problemas com configurações de impressoras, tipo manter na base de dados o Nome da impressora, Driver, e porta, capturados pela função
    SalPrtSetup( strDevice, strDriver, strPort, TRUE ), e depois com esses dados que estão gravados na base de dados eu utilizo a função
    SalPrtSetDefault( gNomeDefault, gDriveDefault, gPortaDefault ) para definir onde o relatório deverá ser impresso, e tbm sei que existe algumas diferenças entre vc imprimir em uma rede WIN 9X e WIN 2000, se estas máquinas estiverem na mesma rede, mas a rede é inteiramente WIN 2000.
 
A função SalPrtSetup abre somente o diálogo de seleção vide IMAGEM1.BMP, eu acho que deva existir alguma outra função que não seja do Centura para a captura das impressoras.
 
Qdo eu mando visualizar um relatório utilizando a função SalReportView ou SalReportTableView, nesta tela, vc clica no botão imprimir em ambiente um cliente WIN9X abre o diálogo vide IMAGEM2.BMP, em cliente WIN 2000 abre o diálogo vide IMAGEM3.BMP.
 
Pq estou colocando estas questões, é que utlizando cliente Terminal Server ou Meta Frame, eu estou tendo dificuldades em definir a impressora padão que eu tenho gravado na minha base de dados, lembrando tbm que eu estou guardando esses dados relacionado ao nome do Computador para utilizar na sessão, os dados foram capturados a partir de uma sessão de cliente, não utilizando a rede local.
 
Se alguém já passou por isso e puder dar uma luz no fim do túnel,  e se tiverem tbm alguma dicas em cliente linux, agradeço desde já.
 
Atenciosamente,
 
[ ]´s
Haroldo.
 
IAS - InterActive Systems Ltda
Curitiba - Pr
( (0xx41) 3019-5151
 

Responder a