microvolution escreveu:1ª - em alguns dos meus ".PRGs" eles não aceitaram o início nem com "function" ou "procedure" apesar do encerramento com "return" ou "return nil", apresentava uma mensagem de "redefinition of procedure or function". Então nesses casos excluí (comentei com "//") essas linhas.
Não é que não aceita Function nem Procedure... apenas está acusando que o
nome dessas funções ou procedures (como queira chamar) estão em duplicidade. Em Clipper, era muito comum criar o nome do PRG e executá-lo através do
DO <nome_do_prg> e se quisesse passar parâmetros fazia:
DO <nome_do_prg> WITH <parm1> <param2> ... etc...
No Harbour ainda aceita essa forma, portanto não precisaria adicionar a palavra "Function" nem "Procedure" no inicio, desde que chame com
DO <nome_do_prg> ...
Eu sou a favor, de colocar o
nome da função diferente ao do PRG, claro que as chamadas da função deverão ser com o novo nome para que chame a função e não o PRG.
Se nada disso, funcionou... é porque em algum lugar o
nome da função ou procedure está em duplicidade. Isto é, digamos num PRG você tem a função chamada
Function Incluir (por exemplo) e em outro PRG você também tem outra função com o mesmo nome:
Function Incluir. Então se for assim, uma dela vai ter que renomear para um nome diferente, pode até mesmo ser:
Function Incluir2 mas tem que ser diferente a outra.
microvolution escreveu:2ª - quando se inicia um novo projeto, observei que gera um MAIN.PRG e um MAIN.FMG que não sei o que fazer com eles (apesar que o MAIN.PRG ter conseguido excluí-lo).
Esses arquivos são criados pela IDE de forma obrigatória e sugestiva quando é clicado no botão "criar novo projeto". Mas podem ser excluídos tanto fisicamente como pela IDE no menu
Projeto \ Excluir arquivo mas tem que posicionar-se com o mouse no arquivo. A IDE cria esses arquivos como default. O PRG é o arquivo programa e o FMG é o arquivo gráfico de tela. NEste seu caso, por ser modo console, não necessita carregar nenhuma tela gráfica.
microvolution escreveu:3ª - ao compilar, apesar do arquivo final (.EXE) ter sido gerado e com o tamanho aproximadamente ao do original em clipper, ele não aparece nada.
Se você está utilizando a IDE do HMG versão 3.0.35 então você tem aquela opção na propria IDE para dizer que você precisaria compilar em modo CONSOLE (veja na janela "Gerenciador de Projeto" na aba "Configuração" no item "Console mode:" e deixe como
.T. Mas se você está utilizando uma versão posterior, você vai ter que inserir no inicio do PRG principal:
Código: Selecionar todos
REQUEST HB_GT_WIN_DEFAULT
Function Main()
SetMode(25,80)
O request é pra carregar o drive GT, isto é para o modo ANSI/CONSOLE e o SetMode é pra definir o tamanho da tela. O Function Main, é obrigatório para compilações em Harbour.
Se houverem mais dúvidas ou não funcionou as dicas dadas, poste novamente relatando o que está ocorrendo e o que você fez. De preferência, poste parte do seu código fonte. Boa sorte.