VALIDAR CAMINHO DE IMPRESSORA

USUARIO.EXCLUIDOS 01/06/2007 11:27:54
#219327
Olá.

Como faço para validar o caminho de uma impressora? Tipo "\\micro\hp", como saber se o caminho é válido.

Vlw
USUARIO.EXCLUIDOS 01/06/2007 11:48:12
#219336
Cria uma função que envia impressão para esta impressora que tenha tratamento de erro.

Axo que na linha Printer.PrinterDevice = "\\micro\hp" ou mais pra frente vamos ter um erro que será capturado pelo vb onde vc pode fazer o tratamento.

PS: desta forma vc valida toda a impressão, pois erros como sem papel etc também são exibidos.

Precisa ser específica mesmo a função que valida ?
USUARIO.EXCLUIDOS 01/06/2007 14:19:36
#219370
Tipo... criei um campo de texto onde digitamos o caminho da impressora que será usada pelo sistema. Gostaria que quando eu fosse salvar a configuração o sistema acusasse caso não encontre a impressora, para evitar uma digitação erronea.
USUARIO.EXCLUIDOS 01/06/2007 14:37:23
#219378
cara tenta isso , nao sei se é isso

Public Function ArquivoExiste(Caminho As String) As Boolean

Dim intLen As Integer

If Caminho$ <> "" Then
intLen% = Len(Dir$(Caminho$))
ArquivoExiste = (Not Err And intLen% > 0)
Else
ArquivoExiste = False
End If

End Function


se ArquivoExiste = True o Caminho Existe, Não sei se é isso q vc quer, mas ta ai.

USUARIO.EXCLUIDOS 01/06/2007 14:40:36
#219380
Então vc não precisa de uma TextBox, vc precisa dce um controle semelhante ao que existe em outros aplicativos tal qual Excel ou Word onde vc abre uma janela e o usuário escolhe uma impressora existente na máquina ou rede.

Acontece que assim se por acaso alguem desisnstalar a impressora depois da configuração ser feita no seu sistema teremos um erro, onde voltamos à rotina anterior que precisa capturar este erro.

O componente é chamado CommonDialog e é nativo do VB 6.0
Segue um exemplo de uso:

http://www.vbmania.com.br/vbmania/vbmdetail.php?varID=5582&TxtSearch=CommonDialog&CmbSort=&varPagina=1

Sempre siga as orientações deste cara, o Matioli é um menino de tudo ... mas ele estudou muito sobre a linguagem e reuniu um grande conhecimento no assunto.
ANTONIOBSJ 01/06/2007 15:22:20
#219392
Daniel,

O melhor método é o bom e velho comando Printer.

Por exemplo:
MsgBox Printer.DeviceName

Isso vai te dar a impressora padrão

Agora, para localizar a impressora desejada, tente isso:

Dim X As Printer
For Each X In Printers
If X.DeviceName = "\\micro\hp" Then
MsgBox "Achei"
Set Printer = X 'Define a impressora desejada como padrão no VB.
End If
Next

USUARIO.EXCLUIDOS 01/06/2007 15:31:52
#219394
eu uso isso aqui...

Application.ActiveDocument.Printout

já chama automatico a impressora padrão e as paradas para configurar... mão na roda...

ou adicione uma referencia no projeto
"Microsoft Common Dialog Control 6.0 (SP6)" COMdlg32.ocx

e no projeto

Dim caixaDialogo As New CommonDialog

os nomes dos metodos são bem indutivos...

Tópico encerrado , respostas não são mais permitidas