Página 1 de 1

getprinters/win_printerlist

Enviado: 20 Ago 2014 08:48
por Minduim
amigos, estou verificando que as funções GETPRINTERS() e WIN_PRINTERLIST() estão retornando uma array vazia, independente dos parametros passados pela função.
harbour 3.4 + mingw


teste.prg

Código: Selecionar todos

Function Main

clear screen
@  2, 2 say "getprinters().............:" + str(len(getprinters()), 2)
@  3, 2 say "getprinters(.t.)..........:" + str(len(getprinters(.t.)), 2)
@  4, 2 say "getprinters(.t., .t.).....:" + str(len(getprinters(.t., .t.)), 2)
@  6, 2 say "win_printerlist().........:" + str(len(win_printerlist()), 2)
@  7, 2 say "win_printerlist(.t.)......:" + str(len(win_printerlist(.t.)), 2)
@  8, 2 say "win_printerlist(.t., .t.).:" + str(len(win_printerlist(.t., .t.)), 2)
@  9, 2 say ""
inkey(0)
return Nil

getprinters/win_printerlist

Enviado: 20 Ago 2014 10:38
por Jairo Maia
Olá Minduim,

Tem certeza que que há impressoras instaladas no Windows? Acabei de testar seu exemplo em Harbour 3.4+MinGW e retornou 3 para todas as opções, que são as 3 impressoras que tenho instalada no Windows.

getprinters/win_printerlist

Enviado: 20 Ago 2014 11:12
por Minduim
jairo, exitem 2 impressoras instaladas na mesma porta (hp p220 e lx810);
talvez o problema esteja na versão do harbor 3.4, a minha é dos dia 17/07/2014, mas não verifiquei nenhuma informação posterior no arquivo changelog.txt do Viktor;

getprinters/win_printerlist

Enviado: 20 Ago 2014 11:39
por Jairo Maia
Minha compilação atual é de 14/08. Mas confesso que não lembro de ter tido problema com as compilações anteriores nos testes que estou fazendo com a versão 3.4, (comecei em meados de julho).

getprinters/win_printerlist

Enviado: 20 Ago 2014 12:33
por Minduim
jairo, baixei e compilei a ultima versão do viktor e o erro sumiu;
entendo que a versão que eu estava utilizando continha um erro nestas funções;
agradeço a colaboração;

getprinters/win_printerlist

Enviado: 21 Ago 2014 20:33
por janio
Pelo visto, as duas funções servem exatamente para a mesma coisa.

Navegando pela net, encontrei:

WIN_PRINTEREXISTS () (nome antigo: PRINTEREXISTS ())
WIN_PRINTERSTATUS () (nome antigo: XISPRINTER ())
WIN_PRINTERPORTTONAME () (nome antigo: PRINTERPORTTONAME ())
WIN_PRINTERLIST () (nome antigo: GETPRINTERS ())
WIN_PRINTERGETDEFAULT () (nome antigo: GetDefaultPrinter ())
WIN_PRINTERSETDEFAULT () (nome antigo: SetDefaultPrinter ())
WIN_PRINTFILERAW () (nome antigo: PRINTFILERAW ())

As funções 'antigas' foram mantidas apenas para compatibilidade?
Deve-se usar apenas as novas funções (win_) e evitar as antigas ???

getprinters/win_printerlist

Enviado: 22 Ago 2014 05:42
por Jairo Maia
Olá Jânio,

Pelo já li, a iéia dos desenvolvedores é "colocar os pingos nos ís". Por exemplo, essas funções só funcionam no Windows, então iniciam por Win_. Funções Api Iniciam por Wapi_, e etc. Fico curioso como vão resolver as funções da WVG (se é que vão mexer na WVG, ou continuar investindo na WVW, o que também é legal. Precisamos algo sempre atual), que começam com Wvt_ mas a Wvg é para Windows.

Quanto a abandonar as antigas quando é criada um novo lançamento, a orientação é sim para que passemos a usar as novas funções, embora na imensa maioria dos casos as antigas são mantidas por algumas versões por compatibilidade.

getprinters/win_printerlist

Enviado: 22 Ago 2014 10:19
por janio
Ok Jairo!

E tu num dorme não ne? kkkkkkkkkkkk 5:42 da manha respondendo forum! rsrsrs

getprinters/win_printerlist

Enviado: 22 Ago 2014 10:31
por Itamar M. Lins Jr.
Fico curioso como vão resolver as funções da WVG (se é que vão mexer na WVG, ou continuar investindo na WVW, o que também é legal. Precisamos algo sempre atual), que começam com Wvt_ mas a Wvg é para Windows.
Isso já foi feito.
A WVW agora faz parte da contrib, já foram resolvidos os problemas críticos. UNICODE, MT, 64Bits e uma grande quantidade de erros.
Os nomes irão permanecer da forma que estão WVT->Raiz, WVG, WVW usam algumas coisas da WVT. O W não é do Windows OS, é windows JANELA.
A WVW só soda no windows, a WVT roda no Windows OS/LINUX/OS/Android...

Windows Video for Windows = WVW
Windows Video for Grafic = WVG //Não lembro se funciona no linux.
Windows Video Teminal = WVT (o pessoal faz as demais sempre em cima dessa)

Saudações,
Itamar M. Lins Jr.

getprinters/win_printerlist

Enviado: 22 Ago 2014 12:22
por Jairo Maia
Olá Itamar,
Itamar M. Lins Jr. escreveu:Isso já foi feito.
A WVW agora faz parte da contrib, já foram resolvidos os problemas críticos.
Sim, estou acompanahndo as alterações na WVW. É que uso a WVG e quiz dizer que poderia haver melhorias nela também, mas acho que é bom ir pensando em mudar para WVW, inclusive porque passou a ser uma contrib, e não vejo sentido investir em duas bibliotecas com o mesmo propósito. Alguma razão deve ter tido (óbvio) para ser escolhida a WVW para ser a GT gráfica oficial para Windows.
Itamar M. Lins Jr. escreveu:Windows Video for Windows = WVW
Windows Video for Grafic = WVG //Não lembro se funciona no linux.
Windows Video Teminal = WVT (o pessoal faz as demais sempre em cima dessa)
Aqui, apenas um comentário: Somente a WVT é multi plataforma. Tanto a WVW como a WVG são extensões da WVT e rodam somente em Windows, pois são baseadas em elementos GUI.