NetRemoteTOD function (lmremutl.h)

The NetRemoteTOD function returns the time of day information from a specified server.


  [in]  LPCWSTR UncServerName,
  [out] LPBYTE  *BufferPtr


[in] UncServerName

Pointer to a constant string that specifies the DNS or NetBIOS name of the remote server on which the function is to execute. If this parameter is NULL, the local computer is used.

[out] BufferPtr

Pointer to the address that receives the TIME_OF_DAY_INFO information structure. This buffer is allocated by the system and must be freed using the NetApiBufferFree function.

Return value

If the function succeeds, the return value is NERR_Success.

If the function fails, the return value is a system error code. For a list of error codes, see System Error Codes.


No special group membership is required to successfully execute the NetRemoteTOD function.


The following code sample demonstrates how to retrieve and print the current date and time with a call to the NetRemoteTOD function. To do this, the sample uses the TIME_OF_DAY_INFO structure. Finally, the sample frees the memory allocated for the information buffer.

#include <stdio.h>
#include <windows.h> 
#include <lm.h>
#pragma comment(lib, "netapi32.lib")

#ifndef UNICODE
#define UNICODE

int wmain(int argc, wchar_t *argv[])
   NET_API_STATUS nStatus;
   LPTSTR pszServerName = NULL;

   if (argc > 2)
      fwprintf(stderr, L"Usage: %s [\\\\ServerName]\n", argv[0]);
   // 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, "\nThe current date is: %d/%d/%d\n",
                 pBuf->tod_month, pBuf->tod_day, pBuf->tod_year);
         fprintf(stderr, "The current time is: %d:%d:%d\n",
                 pBuf->tod_hours, pBuf->tod_mins, pBuf->tod_secs);
   // Otherwise, display a system error.
      fprintf(stderr, "A system error has occurred: %d\n", nStatus);
   // Free the allocated buffer.
   if (pBuf != NULL)

   return 0;


Requirement Value
Minimum supported client Windows 2000 Professional [desktop apps only]
Minimum supported server Windows 2000 Server [desktop apps only]
Target Platform Windows
Header lmremutl.h (include Lm.h)
Library Netapi32.lib
DLL Netapi32.dll

See also

Network Management Functions

Network Management Overview

Remote Utility Functions