COMANDOS ASC/POS PARA IMPRESSORAS

MFLAVIO 18/05/2016 17:24:15
#462230
Ola galera tudo bem
seguinte eu tenho um arquivo INI com uma serie se comandos ASC que preciso enviar para impressora

eu consigo carregar o comando em uma variável mais quando mando para a impressora ela imprime o comando in vez de executar
EX:
parte do arquivo
[comandos]
ud=Chr(27) + [Ô]i[Ô] + vbCrLf
ff=Chr(27) + Chr(97) + [Ô]1[Ô]
ecut=Chr(27) + [Ô]@[Ô]
line=chr(21)+chr(19)+chr(34)+[Ô]@[Ô]
cb128=Chr(27) + Chr(97) + Chr(0)+Chr(27) + Chr(33) + Chr(1)+Chr(27) + Chr(33) + Chr(128)
port=Chr(27) + Chr(33) + Chr(0)

quando mando executar ff a impressora imprime o Texto Chr(27) + Chr(97) + [Ô]1[Ô]
in vez de pular uma linha

eu sei que meu codigo esta carregando os comandos como String
o que eu preciso e converter essa string em comando para enviar a impressora
alguma Dica?
KERPLUNK 18/05/2016 23:18:01
#462257
Resposta escolhida
Coloque somente os valores no INI, assim, quando buscar você busca somente o valor:
no ini:
[comandos]
ud=27 + [Ô]i[Ô] + vbCrLf
ff=27 + 97 + [Ô]1[Ô]
ecut=27 + [Ô]@[Ô]

Então ao buscar os dados do INI, você pega tudo que tem no valor e separa usando o Split no caracter [Ô]+[Ô]. Isso vai te dar um array contendo os valores e qualquer outra coisa. Caso o valor seja numérico, você use o Chr ao imprimir:

Dim valor As String = BuscaIni([Ô]comandos[Ô], [Ô]ud[Ô])
Dim valores As String() = valor.Split([Ô]+[Ô]C)
For i As Integer = 0 To valores.Length - 1
If IsNumeric(valores(i)) Then
Imprime(Chr(valores(i)))
End If
Next


E aqui, o método [Ô]IsNumeric[Ô]:

Public Function IsNumeric(s As String) As Boolean
Dim output As Single
Return Single.TryParse(s, output)
End Function

MFLAVIO 20/05/2016 12:56:24
#462317
KERPLUNK

Valeu pela dica, na verdade eu já tinha tentando fazer isso usando o isnumeric
mais não deu certo

quando o comando tem apenas números funciona mais quando eu tenho que concatenar caracteres [Ô]@[Ô],[Ô]V[Ô],[Ô]#[Ô],vbCrLf ai o comando falha
a impressora imprime o caractere,

ai me perdi nessa Hora
Tópico encerrado , respostas não são mais permitidas