Prezados,
Alguém tem o código adaptado para Harbour ou xHarbour da função (API) NetRemoteTOD, que pega a data e hora de um servidor windows.
[]´s
NetRemoteTOD() - Pega a Data e Hora de Um Servidor
Moderador: Moderadores
NetRemoteTOD() - Pega a Data e Hora de Um Servidor
►Harbour 3.x | Minigui xx-x | HwGui◄
Pense nas possibilidades abstraia as dificuldades.
Não corrigir nossas falhas é o mesmo que cometer novos erros.
A imaginação é mais importante que o conhecimento. (Albert Einstein)
Pense nas possibilidades abstraia as dificuldades.
Não corrigir nossas falhas é o mesmo que cometer novos erros.
A imaginação é mais importante que o conhecimento. (Albert Einstein)
Re: NetRemoteTOD() - Pega a Data e Hora de Um Servidor
Amigos,
Achei este código em um site, a data está funcionando, mas a hora está tendo uma diferença de 2 horas para mais.
Outra coisa quem programa em c, como fazer o retorno para variável.
A chamada da função: wmain("\\localhost")
Corrijam se estiver errado.
[]´s
Achei este código em um site, a data está funcionando, mas a hora está tendo uma diferença de 2 horas para mais.
Outra coisa quem programa em c, como fazer o retorno para variável.
A chamada da função: wmain("\\localhost")
Corrijam se estiver errado.
[]´s
Código: Selecionar todos
#pragma BEGINDUMP
#define HB_OS_WIN_32_USED
#define _WIN32_WINNT 0x0400
#include "hbwhat.h"
#include <windows.h>
#include "hbapiitm.h"
#include "hbapi.h"
#include "hbvm.h"
#include "hbstack.h"
#include <stdio.h>
#include <lm.h>
#pragma comment(lib, "netapi32.lib")
#ifndef UNICODE
#define UNICODE
#endif
HB_FUNC( WMAIN )
{
int argc;
wchar_t *argv[1000];
LPTIME_OF_DAY_INFO pBuf = NULL;
NET_API_STATUS nStatus;
LPTSTR pszServerName = NULL;
if (argc > 2)
{
fwprintf(stderr, L"Usage: %s [\\\\ServerName]\n", argv[0]);
exit(1);
}
// The server is not the default local computer.
//
if (argc == 2)
pszServerName = (LPTSTR) argv[1];
//
// Call the NetRemoteTOD function.
//
nStatus = NetRemoteTOD((LPCWSTR) pszServerName,
(LPBYTE *)&pBuf);
//
// If the function succeeds, display the current date and time.
//
if (nStatus == NERR_Success)
{
if (pBuf != NULL)
{
fprintf(stderr, "\nData: %d/%d/%d\n",
pBuf->tod_month, pBuf->tod_day, pBuf->tod_year);
fprintf(stderr, "Hora: %d:%d:%d\n",
pBuf->tod_hours, pBuf->tod_mins, pBuf->tod_secs);
}
}
//
// Otherwise, display a system error.
else
fprintf(stderr, "A system error has occurred: %d\n", nStatus);
//
// Free the allocated buffer.
//
if (pBuf != NULL)
NetApiBufferFree(pBuf);
return 0;
}
#pragma ENDDUMP
►Harbour 3.x | Minigui xx-x | HwGui◄
Pense nas possibilidades abstraia as dificuldades.
Não corrigir nossas falhas é o mesmo que cometer novos erros.
A imaginação é mais importante que o conhecimento. (Albert Einstein)
Pense nas possibilidades abstraia as dificuldades.
Não corrigir nossas falhas é o mesmo que cometer novos erros.
A imaginação é mais importante que o conhecimento. (Albert Einstein)
