IMPRESSORA DIEBOLD PROCOMP TSP143MU_A
Boa tarde pessoal alguem tem como me falar se tem como saber se a impressora Diebold Procomp TSP143MU_A esta ligada ou desligada
peguei a função abaixo mais pra mim não funciona
Sub Check_Printer_Status()
Dim strComputer As String
Dim objWMIService
Dim colInstalledPrinters
Dim objPrinter
strComputer = "."
objWMIService = GetObject("winmgmts:" & "{impersonationLevel=impersonate}!\\" & strComputer & "oot\cimv2")
colInstalledPrinters = objWMIService.ExecQuery("Select * from Win32_Printer where Default="True"")
For Each objPrinter In colInstalledPrinters
Select Case objPrinter.printerstatus
Case 3
MsgBox("A impressora está ociosa" )
Case 4
MsgBox("Impressora esta imprimindo")
Case 5
MsgBox("A impressora está aquecendo")
Case 6
MsgBox("A impressora está desativada")
Case 7
MsgBox("A impressora está desativada")
End Select
Next
End Sub
peguei a função abaixo mais pra mim não funciona
Sub Check_Printer_Status()
Dim strComputer As String
Dim objWMIService
Dim colInstalledPrinters
Dim objPrinter
strComputer = "."
objWMIService = GetObject("winmgmts:" & "{impersonationLevel=impersonate}!\\" & strComputer & "oot\cimv2")
colInstalledPrinters = objWMIService.ExecQuery("Select * from Win32_Printer where Default="True"")
For Each objPrinter In colInstalledPrinters
Select Case objPrinter.printerstatus
Case 3
MsgBox("A impressora está ociosa" )
Case 4
MsgBox("Impressora esta imprimindo")
Case 5
MsgBox("A impressora está aquecendo")
Case 6
MsgBox("A impressora está desativada")
Case 7
MsgBox("A impressora está desativada")
End Select
Next
End Sub
Cara na DLL MECAFW32
tem uma chamada que abre o Canal de comunicação
pelo retorno da chamada
voce consegue saber se esta ON ou OFF
usando a chamada
tem uma chamada que abre o Canal de comunicação
pelo retorno da chamada
voce consegue saber se esta ON ou OFF
Private Declare Function MECAFW32_AbreCanalDeComunicacao Lib "MECAFW32.dll" (ByVal pcPorta As String, ByVal pcVelocidade As String, ByVal pcNumbits As String, ByVal pcParidade As String, ByVal pcTimeout As String, ByVal pcTimeouVal As String) As Integer
usando a chamada
Private Sub Print_Teste(NomePrint As String)
Pnome = NomePrint.Substring(0, 3)
Select Case Pnome
Case "USB", "usb"
pPorta = "USB"
Case Else
SAviso = "***Porta Inalcansavel***"
Aviso.ShowDialog()
Err.Clear()
FecharComunicacao()
Exit Sub
End Select
Retorno = MECAFW32_AbreCanalDeComunicacao(pPorta, "", "", "", "", "")
If Retorno = 0 Then
CPImprime(Mecaf_Limpa, Len(Mecaf_Limpa))
sVAR = "**Teste de Comunicação com Diebold Mecaf Procomp**" & vbCrLf
CPImprime(sVAR, Len(sVAR))
sVAR = "" & vbCrLf
CPImprime(sVAR, Len(sVAR))
sVAR = "Conentado via " & pPorta & vbCrLf
CPImprime(sVAR, Len(sVAR))
sVAR = "" & vbCrLf
CPImprime(sVAR, Len(sVAR))
CPImprime(Mecaf_Negrito, Len(Mecaf_Negrito))
sVAR = "Texto em Negrito" & vbCrLf
CPImprime(sVAR, Len(sVAR))
sVAR = " Texto em Negrito" & vbCrLf
CPImprime(sVAR, Len(sVAR))
sVAR = " Texto em Negrito" & vbCrLf
CPImprime(sVAR, Len(sVAR))
sVAR = "" & vbCrLf
CPImprime(sVAR, Len(sVAR))
CPImprime(Mecaf_Limpa, Len(Mecaf_Limpa))
CPImprime(Mecaf_Condensado, Len(Mecaf_Condensado))
sVAR = "Texto em Condensado" & vbCrLf
CPImprime(sVAR, Len(sVAR))
sVAR = " Texto em Condensado" & vbCrLf
CPImprime(sVAR, Len(sVAR))
sVAR = " Texto em Condensado" & vbCrLf
CPImprime(sVAR, Len(sVAR))
sVAR = "" & vbCrLf
CPImprime(sVAR, Len(sVAR))
CPImprime(Mecaf_Limpa, Len(Mecaf_Limpa))
CPImprime(Mecaf_Grande, Len(Mecaf_Grande))
sVAR = "Texto em Expandido" & vbCrLf
CPImprime(sVAR, Len(sVAR))
CPImprime(Mecaf_Grande, Len(Mecaf_Grande))
sVAR = " Texto em Expandido" & vbCrLf
CPImprime(sVAR, Len(sVAR))
sVAR = " Texto em Expandido" & vbCrLf
CPImprime(Mecaf_Grande, Len(Mecaf_Grande))
CPImprime(sVAR, Len(sVAR))
sVAR = "" & vbCrLf
CPImprime(sVAR, Len(sVAR))
CPImprime(Mecaf_Limpa, Len(Mecaf_Limpa))
sVAR = "" & vbCrLf
CPImprime(sVAR, Len(sVAR))
CPImprime(Mecaf_Negrito, Len(Mecaf_Negrito))
sVAR = "Codigo de Barras COD128" & vbCrLf
CPImprime(sVAR, Len(sVAR))
CPImprime(Mecaf_Limpa, Len(Mecaf_Limpa))
sVAR = "58732105487026598745210236985498710236598741" & vbCrLf
sVAR = Mecaf_COD128 & sVAR
CPImprime(sVAR, Len(sVAR))
CPImprime(Mecaf_Limpa, Len(Mecaf_Limpa))
CPImprime(Mecaf_AbreGaveta, Len(Mecaf_AbreGaveta))
CPImprime(Mecaf_Limpa, Len(Mecaf_Limpa))
sVAR = "" & vbCrLf
CPImprime(sVAR, Len(sVAR))
sVAR = "" & vbCrLf
CPImprime(sVAR, Len(sVAR))
Pnome = LeArquivoINI(nome_arquivo_ini, "SAT", "QRcod", True)
If Pnome = True Then
CPImprime(Mecaf_Negrito, Len(Mecaf_Negrito))
sVAR = "Codigo de Barras QR-COD" & vbCrLf
CPImprime(sVAR, Len(sVAR))
CPImprime(Mecaf_Limpa, Len(Mecaf_Limpa))
sVAR = "fLxUr/974AsFDxf5yRa5Bys8sKsYGt9MdlOI4cIqs2SazPo/x7bJShxKCpQH+WzLA6pEJLbB3sOhKRaX6WaoBT8G5UhM/0UmjDjiUBCwItfO+UyFvzgvChQONUpsBg3xpneEc6NP71l5kz5oPmRJLxbvkv3gTMY3va0qDttYFjNj3aGePJj2bKdkZCCb4xT9n/DwtogWpfq73PAppxzGlT7vpcMg7jIAi8HAycrN46CnMoMY04L0H8eBNl3PuJchs1VAYEo7wHimv8Zzo/lOu8xUmlVFsvrn7qTfla0KN+NcqMtp1ZjTebrsGTJbrqsa8o8VzCeXHdaKmqhHp8CEYw==" & vbCrLf
sVAR = MECAF_QrCOD & sVAR
CPImprime(sVAR, Len(sVAR))
End If
CPImprime(Mecaf_Limpa, Len(Mecaf_Limpa))
sVAR = "" & vbCrLf
sVAR = "" & vbCrLf
sVAR = "" & vbCrLf
CPImprime(sVAR, Len(sVAR))
CPImprime(Mecaf_CortaPapel, Len(Mecaf_CortaPapel))
Else
SAviso = "***Impossivel Comunicar com Impressora***" + vbCrLf + "Verifique as configurações da Impressora"
Aviso.ShowDialog()
End If
End Sub
Pessoal eu paga para que fizer uma função em vb.net para detectar se a impressora esta ligada ou desligada, a função e so para verificar isso.
Citação::
Pessoal eu paga para que fizer uma função em vb.net para detectar se a impressora esta ligada ou desligada, a função e so para verificar isso.
Amigo e fácil usa o exemplo que passei
faça essa declaração da DLL
Private Declare Function MECAFW32_AbreCanalDeComunicacao Lib "MECAFW32.dll" (ByVal pcPorta As String, ByVal pcVelocidade As String, ByVal pcNumbits As String, ByVal pcParidade As String, ByVal pcTimeout As String, ByVal pcTimeouVal As String) As Integer
depois e só chamar a função a variável pPorta e a porta da impressora que deseja verificar
Retorno = MECAFW32_AbreCanalDeComunicacao(pPorta, "", "", "", "", "")
If Retorno = 0 Then
msgbox="Impressora OK"
else
msgbox="Impressora OFF"
end if
Olha tentei assim veja a mensagem que aparece
Private Sub Print_Teste()
Dim Retorno As Integer
Dim pPorta As String = "USB001"
Retorno = MECAFW32_AbreCanalDeComunicacao(pPorta, "", "", "", "", "")
If Retorno = 0 Then
MsgBox("Impressora OK")
Else
MsgBox("Impressora OFF")
End If
End Sub
Additional information: Não é possÃÂvel carregar a DLL "MECAFW32.dll": Não foi possÃÂvel encontrar o módulo especificado. (Exceção de HRESULT: 0x8007007E)
Private Sub Print_Teste()
Dim Retorno As Integer
Dim pPorta As String = "USB001"
Retorno = MECAFW32_AbreCanalDeComunicacao(pPorta, "", "", "", "", "")
If Retorno = 0 Then
MsgBox("Impressora OK")
Else
MsgBox("Impressora OFF")
End If
End Sub
Additional information: Não é possÃÂvel carregar a DLL "MECAFW32.dll": Não foi possÃÂvel encontrar o módulo especificado. (Exceção de HRESULT: 0x8007007E)
Citação::
Olha tentei assim veja a mensagem que aparece
Private Sub Print_Teste()
Dim Retorno As Integer
Dim pPorta As String = "USB001"
Retorno = MECAFW32_AbreCanalDeComunicacao(pPorta, "", "", "", "", "")
If Retorno = 0 Then
MsgBox("Impressora OK")
Else
MsgBox("Impressora OFF")
End If
End Sub
Additional information: Não é possÃÂvel carregar a DLL "MECAFW32.dll": Não foi possÃÂvel encontrar o módulo especificado. (Exceção de HRESULT: 0x8007007E)
voce copiou a DLL mecafw32.dll
para mesma pasta que o EXE do seu projeto?
MECAFW32.DLL esta dentro da mesma pasta sim
Citação::
MECAFW32.DLL esta dentro da mesma pasta sim
esse erro de nao conseguir carregar DLL
quer dizer que por algum motivo, o seu executável não conseguiu localizar a DLL
Seria se tem como resolver este problema
Citação::
Seria se tem como resolver este problema
claro
voce precisa colocar a DLL e suas dependentes na mesma pasta onde esta sendo executado o EXE do seu aplicativo
Que dependentes são esses?
Faça seu login para responder