Página 4 de 6
Servidor NTP para harbour 3.0
Enviado: 07 Fev 2014 02:07
por cjp
Está dando este erro na compilação:

Servidor NTP para harbour 3.0
Enviado: 07 Fev 2014 07:41
por fladimir
Adiciona no início do teu PRG
#include "hbcompat.ch"
[]´s
Servidor NTP para harbour 3.0
Enviado: 13 Fev 2014 17:16
por cjp
Incluí, mas ainda está dando este erro:

Servidor NTP para harbour 3.0
Enviado: 13 Fev 2014 18:04
por Toledo
cjp, observando a sua mensagem do dia 07/fev notei que você tentou compilar o código que o Rochinha postou neste tópico. Bom, se você observar a primeira linha do código do Rochinha, o código dele é para compilar com a FiveWin, então se o seu programa é modo console, não se pode misturar código FiveWin com código modo console.
E em toda mensagem de erro, é indicado em qual arquivo e em que linha ocorreu o erro, então é interessante verificar o arquivo/linha para ver o que pode estar errado.
Abraços,
Servidor NTP para harbour 3.0
Enviado: 13 Fev 2014 18:11
por cjp
Verdade que eu tentei compilar o código do Rochinha, Toledo.
Mas esta última postagem refere-se ao código do Fladimir, que me mandou incluir o #include...
O problema da linha do erro é que eu não entendo a função dele, pois foi feita em C, e por isso não sei a razão de estar dando erro. Só posso dizer que a linha 25562, a primeira que indica erro, está assim:
Código: Selecionar todos
<span class="u0vunm125r" id="u0vunm125r_18">Local</span> cRet := "", cPagina := ""
Servidor NTP para harbour 3.0
Enviado: 13 Fev 2014 18:46
por Toledo
cjp, verifique se você copiou corretamente o código do Fladimir.
No código do Fladimir está assim:
E você copiou:
Código: Selecionar todos
<span class="u0vunm125r" id="u0vunm125r_18">Local</span> cRet := "", cPagina := ""
Bom, este código
<span class="u0vunm125r" id="u0vunm125r_18"> e
</span> são comandos HTML, então tem que ver como foi que você copiou o código do Fladimir, pois estes códigos HTML nem existem aqui no script do fórum.
Abraços,
Servidor NTP para harbour 3.0
Enviado: 13 Fev 2014 20:29
por cjp
De fato, Toledo, acho que houve algum erro na hora de copiar, possivelmente algum vírus no computador do meu trabalho, pois eu copiei usando a opção de cópia do próprio site, não sei porque foi inserido esse código de spam.
Fiz nova cópia agora e não deu mais erro nessa linha.
Mas ainda está dando erro:
A linha 25646 está assim:
Servidor NTP para harbour 3.0
Enviado: 13 Fev 2014 20:49
por Toledo
cjp, conforme orientação do Fladimir, você tem que colocar #include "hbcompat.ch" no início do arquivo onde está o código que você copiou da mensagem dele.
Abraços,
Servidor NTP para harbour 3.0
Enviado: 13 Fev 2014 21:21
por cjp
Eu achei que era para incluir na função main(). Mas agora incluí na pegadthrbrasilia() e compilou.
Deu um erro de execução por falta de definição da variável CRLF. Eu a defini como "" para testar, e funcionou.
Mas a variável cPagina está vazia. Por isso, cMes está retornando NIL. E está dando erro no parâmetro + na seguinte linha:
Além disso, cDia está retornando 08, não sei porque (hoje não é dia 8).
Servidor NTP para harbour 3.0
Enviado: 13 Fev 2014 22:16
por fladimir
Posta teu código inteiro pra avaliarmos e ver se conseguimos te ajudar.
[]´s
Servidor NTP para harbour 3.0
Enviado: 13 Fev 2014 22:19
por rochinha
Amiguinhos,
1-O código que postei contém uma série de funções para diversos usos e portanto podem ser recortados e colados no seu .prg para obter algum resultado.
2-O fato de aparecer conteúdo .hmtl no momento da compilação se deve a muita sugeira nos temporários, deve ser feita uma limpeza com CCleaner.
3-A variavel CRLF deve ser definida como
#define CRLF chr(13)+chr(10).
4-O erro de aparecer numero 8 na variavel cDia, voce deve colocar no inicio do .prg
SET DATE BRIT.
5-O erro de parametro + acontece porque alguma variável da concatenação esta vazia, teste primeiro com:
Código: Selecionar todos
?"cDia",cDia,"cMes",cMes,"cAno",cAno
cData := cDia+"/"+cMes+"/"+cAno
Servidor NTP para harbour 3.0
Enviado: 13 Fev 2014 22:26
por Toledo
cjp escreveu:Deu um erro de execução por falta de definição da variável CRLF. Eu a defini como "" para testar, e funcionou.
cjp, no início do seu PRG incluir:
cjp escreveu:Mas a variável cPagina está vazia.
Não pode estar vazia, pois senão não entraria no
If cTexto $ cPagina, onde está a linha que você disse que está com erro. Mas acho que basta declarar o CRLF no início do arquivo que já resolve.
Abraços,
Servidor NTP para harbour 3.0
Enviado: 13 Fev 2014 22:58
por cjp
Toledo, defini a CRLF, mas não mudou nada. A cPagina ainda está vazia.
Mas agora eu vi que eu estava testando a cPagina depois de
Quando testo antes, cPagina está assim:
Então, acho que realmente o problema é na CRLF.
Mas note que a data está errada, aparentemente seria um erro do próprio site, não? Se bem que, consultando o site diretamente, a data está certa.
Rochinha,
A set date brit já está definida no início do prg.
A variável que está vazia é a cMes.
Servidor NTP para harbour 3.0
Enviado: 13 Fev 2014 23:19
por rochinha
Amiguinho,
Não sei se o Harbour tem, mas em Clipper tinhas umas funções que se passava um data e retornava o nome do mês. O contrário eu não lembro, mas voce deverá montar uma critica que pega o nome do mês e retorna o número dele, tipo:
Código: Selecionar todos
NumeroDoMes := ASCAN( { "janeiro", "fevereiro", ..., "dezembro" }, lower(NomeDoMes) )
Servidor NTP para harbour 3.0
Enviado: 14 Fev 2014 02:03
por Nascimento
Boa Noite a Todos!
Amigo Cpj nao precisa vc mandar o cliente atualizar a hora pois tem comandos na biblioteca hbct que faz isso automaticamente
SetDate() e Settime() // se nao me foge a memoria
por isso eu so precisava de uma funçao que pinga-se um dns valido a do rochinha parece muito boa mais nao tive tempo de testar
mais basicamente pra completar a funçao que os amigos toledo ,fladmir, assimoes ,rochinha etc.. fizeram eu precisaria de pingar um dns tipo 8.8.8.8 (dns google)
supondo seria mais ou menos assim
vdns:=" 8.8.8.8 "
if ping(vdns)
execultantp() // executaria a funçao pra pegar a hora via servidor ntp
else
alert(' Verifique a Conexão com A internet ')
endif
Onde a funçao ping pegaria o dns como paramentro e mandaria de retorno .t. ou .f.
esta funçao ping (nome sugerido ) é a que eu precisaria pra resolver todo o problema :%
agradeço a Todos que se empenham a Ajudar e a Manter esse Forum um dos melhores em clipper/harbour