Página 1 de 1

Gera o executável e manda um ícone na tela

Enviado: 01 Abr 2014 17:08
por billy1943
Esta pequena rotina apenas mostra quais os valores em tela dos decimais acima de 128 e até o 255, ou seja chr(n) = caracter x, na tela.

O programa está sendo compilado usando o BUILD.BAT e termina sem erros.

Somente quando tento executá-lo ele aparece primeiro como um ícone no desktop do Windows (o meu é o 7 Ultimate).
Clicando sobre esse ícone, aí ele começa a fazer sua finalidade.

Ele não deveria abrir como todos os programas em DOS, abrindo a janela diretamente ?

O que posso mudar ou acrescentar ?

Código: Selecionar todos

FUNCTION main
listar()
return

PROCEDURE listar
local n, xlin
clear screen
setcolor("w+b,g+n,,,bg+b")
clear screen
xlin := 2

for n := 128 to 255

    @ xlin,4 say str(n,3) + " " + chr(n)    
    @ xlin,14 say str(n+1,3) + " " + chr(n+1)    
    @ xlin,24 say str(n+2,3) + " " + chr(n+2)
    @ xlin,34 say str(n+3,3) + " " + chr(n+3)
    @ xlin,44 say str(n+4,3) + " " + chr(n+4)
    @ xlin,54 say str(n+5,3) + " " + chr(n+5)
    @ xlin,64 say str(n+6,3) + " " + chr(n+6)
    @ xlin,74 say str(n+7,3) + " " + chr(n+7)
    n += 7
    xlin ++
    
next 

return   

Gera o executável e manda um ícone na tela

Enviado: 01 Abr 2014 17:48
por Toledo
Amigo, para compilar um programa em modo console com o BUILD.BAT você tem que passar o parâmetro /c, por exemplo:

BUILD arquivo.prg /c

Abraços,

Gera o executável e manda um ícone na tela

Enviado: 01 Abr 2014 18:51
por Pablo César
Toledo escreveu:BUILD arquivo.prg /c
Houve uma inversão de parâmetros, amigo Toledo. O parâmetro /c vem antes do nome do prg. Você pode fazer uma BAT

Se for para HMG:

Call C:\hmg.3.2\Build.bat /c Demo6

E se for em Minigui Extended:

Call C:\MiniGUI\BATCH\Compile Demo6 /C

Gera o executável e manda um ícone na tela

Enviado: 01 Abr 2014 21:54
por billy1943
Obrigado pela atenção dos nossos amigos Toledo e Pablo César

Compilou normalmente igual ao que havia feito sem o parametro /C que fiz usando o HMG 3.2.0

Somente eu não tenho explicação porque ele gera um ícone do programa na tela do Windows e somente funciona se eu clicar para abrir/executar por ele.

Se eu clicar na pasta onde estã o fonte e o .Bat dá a impressão que nada ocorreu.

Outra "coisinha" que está me intrigando:
- no fonte não há nenhum ponto de parada tipo inkey ou coisa parecida, mas o programa somente avança para a linha seguinte da tela se eu teclar algo. Porque ?

Desculpem-me mas é que estou dando meus primeiros passos no Harbour e quero começar com base, pois se em um programa pequeno como este já apareceram algumas dúvidas,
imaginem em algum outro bem maior e complicado...

Gera o executável e manda um ícone na tela

Enviado: 01 Abr 2014 23:22
por Pablo César
billy1943 escreveu:Somente eu não tenho explicação porque ele gera um ícone do programa na tela do Windows e somente funciona se eu clicar para abrir/executar por ele.

Se eu clicar na pasta onde estã o fonte e o .Bat dá a impressão que nada ocorreu.
Oi Billy, isto ocorre porque sem instrução de gerar o exe a IDE irá sempre gerar em modo gráfico. Pois HMG ou Minisgui Extended são bibliotecas gráficas. A compilação em modo console, é opcional. Mas precisa carregar os drivers GT para formar a saída em modo console. E todo executável feito pelo HMG ou Minigui Extended, coloca um ícone tipo Windows no próprio executável. Ai, como você não tinha setado para compilar em modo console, gerou em modo gráfico e como você colocou nenhuma instrução de interface gráfica, ele executa mas exibe nada por causa da falta dos drivers GT.
billy1943 escreveu:Outra "coisinha" que está me intrigando:
- no fonte não há nenhum ponto de parada tipo inkey ou coisa parecida, mas o programa somente avança para a linha seguinte da tela se eu teclar algo. Porque ?
Disponibilize o seu executável e fonte na sua próxima mensagem, para ver ao quê você está se referindo. Informe qual é o sistema operacional seu também e a versão em que foi compilada.

Gera o executável e manda um ícone na tela

Enviado: 02 Abr 2014 07:48
por Toledo
billy1943 escreveu:Somente eu não tenho explicação porque ele gera um ícone do programa na tela do Windows e somente funciona se eu clicar para abrir/executar por ele.
Billy, todo programa compilado usando o BUILD da HMG fica com um ícone igual a este Imagem.

Então o ícone que você está falando, na verdade é o executável do seu programa.

Abraços,

Gera o executável e manda um ícone na tela

Enviado: 04 Abr 2014 13:30
por Marcelo Zampieri
Para alterar o ícone padrão do executável, gerado pelo HMG console, altere na pasta \RESOURCES o arquivo window.ico ( renomeie o original e copiei um novo com o mesmo nome ) para um de sua preferência. A dimensão é 32x32 pixels. Mas coloquei um 16x16 e funcionou corretamente.

Gera o executável e manda um ícone na tela

Enviado: 05 Abr 2014 10:16
por billy1943
Eu compilei o exemplo exposto deste tópico, pelo Harbour/XHarbour, e está tudo OK.
Apenas tive de incluir um INKEY(0) para parar sua execução após à última linha.
Vou deixar para o Minigui apenas quando houver parte gráfica, e para o Harbour as aplicações em modo console.

Experimentei as mudanças sugeridas, pelas quais agradeço