Página 1 de 1
Internal error: screen driver initialization failure
Enviado: 02 Mar 2010 16:49
por jamazevedo
Olá. Boa tarde!
Alguém já resolveu a mensagem de erro:
"Internal error: screen driver initialization failure"
Acontece da seguinte forma:
Quando executo o programa pela linha de comando direto, ele executa e termina sem nenhum problema.
Agora quando agendo para ser executado em um determinado horário aparece a mensagem de erro citada acima.
Estou usando:
Sistema Operacional: Linux
Distribuição: Ubuntu 9.04
xHarbour: 1.2.1 (Simplex) Rev 6455
Atenciosamente,
José Airton
skype: jamazevedo
Re: Internal error: screen driver initialization failure
Enviado: 02 Mar 2010 23:05
por Itamar M. Lins Jr.
Ola!
Tem que ser compilado com gtnul para daemon, ou gtcgi se for criar saida para algum servidor http.
Vai ser executado com se estivese no systray do windows, daemon no linux,não pode haver gt.
Saudações,
Itamar M. Lins Jr.
Funcionou.
Enviado: 03 Mar 2010 10:47
por jamazevedo
Olá Itamar. Bom dia!
Perfeitamente re-compilei com a opção gtnul, e funcionou, nesse caso o aplicativo irá rodar como um processo (daemon).
Um grande abraço.
Muito obrigado.
Executar aplicação em systray/deamon
Enviado: 04 Mai 2010 11:26
por jamazevedo
Olá Itamar. Bom dia!
É o seguinte o
gtnul no xHarbour esta funcionando corretamente, só que estou migrando para Harbour e não consegui fazer funcionar em
deamon minha aplicação, veja o meu arquivo de compilação:
Código: Selecionar todos
# compila so os alterados
-inc
-gtnul
# lib que serao licadas
-lhbct
-lhbtip
-lxhb
# nome do executavel
-ordemail
# fontes que serao compilados e lincados
rd.prg
arquivos.prg
parametr.prg
avisos.prg
envemail.prg
Estou usando Harbour 2.1.0 dev (Rev. 14262)
Ubuntu 9.10.
Re: Internal error: screen driver initialization failure
Enviado: 04 Mai 2010 22:51
por sygecom
Bug na opção GTNUL
Enviado: 05 Mai 2010 12:09
por jamazevedo
A opção é
gtnul mas deve esta com
bug.
No
xHarbour está funcionando no
Harbour esta com
bug.
Como faço para relatar o erro a equipe de desenvolvimento

Re: Internal error: screen driver initialization failure
Enviado: 05 Mai 2010 12:53
por sygecom
Re: Internal error: screen driver initialization failure
Enviado: 05 Mai 2010 17:36
por Itamar M. Lins Jr.
Qual é o erro?
Comunique-se com o pessoal do Harbour que com certeza absoluta eles irão ajudar.
Saudações,
Itamar M. Lins Jr.
Bug na opção GTNUL
Enviado: 05 Mai 2010 17:48
por jamazevedo
Nenhum erro aparece, simplesmente a aplicação não esta rodando em
deamon.
A opção gtnul parece esta desabilitada, veja o arquivo de compilação:
Código: Selecionar todos
# compila so os alterados
-inc
-gtnul
# lib que serao licadas
-lhbct
-lhbtip
-lxhb
# nome do executavel
-ordemail
# fontes que serao compilados e lincados
rd.prg
arquivos.prg
parametr.prg
avisos.prg
envemail.prg
Re: Internal error: screen driver initialization failure
Enviado: 05 Mai 2010 17:54
por Itamar M. Lins Jr.
Tentarei uma resposta lá dos desenvolvedores.
Um momento...
Saudações,
Itamar M. Lins Jr.
Re: Internal error: screen driver initialization failure
Enviado: 05 Mai 2010 18:53
por Itamar M. Lins Jr.
Para ter uma resposta mais rápido é melhor fazer um programa bem pequeno que mostre o erro.
Outra coisa, existe umas diferenças na classe TIP do xHarbour para o Harbour.
Sem Linux aqui fica dificil te ajudar. :'(
Saudações,
Itamar M. Lins Jr.
Bug na opção GTNUL
Enviado: 06 Mai 2010 10:06
por jamazevedo
Olá Itamar. Bom dia!
Muitíssimo obrigado por tentar ajudar.
Esclarecendo melhor o que esta acontecendo: o programa não apresenta nenhum erro, o processo que quero executar está funcionando. Apenas estou tentando trabalhar esse aplicativo em
backgroud e para isso, no xHarbour, eu coloco no arquivo de compilação
LFLAGS = -Wl,--noinhibit-exec -static -gtnul
Aqui no Harbour, no arquivo de compilação, foi colocada a opção
-gtnul
conforme demonstrado nas mensagens anteriores.
O Executável é gerado como se fosse a opção
-gtcrs
e por isso não liberar o prompt para fazermos outras operação.
Já tirei o
-gtcrsdo arquivo de compilação e coloquei na linha de comando
hbmk2 rb.hbp -gtnul e também não funciona, ou seja, o prompt fica preso e só é liberado após a rotina do programa ser finalizada. Todo funcionar apenas não esta em
deamon, no meu caso estou usando Linux.
Re: Internal error: screen driver initialization failure
Enviado: 06 Mai 2010 16:11
por Itamar M. Lins Jr.
Todo funcionar apenas não esta em deamon, no meu caso estou usando Linux.
Então é só colocar aquele "&" o sinal, no final do arquivo para ser executando em segundo plano.
5.1 Executando um comando/programa
Para executar um comando, é necessário que ele tenha permissões de execução (veja Tipos de Permissões de acesso, Seção 11.2 e ls, Seção 6.1) e que esteja no caminho de procura de arquivos (veja path, Seção 5.2).
No aviso de comando #(root) ou $(usuário), digite o nome do comando e tecle Enter. O programa/comando é executado e receberá um número de identificação (chamado de PID - Process Identification), este número é útil para identificar o processo no sistema e assim ter um controle sobre sua execução (será visto mais adiante neste capítulo).
5.3 Tipos de Execução de comandos/programas
Um programa pode ser executado de duas formas:
1.Primeiro Plano - Também chamado de foreground. Quando você deve esperar o término da execução de um programa para executar um novo comando. Somente é mostrado o aviso de comando após o término de execução do comando/programa.
2.Segundo Plano - Também chamado de background. Quando você não precisa esperar o término da execução de um programa para executar um novo comando. Após iniciar um programa em background, é mostrado um número PID (identificação do Processo) e o aviso de comando é novamente mostrado, permitindo o uso normal do sistema.
O programa executado em background continua sendo executado internamente. Após ser concluído, o sistema retorna uma mensagem de pronto acompanhado do número PID do processo que terminou.
Para iniciar um programa em primeiro plano, basta digitar seu nome normalmente. Para iniciar um programa em segundo plano, acrescente o caracter "&" após o final do comando.
OBS: Mesmo que um usuário execute um programa em segundo plano e saia do sistema, o programa continuará sendo executado até que seja concluído ou finalizado pelo usuário que iniciou a execução (ou pelo usuário root).
Exemplo: find / -name boot.b &
O comando será executado em segundo plano e deixará o sistema livre para outras tarefas. Após o comando find terminar, será mostrada uma mensagem.
Saudações,
Itamar M. Lins Jr.
Bug na opção GTNUL
Enviado: 07 Mai 2010 09:54
por jamazevedo
Certo itamar. Muito obrigado!