275 const WCHAR *lpcszSysType;
279 unsigned int cSeconds,
i,
j;
289 wprintf(
L"Error! GetSystemDirectory failed.\n");
298 wprintf(
L"Error! GetComputerName failed.\n");
304 L"SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion",
309 wprintf(
L"Error! RegOpenKeyEx failed.\n");
318 ZeroMemory(&VersionInfo,
sizeof(VersionInfo));
326 L"%lu.%lu.%lu %s %s %lu",
366 swprintf(Buf, Tmp, cSeconds / (60*60*24), (cSeconds / (60*60)) % 24, (cSeconds / 60) % 60, cSeconds % 60);
373 swprintf(Tmp,
L"%s\\oeminfo.ini", szSystemDir);
378 sizeof(Buf)/
sizeof(Buf[0]),
380 if (
wcslen(Buf) == 0 && SMBiosBuf)
391 sizeof(Buf)/
sizeof(Buf[0]),
393 if (
wcslen(Buf) == 0 && SMBiosBuf)
403 lpcszSysType =
L"X86-based PC";
406 lpcszSysType =
L"IA64-based PC";
409 lpcszSysType =
L"AMD64-based PC";
412 lpcszSysType =
L"Unknown";
424 swprintf(Tmp,
L"HARDWARE\\DESCRIPTION\\System\\CentralProcessor\\%u",
i);
449 L"HARDWARE\\DESCRIPTION\\System",
450 L"SystemBiosVersion",
464 L"HARDWARE\\DESCRIPTION\\System",
476 wprintf(
L"Error! GetWindowsDirectory failed.");
494 L"MIME\\Database\\Rfc1766",
509 L"Keyboard Layout\\Preload",
514 L"MIME\\Database\\Rfc1766",
532 L"SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\\Time Zones",
580 L"SYSTEM\\CurrentControlSet\\Control\\Session Manager\\Memory Management",
587 for(
i = 0; Buf[
i];
i++)
612 pAdapters =
malloc(cbAdapters);
622 unsigned cAdapters = 0;
625 for(
i = 0; pCurrentAdapter; ++
i)
627 if (pCurrentAdapter->IfType != 24 && pCurrentAdapter->IfType != 131)
629 pCurrentAdapter = pCurrentAdapter->Next;
640 pCurrentAdapter = pAdapters;
641 for(
i = 0; pCurrentAdapter; ++
i)
643 if (pCurrentAdapter->IfType != 24 && pCurrentAdapter->IfType != 131)
645 PIP_ADAPTER_UNICAST_ADDRESS pAddress;
647 PrintRow(0,
FALSE,
L"[%02u]: %s",
i + 1, pCurrentAdapter->Description);
649 if (!(pCurrentAdapter->Flags & 0x0004))
666 pAddress = pCurrentAdapter->FirstUnicastAddress;
667 for (
j = 0; pAddress; ++
j)
672 pAddress = pAddress->Next;
676 pCurrentAdapter = pCurrentAdapter->Next;
#define IDS_MEDIA_DISCONNECTED
DWORD WINAPI GetTimeZoneInformation(LPTIME_ZONE_INFORMATION lpTimeZoneInformation)
INT WINAPI GetPrivateProfileStringW(LPCWSTR section, LPCWSTR entry, LPCWSTR def_val, LPWSTR buffer, UINT len, LPCWSTR filename)
INT WSAAPI WSAAddressToStringW(IN LPSOCKADDR lpsaAddress, IN DWORD dwAddressLength, IN LPWSAPROTOCOL_INFOW lpProtocolInfo, OUT LPWSTR lpszAddressString, IN OUT LPDWORD lpdwAddressStringLength)
static BOOL RegGetDWORD(HKEY hKey, LPCWSTR lpSubKey, LPCWSTR lpValueName, LPDWORD lpData)
ULONGLONG GetSeconds(VOID)
#define ERROR_BUFFER_OVERFLOW
#define IDS_VIRT_MEM_INUSE
#define HKEY_CURRENT_USER
BOOL WINAPI GetComputerNameW(LPWSTR lpBuffer, LPDWORD lpnSize)
BOOL WINAPI GetVersionExW(IN LPOSVERSIONINFOW lpVersionInformation)
SIZE_T GetSMBiosStringW(_In_ PCSTR DmiString, _Out_ PWSTR pBuf, _In_ DWORD cchBuf, _In_ BOOL bTrim)
int WINAPI LoadStringW(_In_opt_ HINSTANCE hInstance, _In_ UINT uID, _Out_writes_to_(cchBufferMax, return+1) LPWSTR lpBuffer, _In_ int cchBufferMax)
UINT WINAPI GetWindowsDirectoryW(OUT LPWSTR lpBuffer, IN UINT uSize)
#define PROCESSOR_ARCHITECTURE_IA64
INT WINAPI GetLocaleInfoW(LCID lcid, LCTYPE lctype, LPWSTR buffer, INT len)
#define IDS_NETWORK_CARDS_FORMAT
LONG WINAPI RegCloseKey(HKEY hKey)
static TAGREF LPCWSTR LPDWORD LPVOID lpBuffer
#define IDS_TOTAL_PHYS_MEM
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint GLint GLint j
#define IDS_NETWORK_CARDS
NET_API_STATUS WINAPI NetGetJoinInformation(_In_ LPCWSTR lpServer, _Out_ LPWSTR *lpNameBuffer, _Out_ PNETSETUP_JOIN_STATUS BufferType)
_CONST_RETURN wchar_t *__cdecl wcschr(_In_z_ const wchar_t *_Str, wchar_t _Ch)
ULONG dwOSVersionInfoSize
#define IDS_AVAIL_PHISICAL_MEM
#define LOCALE_SYSTEM_DEFAULT
static VOID PrintRow(UINT nTitleID, BOOL bIndent, LPWSTR lpFormat,...)
#define IDS_SYS_MANUFACTURER
VOID NTAPI GlobalMemoryStatus(LPMEMORYSTATUS lpBuffer)
#define PROCESSOR_ARCHITECTURE_AMD64
static VOID FormatBytes(LPWSTR lpBuf, unsigned cBytes)
HRESULT WINAPI SHLoadIndirectString(LPCWSTR src, LPWSTR dst, UINT dst_len, void **reserved)
#define PROCESSOR_ARCHITECTURE_INTEL
_Check_return_ _CRTIMP int __cdecl wcscmp(_In_z_ const wchar_t *_Str1, _In_z_ const wchar_t *_Str2)
NET_API_STATUS WINAPI NetApiBufferFree(LPVOID Buffer)
static unsigned RegGetSZ(HKEY hKey, LPCWSTR lpSubKey, LPCWSTR lpValueName, LPWSTR lpBuf, DWORD cchBuf)
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint i
#define IDS_VIRT_MEM_AVAIL
VOID FreeSMBiosData(_In_ PVOID Buffer)
UINT WINAPI GetSystemDirectoryW(OUT LPWSTR lpBuffer, IN UINT uSize)
VOID WINAPI GetSystemInfo(IN LPSYSTEM_INFO lpSystemInfo)
#define IDS_UP_TIME_FORMAT
#define IDS_PROCESSORS_FORMAT
WORD wProcessorArchitecture
#define IDS_OS_BUILD_TYPE
DWORD dwNumberOfProcessors
static VOID FormatDateTime(time_t Time, LPWSTR lpBuf)
LONG WINAPI RegOpenKeyExW(HKEY hKey, LPCWSTR lpSubKey, DWORD ulOptions, REGSAM samDesired, PHKEY phkResult)
PVOID LoadSMBiosData(_Inout_updates_(ID_STRINGS_MAX) PCHAR *Strings)
#define HKEY_CLASSES_ROOT
LONG WINAPI RegEnumKeyExW(_In_ HKEY hKey, _In_ DWORD dwIndex, _Out_ LPWSTR lpName, _Inout_ LPDWORD lpcbName, _Reserved_ LPDWORD lpReserved, _Out_opt_ LPWSTR lpClass, _Inout_opt_ LPDWORD lpcbClass, _Out_opt_ PFILETIME lpftLastWriteTime)
#define IDS_CONNECTION_NAME
static PIP_ADAPTER_ADDRESSES
size_t __cdecl wcslen(_In_z_ const wchar_t *_Str)
enum _NETSETUP_JOIN_STATUS NETSETUP_JOIN_STATUS
unsigned int(__cdecl typeof(jpeg_read_scanlines))(struct jpeg_decompress_struct *
#define HKEY_LOCAL_MACHINE
#define KEY_ENUMERATE_SUB_KEYS