https://git.reactos.org/?p=reactos.git;a=commitdiff;h=3779c2e7707d032c5565c8c0f8a9a5fe16a679f8

commit 3779c2e7707d032c5565c8c0f8a9a5fe16a679f8
Author:     Stanislav Motylkov <[email protected]>
AuthorDate: Sat Sep 29 22:42:58 2018 +0300
Commit:     Hermès BÉLUSCA - MAÏTO <[email protected]>
CommitDate: Mon Oct 8 14:34:11 2018 +0200

    [SYSDM] Add system uptime information
---
 dll/cpl/sysdm/general.c     | 70 +++++++++++++++++++++++++++++++++++++++++++++
 dll/cpl/sysdm/lang/bg-BG.rc |  3 ++
 dll/cpl/sysdm/lang/cs-CZ.rc |  3 ++
 dll/cpl/sysdm/lang/da-DK.rc |  3 ++
 dll/cpl/sysdm/lang/de-DE.rc |  3 ++
 dll/cpl/sysdm/lang/el-GR.rc |  3 ++
 dll/cpl/sysdm/lang/en-US.rc |  3 ++
 dll/cpl/sysdm/lang/es-ES.rc |  3 ++
 dll/cpl/sysdm/lang/fr-FR.rc |  3 ++
 dll/cpl/sysdm/lang/he-IL.rc |  3 ++
 dll/cpl/sysdm/lang/hu-HU.rc |  3 ++
 dll/cpl/sysdm/lang/id-ID.rc |  3 ++
 dll/cpl/sysdm/lang/it-IT.rc |  3 ++
 dll/cpl/sysdm/lang/ja-JP.rc |  3 ++
 dll/cpl/sysdm/lang/nl-NL.rc |  3 ++
 dll/cpl/sysdm/lang/no-NO.rc |  3 ++
 dll/cpl/sysdm/lang/pl-PL.rc |  3 ++
 dll/cpl/sysdm/lang/ro-RO.rc |  3 ++
 dll/cpl/sysdm/lang/ru-RU.rc |  3 ++
 dll/cpl/sysdm/lang/sk-SK.rc |  3 ++
 dll/cpl/sysdm/lang/sq-AL.rc |  3 ++
 dll/cpl/sysdm/lang/sv-SE.rc |  3 ++
 dll/cpl/sysdm/lang/tr-TR.rc |  3 ++
 dll/cpl/sysdm/lang/uk-UA.rc |  3 ++
 dll/cpl/sysdm/lang/zh-CN.rc |  3 ++
 dll/cpl/sysdm/lang/zh-TW.rc |  3 ++
 dll/cpl/sysdm/resource.h    |  3 ++
 27 files changed, 148 insertions(+)

diff --git a/dll/cpl/sysdm/general.c b/dll/cpl/sysdm/general.c
index 032a4b1aaf..555db444d0 100644
--- a/dll/cpl/sysdm/general.c
+++ b/dll/cpl/sysdm/general.c
@@ -551,6 +551,75 @@ static VOID GetSystemVersion(HWND hwnd)
     HeapFree(GetProcessHeap(), 0, pwszStr);
 }
 
+ULONGLONG GetSecondsQPC(VOID)
+{
+    LARGE_INTEGER Counter, Frequency;
+
+    QueryPerformanceCounter(&Counter);
+    QueryPerformanceFrequency(&Frequency);
+
+    return Counter.QuadPart / Frequency.QuadPart;
+}
+
+ULONGLONG GetSeconds(VOID)
+{
+    ULONGLONG (WINAPI * pGetTickCount64)(VOID);
+    ULONGLONG Ticks64;
+    HMODULE hModule = GetModuleHandleW(L"kernel32.dll");
+
+    pGetTickCount64 = (PVOID)GetProcAddress(hModule, "GetTickCount64");
+    if (pGetTickCount64)
+    {
+        return pGetTickCount64() / 1000;
+    }
+
+    hModule = LoadLibraryW(L"kernel32_vista.dll");
+
+    if (!hModule)
+    {
+        return GetSecondsQPC();
+    }
+
+    pGetTickCount64 = (PVOID)GetProcAddress(hModule, "GetTickCount64");
+
+    if (pGetTickCount64)
+    {
+        Ticks64 = pGetTickCount64() / 1000;
+    }
+    else
+    {
+        Ticks64 = GetSecondsQPC();
+    }
+
+    FreeLibrary(hModule);
+    return Ticks64;
+}
+
+VOID GetSystemUptime(HWND hwnd)
+{
+    HWND hRosUptime;
+    WCHAR szBuf[64], szStr[64];
+    ULONG cSeconds;
+
+    hRosUptime = GetDlgItem(hwnd, IDC_UPTIME);
+    if (!hRosUptime)
+    {
+        return;
+    }
+    if (!LoadStringW(hApplet, IDS_UPTIME_FORMAT, szStr, _countof(szStr)))
+    {
+        return;
+    }
+    cSeconds = GetSeconds();
+    StringCchPrintfW(szBuf, _countof(szBuf), szStr,
+                     cSeconds / (60*60*24),
+                     (cSeconds / (60*60)) % 24,
+                     (cSeconds / 60) % 60,
+                     cSeconds % 60);
+
+    SetWindowTextW(hRosUptime, szBuf);
+}
+
 /* Property page dialog callback */
 INT_PTR CALLBACK GeneralPageProc(HWND hwndDlg, UINT uMsg, WPARAM wParam, 
LPARAM lParam)
 {
@@ -571,6 +640,7 @@ INT_PTR CALLBACK GeneralPageProc(HWND hwndDlg, UINT uMsg, 
WPARAM wParam, LPARAM
             SetWindowLongPtr(GetDlgItem(hwndDlg, IDC_ROSIMG), GWLP_WNDPROC, 
(LONG_PTR)RosImageProc);
             GetSystemInformation(hwndDlg);
             GetSystemVersion(hwndDlg);
+            GetSystemUptime(hwndDlg);
             break;
 
         case WM_DESTROY:
diff --git a/dll/cpl/sysdm/lang/bg-BG.rc b/dll/cpl/sysdm/lang/bg-BG.rc
index e69cd2f66c..96db6e7343 100644
--- a/dll/cpl/sysdm/lang/bg-BG.rc
+++ b/dll/cpl/sysdm/lang/bg-BG.rc
@@ -10,6 +10,8 @@ BEGIN
     LTEXT REACTOS_STR_PRODUCT_NAME, IDC_STATIC, 10, 128, 116, 9
     LTEXT "Версия:", IDC_ROSVERSION, 10, 137, 131, 9
     LTEXT REACTOS_STR_PRODUCT_BUILD, IDC_STATIC, 10, 146, 110, 9
+    LTEXT "System Uptime:", IDC_STATIC, 4, 158, 86, 9
+    LTEXT "", IDC_UPTIME, 10, 170, 116, 9
     LTEXT "Машина:", IDC_STATIC, 124, 116, 34, 9
     LTEXT "", IDC_MACHINELINE1, 130, 128, 118, 9
     LTEXT "", IDC_MACHINELINE2, 130, 137, 118, 9
@@ -281,6 +283,7 @@ BEGIN
     IDS_PETABYTE "ПБ памет"
     IDS_MEGAHERTZ "MHz"
     IDS_GIGAHERTZ "GHz"
+    IDS_UPTIME_FORMAT "%u Days, %02u:%02u:%02u"
     IDS_VARIABLE "Променлива"
     IDS_VALUE "Стойност"
     IDS_NO_DUMP "(Няма)"
diff --git a/dll/cpl/sysdm/lang/cs-CZ.rc b/dll/cpl/sysdm/lang/cs-CZ.rc
index 09a89ce993..211d769dd6 100644
--- a/dll/cpl/sysdm/lang/cs-CZ.rc
+++ b/dll/cpl/sysdm/lang/cs-CZ.rc
@@ -15,6 +15,8 @@ BEGIN
     LTEXT REACTOS_STR_PRODUCT_NAME, IDC_STATIC, 10, 128, 116, 9
     LTEXT "Verze", IDC_ROSVERSION, 10, 137, 116, 9
     LTEXT REACTOS_STR_PRODUCT_BUILD, IDC_STATIC, 10, 146, 110, 9
+    LTEXT "System Uptime:", IDC_STATIC, 4, 158, 86, 9
+    LTEXT "", IDC_UPTIME, 10, 170, 116, 9
     LTEXT "Počítač:", IDC_STATIC, 124, 116, 34, 9
     LTEXT "", IDC_MACHINELINE1, 130, 128, 118, 9
     LTEXT "", IDC_MACHINELINE2, 130, 137, 118, 9
@@ -286,6 +288,7 @@ BEGIN
     IDS_PETABYTE "PB RAM"
     IDS_MEGAHERTZ "MHz"
     IDS_GIGAHERTZ "GHz"
+    IDS_UPTIME_FORMAT "%u Days, %02u:%02u:%02u"
     IDS_VARIABLE "Proměnná"
     IDS_VALUE "Hodnota"
     IDS_NO_DUMP "(Není)"
diff --git a/dll/cpl/sysdm/lang/da-DK.rc b/dll/cpl/sysdm/lang/da-DK.rc
index 5f782255e8..d660f446ed 100644
--- a/dll/cpl/sysdm/lang/da-DK.rc
+++ b/dll/cpl/sysdm/lang/da-DK.rc
@@ -10,6 +10,8 @@ BEGIN
     LTEXT REACTOS_STR_PRODUCT_NAME, IDC_STATIC, 10, 128, 116, 9
     LTEXT "Version", IDC_ROSVERSION, 10, 137, 116, 9
     LTEXT REACTOS_STR_PRODUCT_BUILD, IDC_STATIC, 10, 146, 110, 9
+    LTEXT "System Uptime:", IDC_STATIC, 4, 158, 86, 9
+    LTEXT "", IDC_UPTIME, 10, 170, 116, 9
     LTEXT "Machine:", IDC_STATIC, 124, 116, 34, 9
     LTEXT "", IDC_MACHINELINE1, 130, 128, 118, 9
     LTEXT "", IDC_MACHINELINE2, 130, 137, 118, 9
@@ -281,6 +283,7 @@ BEGIN
     IDS_PETABYTE "PB of RAM"
     IDS_MEGAHERTZ "MHz"
     IDS_GIGAHERTZ "GHz"
+    IDS_UPTIME_FORMAT "%u Days, %02u:%02u:%02u"
     IDS_VARIABLE "Variable"
     IDS_VALUE "Value"
     IDS_NO_DUMP "(None)"
diff --git a/dll/cpl/sysdm/lang/de-DE.rc b/dll/cpl/sysdm/lang/de-DE.rc
index eb70c4f565..db8e9ba9b8 100644
--- a/dll/cpl/sysdm/lang/de-DE.rc
+++ b/dll/cpl/sysdm/lang/de-DE.rc
@@ -19,6 +19,8 @@ BEGIN
     LTEXT REACTOS_STR_PRODUCT_NAME, IDC_STATIC, 10, 128, 116, 9
     LTEXT "Version", IDC_ROSVERSION, 10, 137, 116, 9
     LTEXT REACTOS_STR_PRODUCT_BUILD, IDC_STATIC, 10, 146, 110, 9
+    LTEXT "System Uptime:", IDC_STATIC, 4, 158, 86, 9
+    LTEXT "", IDC_UPTIME, 10, 170, 116, 9
     LTEXT "Computer:", IDC_STATIC, 124, 116, 34, 9
     LTEXT "", IDC_MACHINELINE1, 130, 128, 118, 9
     LTEXT "", IDC_MACHINELINE2, 130, 137, 118, 9
@@ -290,6 +292,7 @@ BEGIN
     IDS_PETABYTE "PB RAM"
     IDS_MEGAHERTZ "MHz"
     IDS_GIGAHERTZ "GHz"
+    IDS_UPTIME_FORMAT "%u Days, %02u:%02u:%02u"
     IDS_VARIABLE "Variable"
     IDS_VALUE "Wert"
     IDS_NO_DUMP "(Keine)"
diff --git a/dll/cpl/sysdm/lang/el-GR.rc b/dll/cpl/sysdm/lang/el-GR.rc
index bb758e9e8f..74259359d0 100644
--- a/dll/cpl/sysdm/lang/el-GR.rc
+++ b/dll/cpl/sysdm/lang/el-GR.rc
@@ -10,6 +10,8 @@ BEGIN
     LTEXT REACTOS_STR_PRODUCT_NAME, IDC_STATIC, 10, 128, 116, 9
     LTEXT "Έκδοση", IDC_ROSVERSION, 10, 137, 116, 9
     LTEXT REACTOS_STR_PRODUCT_BUILD, IDC_STATIC, 10, 146, 110, 9
+    LTEXT "System Uptime:", IDC_STATIC, 4, 158, 86, 9
+    LTEXT "", IDC_UPTIME, 10, 170, 116, 9
     LTEXT "Υπολογιστής:", IDC_STATIC, 124, 116, 44, 9
     LTEXT "", IDC_MACHINELINE1, 130, 128, 118, 9
     LTEXT "", IDC_MACHINELINE2, 130, 137, 118, 9
@@ -281,6 +283,7 @@ BEGIN
     IDS_PETABYTE "PB μνήμης RAM"
     IDS_MEGAHERTZ "MHz"
     IDS_GIGAHERTZ "GHz"
+    IDS_UPTIME_FORMAT "%u Days, %02u:%02u:%02u"
     IDS_VARIABLE "Μεταβλητή"
     IDS_VALUE "Τιμή"
     IDS_NO_DUMP "(Κανένα)"
diff --git a/dll/cpl/sysdm/lang/en-US.rc b/dll/cpl/sysdm/lang/en-US.rc
index 83b5e42aee..ef2df155fb 100644
--- a/dll/cpl/sysdm/lang/en-US.rc
+++ b/dll/cpl/sysdm/lang/en-US.rc
@@ -10,6 +10,8 @@ BEGIN
     LTEXT REACTOS_STR_PRODUCT_NAME, IDC_STATIC, 10, 128, 116, 9
     LTEXT "Version", IDC_ROSVERSION, 10, 137, 116, 9
     LTEXT REACTOS_STR_PRODUCT_BUILD, IDC_STATIC, 10, 146, 110, 9
+    LTEXT "System Uptime:", IDC_STATIC, 4, 158, 86, 9
+    LTEXT "", IDC_UPTIME, 10, 170, 116, 9
     LTEXT "Machine:", IDC_STATIC, 124, 116, 34, 9
     LTEXT "", IDC_MACHINELINE1, 130, 128, 118, 9
     LTEXT "", IDC_MACHINELINE2, 130, 137, 118, 9
@@ -281,6 +283,7 @@ BEGIN
     IDS_PETABYTE "PB of RAM"
     IDS_MEGAHERTZ "MHz"
     IDS_GIGAHERTZ "GHz"
+    IDS_UPTIME_FORMAT "%u Days, %02u:%02u:%02u"
     IDS_VARIABLE "Variable"
     IDS_VALUE "Value"
     IDS_NO_DUMP "(None)"
diff --git a/dll/cpl/sysdm/lang/es-ES.rc b/dll/cpl/sysdm/lang/es-ES.rc
index 7c1e82cdd2..a55bcd75b3 100644
--- a/dll/cpl/sysdm/lang/es-ES.rc
+++ b/dll/cpl/sysdm/lang/es-ES.rc
@@ -12,6 +12,8 @@ BEGIN
     LTEXT REACTOS_STR_PRODUCT_NAME, IDC_STATIC, 10, 128, 116, 9
     LTEXT "Versión", IDC_ROSVERSION, 10, 137, 116, 9
     LTEXT REACTOS_STR_PRODUCT_BUILD, IDC_STATIC, 10, 146, 110, 9
+    LTEXT "System Uptime:", IDC_STATIC, 4, 158, 86, 9
+    LTEXT "", IDC_UPTIME, 10, 170, 116, 9
     LTEXT "Equipo:", IDC_STATIC, 124, 116, 34, 9
     LTEXT "", IDC_MACHINELINE1, 130, 128, 118, 9
     LTEXT "", IDC_MACHINELINE2, 130, 137, 118, 9
@@ -283,6 +285,7 @@ BEGIN
     IDS_PETABYTE "PB de RAM"
     IDS_MEGAHERTZ "MHz"
     IDS_GIGAHERTZ "GHz"
+    IDS_UPTIME_FORMAT "%u Days, %02u:%02u:%02u"
     IDS_VARIABLE "Variable"
     IDS_VALUE "Valor"
     IDS_NO_DUMP "(Ninguno)"
diff --git a/dll/cpl/sysdm/lang/fr-FR.rc b/dll/cpl/sysdm/lang/fr-FR.rc
index e5112a79f4..4c25ba6d5b 100644
--- a/dll/cpl/sysdm/lang/fr-FR.rc
+++ b/dll/cpl/sysdm/lang/fr-FR.rc
@@ -10,6 +10,8 @@ BEGIN
     LTEXT REACTOS_STR_PRODUCT_NAME, IDC_STATIC, 10, 128, 116, 9
     LTEXT "Version", IDC_ROSVERSION, 10, 137, 116, 9
     LTEXT REACTOS_STR_PRODUCT_BUILD, IDC_STATIC, 10, 146, 110, 9
+    LTEXT "System Uptime:", IDC_STATIC, 4, 158, 86, 9
+    LTEXT "", IDC_UPTIME, 10, 170, 116, 9
     LTEXT "Machine:", IDC_STATIC, 124, 116, 34, 9
     LTEXT "", IDC_MACHINELINE1, 130, 128, 118, 9
     LTEXT "", IDC_MACHINELINE2, 130, 137, 118, 9
@@ -281,6 +283,7 @@ BEGIN
     IDS_PETABYTE "Po de RAM"
     IDS_MEGAHERTZ "MHz"
     IDS_GIGAHERTZ "GHz"
+    IDS_UPTIME_FORMAT "%u Days, %02u:%02u:%02u"
     IDS_VARIABLE "Variable"
     IDS_VALUE "Valeur"
     IDS_NO_DUMP "(Aucun)"
diff --git a/dll/cpl/sysdm/lang/he-IL.rc b/dll/cpl/sysdm/lang/he-IL.rc
index e815affb3a..6a41211008 100644
--- a/dll/cpl/sysdm/lang/he-IL.rc
+++ b/dll/cpl/sysdm/lang/he-IL.rc
@@ -12,6 +12,8 @@ BEGIN
     LTEXT REACTOS_STR_PRODUCT_NAME, IDC_STATIC, 10, 128, 116, 9
     LTEXT "גרסה", IDC_ROSVERSION, 10, 137, 116, 9
     LTEXT REACTOS_STR_PRODUCT_BUILD, IDC_STATIC, 10, 146, 110, 9
+    LTEXT "System Uptime:", IDC_STATIC, 4, 158, 86, 9
+    LTEXT "", IDC_UPTIME, 10, 170, 116, 9
     LTEXT "מכונה:", IDC_STATIC, 124, 116, 34, 9
     LTEXT "", IDC_MACHINELINE1, 130, 128, 118, 9
     LTEXT "", IDC_MACHINELINE2, 130, 137, 118, 9
@@ -283,6 +285,7 @@ BEGIN
     IDS_PETABYTE "PB זיכרון פיזי"
     IDS_MEGAHERTZ "MHz"
     IDS_GIGAHERTZ "GHz"
+    IDS_UPTIME_FORMAT "%u Days, %02u:%02u:%02u"
     IDS_VARIABLE "משתנה"
     IDS_VALUE "ערך"
     IDS_NO_DUMP "(ללא)"
diff --git a/dll/cpl/sysdm/lang/hu-HU.rc b/dll/cpl/sysdm/lang/hu-HU.rc
index 591c7ec1e7..ee43a6bb9b 100644
--- a/dll/cpl/sysdm/lang/hu-HU.rc
+++ b/dll/cpl/sysdm/lang/hu-HU.rc
@@ -12,6 +12,8 @@ BEGIN
     LTEXT REACTOS_STR_PRODUCT_NAME, IDC_STATIC, 10, 128, 116, 9
     LTEXT "Verzió", IDC_ROSVERSION, 10, 137, 116, 9
     LTEXT REACTOS_STR_PRODUCT_BUILD, IDC_STATIC, 10, 146, 110, 9
+    LTEXT "System Uptime:", IDC_STATIC, 4, 158, 86, 9
+    LTEXT "", IDC_UPTIME, 10, 170, 116, 9
     LTEXT "Számítógép:", IDC_STATIC, 124, 116, 34, 9
     LTEXT "", IDC_MACHINELINE1, 130, 128, 118, 9
     LTEXT "", IDC_MACHINELINE2, 130, 137, 118, 9
@@ -283,6 +285,7 @@ BEGIN
     IDS_PETABYTE "PB of RAM"
     IDS_MEGAHERTZ "MHz"
     IDS_GIGAHERTZ "GHz"
+    IDS_UPTIME_FORMAT "%u Days, %02u:%02u:%02u"
     IDS_VARIABLE "Variable"
     IDS_VALUE "Value"
     IDS_NO_DUMP "(None)"
diff --git a/dll/cpl/sysdm/lang/id-ID.rc b/dll/cpl/sysdm/lang/id-ID.rc
index 3e1bb63e5a..c8b0fe9d40 100644
--- a/dll/cpl/sysdm/lang/id-ID.rc
+++ b/dll/cpl/sysdm/lang/id-ID.rc
@@ -10,6 +10,8 @@ BEGIN
     LTEXT REACTOS_STR_PRODUCT_NAME, IDC_STATIC, 10, 128, 116, 9
     LTEXT "Versi", IDC_ROSVERSION, 10, 137, 116, 9
     LTEXT REACTOS_STR_PRODUCT_BUILD, IDC_STATIC, 10, 146, 110, 9
+    LTEXT "System Uptime:", IDC_STATIC, 4, 158, 86, 9
+    LTEXT "", IDC_UPTIME, 10, 170, 116, 9
     LTEXT "Mesin:", IDC_STATIC, 124, 116, 34, 9
     LTEXT "", IDC_MACHINELINE1, 130, 128, 118, 9
     LTEXT "", IDC_MACHINELINE2, 130, 137, 118, 9
@@ -281,6 +283,7 @@ BEGIN
     IDS_PETABYTE "PB RAM"
     IDS_MEGAHERTZ "MHz"
     IDS_GIGAHERTZ "GHz"
+    IDS_UPTIME_FORMAT "%u Days, %02u:%02u:%02u"
     IDS_VARIABLE "Variabel"
     IDS_VALUE "Nilai"
     IDS_NO_DUMP "(None)"
diff --git a/dll/cpl/sysdm/lang/it-IT.rc b/dll/cpl/sysdm/lang/it-IT.rc
index 7d2b742d06..76d2154ce0 100644
--- a/dll/cpl/sysdm/lang/it-IT.rc
+++ b/dll/cpl/sysdm/lang/it-IT.rc
@@ -10,6 +10,8 @@ BEGIN
     LTEXT REACTOS_STR_PRODUCT_NAME, IDC_STATIC, 10, 128, 116, 9
     LTEXT "Versione", IDC_ROSVERSION, 10, 137, 116, 9
     LTEXT REACTOS_STR_PRODUCT_BUILD, IDC_STATIC, 10, 146, 110, 9
+    LTEXT "Tempo di Avvio Sistema:", IDC_STATIC, 4, 158, 86, 9
+    LTEXT "", IDC_UPTIME, 10, 170, 116, 9
     LTEXT "Macchina:", IDC_STATIC, 124, 116, 34, 9
     LTEXT "", IDC_MACHINELINE1, 130, 128, 118, 9
     LTEXT "", IDC_MACHINELINE2, 130, 137, 118, 9
@@ -281,6 +283,7 @@ BEGIN
     IDS_PETABYTE "PB di RAM"
     IDS_MEGAHERTZ "MHz"
     IDS_GIGAHERTZ "GHz"
+    IDS_UPTIME_FORMAT "%u Giorno, %02u:%02u:%02u"
     IDS_VARIABLE "Variabile"
     IDS_VALUE "Valore"
     IDS_NO_DUMP "(None)"
diff --git a/dll/cpl/sysdm/lang/ja-JP.rc b/dll/cpl/sysdm/lang/ja-JP.rc
index 7bc405ef37..41149b8be0 100644
--- a/dll/cpl/sysdm/lang/ja-JP.rc
+++ b/dll/cpl/sysdm/lang/ja-JP.rc
@@ -10,6 +10,8 @@ BEGIN
     LTEXT REACTOS_STR_PRODUCT_NAME, IDC_STATIC, 10, 128, 116, 9
     LTEXT "Version", IDC_ROSVERSION, 10, 137, 116, 9
     LTEXT REACTOS_STR_PRODUCT_BUILD, IDC_STATIC, 10, 146, 110, 9
+    LTEXT "System Uptime:", IDC_STATIC, 4, 158, 86, 9
+    LTEXT "", IDC_UPTIME, 10, 170, 116, 9
     LTEXT "マシン:", IDC_STATIC, 124, 116, 34, 9
     LTEXT "", IDC_MACHINELINE1, 130, 128, 118, 9
     LTEXT "", IDC_MACHINELINE2, 130, 137, 118, 9
@@ -281,6 +283,7 @@ BEGIN
     IDS_PETABYTE "PB RAM"
     IDS_MEGAHERTZ "MHz"
     IDS_GIGAHERTZ "GHz"
+    IDS_UPTIME_FORMAT "%u Days, %02u:%02u:%02u"
     IDS_VARIABLE "可変"
     IDS_VALUE "値"
     IDS_NO_DUMP "(なし)"
diff --git a/dll/cpl/sysdm/lang/nl-NL.rc b/dll/cpl/sysdm/lang/nl-NL.rc
index c70cedcf73..17f3564649 100644
--- a/dll/cpl/sysdm/lang/nl-NL.rc
+++ b/dll/cpl/sysdm/lang/nl-NL.rc
@@ -10,6 +10,8 @@ BEGIN
     LTEXT REACTOS_STR_PRODUCT_NAME, IDC_STATIC, 10, 128, 116, 9
     LTEXT "Versie", IDC_ROSVERSION, 10, 137, 116, 9
     LTEXT REACTOS_STR_PRODUCT_BUILD, IDC_STATIC, 10, 146, 110, 9
+    LTEXT "System Uptime:", IDC_STATIC, 4, 158, 86, 9
+    LTEXT "", IDC_UPTIME, 10, 170, 116, 9
     LTEXT "Machine:", IDC_STATIC, 124, 116, 34, 9
     LTEXT "", IDC_MACHINELINE1, 130, 128, 118, 9
     LTEXT "", IDC_MACHINELINE2, 130, 137, 118, 9
@@ -281,6 +283,7 @@ BEGIN
     IDS_PETABYTE "PB of RAM"
     IDS_MEGAHERTZ "MHz"
     IDS_GIGAHERTZ "GHz"
+    IDS_UPTIME_FORMAT "%u Days, %02u:%02u:%02u"
     IDS_VARIABLE "Variable"
     IDS_VALUE "Value"
     IDS_NO_DUMP "(None)"
diff --git a/dll/cpl/sysdm/lang/no-NO.rc b/dll/cpl/sysdm/lang/no-NO.rc
index 80ae8816c6..d34b317747 100644
--- a/dll/cpl/sysdm/lang/no-NO.rc
+++ b/dll/cpl/sysdm/lang/no-NO.rc
@@ -10,6 +10,8 @@ BEGIN
     LTEXT REACTOS_STR_PRODUCT_NAME, IDC_STATIC, 10, 128, 116, 9
     LTEXT "Versjon", IDC_ROSVERSION, 10, 137, 116, 9
     LTEXT REACTOS_STR_PRODUCT_BUILD, IDC_STATIC, 10, 146, 110, 9
+    LTEXT "System Uptime:", IDC_STATIC, 4, 158, 86, 9
+    LTEXT "", IDC_UPTIME, 10, 170, 116, 9
     LTEXT "Maskin:", IDC_STATIC, 124, 116, 34, 9
     LTEXT "", IDC_MACHINELINE1, 130, 128, 118, 9
     LTEXT "", IDC_MACHINELINE2, 130, 137, 118, 9
@@ -281,6 +283,7 @@ BEGIN
     IDS_PETABYTE "PB Systemminne"
     IDS_MEGAHERTZ "MHz"
     IDS_GIGAHERTZ "GHz"
+    IDS_UPTIME_FORMAT "%u Days, %02u:%02u:%02u"
     IDS_VARIABLE "Variabel"
     IDS_VALUE "Verdi"
     IDS_NO_DUMP "(Ingen)"
diff --git a/dll/cpl/sysdm/lang/pl-PL.rc b/dll/cpl/sysdm/lang/pl-PL.rc
index eaec406c73..e355aed3c6 100644
--- a/dll/cpl/sysdm/lang/pl-PL.rc
+++ b/dll/cpl/sysdm/lang/pl-PL.rc
@@ -19,6 +19,8 @@ BEGIN
     LTEXT REACTOS_STR_PRODUCT_NAME, IDC_STATIC, 10, 128, 116, 9
     LTEXT "Wersja", IDC_ROSVERSION, 10, 137, 116, 9
     LTEXT REACTOS_STR_PRODUCT_BUILD, IDC_STATIC, 10, 146, 110, 9
+    LTEXT "Czas pracy systemu:", IDC_STATIC, 4, 158, 86, 9
+    LTEXT "", IDC_UPTIME, 10, 170, 116, 9
     LTEXT "Komputer:", IDC_STATIC, 124, 116, 34, 9
     LTEXT "", IDC_MACHINELINE1, 130, 128, 118, 9
     LTEXT "", IDC_MACHINELINE2, 130, 137, 118, 9
@@ -290,6 +292,7 @@ BEGIN
     IDS_PETABYTE "PB RAM"
     IDS_MEGAHERTZ "MHz"
     IDS_GIGAHERTZ "GHz"
+    IDS_UPTIME_FORMAT "%u dni, %02u:%02u:%02u"
     IDS_VARIABLE "Zmienna"
     IDS_VALUE "Wartość"
     IDS_NO_DUMP "(Brak)"
diff --git a/dll/cpl/sysdm/lang/ro-RO.rc b/dll/cpl/sysdm/lang/ro-RO.rc
index f9160e6d16..376f8abc82 100644
--- a/dll/cpl/sysdm/lang/ro-RO.rc
+++ b/dll/cpl/sysdm/lang/ro-RO.rc
@@ -19,6 +19,8 @@ BEGIN
     LTEXT REACTOS_STR_PRODUCT_NAME, IDC_STATIC, 10, 128, 116, 9
     LTEXT "Versiune", IDC_STATIC, 10, 153, 30, 9
     LTEXT REACTOS_STR_PRODUCT_BUILD, IDC_STATIC, 10, 146, 110, 9
+    LTEXT "Timp de operare:", IDC_STATIC, 4, 158, 86, 9
+    LTEXT "", IDC_UPTIME, 10, 170, 116, 9
     LTEXT "Calculator:", IDC_STATIC, 124, 116, 34, 9
     LTEXT "", IDC_MACHINELINE1, 130, 128, 118, 9
     LTEXT "", IDC_MACHINELINE2, 130, 137, 118, 9
@@ -290,6 +292,7 @@ BEGIN
     IDS_PETABYTE "Po de memorie"
     IDS_MEGAHERTZ "MHz"
     IDS_GIGAHERTZ "GHz"
+    IDS_UPTIME_FORMAT "%u zile, %02u:%02u:%02u"
     IDS_VARIABLE "Variabilă"
     IDS_VALUE "Valoare"
     IDS_NO_DUMP "(Fără fișier de depanare)"
diff --git a/dll/cpl/sysdm/lang/ru-RU.rc b/dll/cpl/sysdm/lang/ru-RU.rc
index fc7bfe6a26..4e5c6ee52f 100644
--- a/dll/cpl/sysdm/lang/ru-RU.rc
+++ b/dll/cpl/sysdm/lang/ru-RU.rc
@@ -10,6 +10,8 @@ BEGIN
     LTEXT REACTOS_STR_PRODUCT_NAME, IDC_STATIC, 10, 128, 116, 9
     LTEXT "Версия", IDC_ROSVERSION, 10, 137, 116, 9
     LTEXT REACTOS_STR_PRODUCT_BUILD, IDC_STATIC, 10, 146, 110, 9
+    LTEXT "Время работы системы:", IDC_STATIC, 4, 158, 86, 9
+    LTEXT "", IDC_UPTIME, 10, 170, 116, 9
     LTEXT "Компьютер:", IDC_STATIC, 124, 116, 40, 9
     LTEXT "", IDC_MACHINELINE1, 130, 128, 118, 9
     LTEXT "", IDC_MACHINELINE2, 130, 137, 118, 9
@@ -281,6 +283,7 @@ BEGIN
     IDS_PETABYTE "Пб ОЗУ"
     IDS_MEGAHERTZ "МГц"
     IDS_GIGAHERTZ "ГГц"
+    IDS_UPTIME_FORMAT "%u дней, %02u:%02u:%02u"
     IDS_VARIABLE "Переменная"
     IDS_VALUE "Значение"
     IDS_NO_DUMP "(Нет)"
diff --git a/dll/cpl/sysdm/lang/sk-SK.rc b/dll/cpl/sysdm/lang/sk-SK.rc
index fcb33ae3ea..0422408d73 100644
--- a/dll/cpl/sysdm/lang/sk-SK.rc
+++ b/dll/cpl/sysdm/lang/sk-SK.rc
@@ -18,6 +18,8 @@ BEGIN
     LTEXT REACTOS_STR_PRODUCT_NAME, IDC_STATIC, 10, 128, 116, 9
     LTEXT "Verzia", IDC_ROSVERSION, 10, 137, 116, 9
     LTEXT REACTOS_STR_PRODUCT_BUILD, IDC_STATIC, 10, 146, 110, 9
+    LTEXT "System Uptime:", IDC_STATIC, 4, 158, 86, 9
+    LTEXT "", IDC_UPTIME, 10, 170, 116, 9
     LTEXT "Počítač:", IDC_STATIC, 124, 116, 34, 9
     LTEXT "", IDC_MACHINELINE1, 130, 128, 118, 9
     LTEXT "", IDC_MACHINELINE2, 130, 137, 118, 9
@@ -289,6 +291,7 @@ BEGIN
     IDS_PETABYTE "PB pamäte RAM"
     IDS_MEGAHERTZ "MHz"
     IDS_GIGAHERTZ "GHz"
+    IDS_UPTIME_FORMAT "%u Days, %02u:%02u:%02u"
     IDS_VARIABLE "Premenná"
     IDS_VALUE "Hodnota"
     IDS_NO_DUMP "(Žiadne)"
diff --git a/dll/cpl/sysdm/lang/sq-AL.rc b/dll/cpl/sysdm/lang/sq-AL.rc
index 2591773f82..6cc6143829 100644
--- a/dll/cpl/sysdm/lang/sq-AL.rc
+++ b/dll/cpl/sysdm/lang/sq-AL.rc
@@ -10,6 +10,8 @@ BEGIN
     LTEXT REACTOS_STR_PRODUCT_NAME, IDC_STATIC, 10, 128, 116, 9
     LTEXT "Versioni", IDC_ROSVERSION, 10, 137, 116, 9
     LTEXT REACTOS_STR_PRODUCT_BUILD, IDC_STATIC, 10, 146, 110, 9
+    LTEXT "System Uptime:", IDC_STATIC, 4, 158, 86, 9
+    LTEXT "", IDC_UPTIME, 10, 170, 116, 9
     LTEXT "Makinë:", IDC_STATIC, 124, 116, 34, 9
     LTEXT "", IDC_MACHINELINE1, 130, 128, 118, 9
     LTEXT "", IDC_MACHINELINE2, 130, 137, 118, 9
@@ -281,6 +283,7 @@ BEGIN
     IDS_PETABYTE "PB e RAM"
     IDS_MEGAHERTZ "MHz"
     IDS_GIGAHERTZ "GHz"
+    IDS_UPTIME_FORMAT "%u Days, %02u:%02u:%02u"
     IDS_VARIABLE "Variablë"
     IDS_VALUE "Vlera"
     IDS_NO_DUMP "(Asnjë)"
diff --git a/dll/cpl/sysdm/lang/sv-SE.rc b/dll/cpl/sysdm/lang/sv-SE.rc
index 0ae2afcefe..546a589377 100644
--- a/dll/cpl/sysdm/lang/sv-SE.rc
+++ b/dll/cpl/sysdm/lang/sv-SE.rc
@@ -12,6 +12,8 @@ BEGIN
     LTEXT REACTOS_STR_PRODUCT_NAME, IDC_STATIC, 10, 128, 116, 9
     LTEXT "Version", IDC_ROSVERSION, 10, 137, 116, 9
     LTEXT REACTOS_STR_PRODUCT_BUILD, IDC_STATIC, 10, 146, 110, 9
+    LTEXT "System Uptime:", IDC_STATIC, 4, 158, 86, 9
+    LTEXT "", IDC_UPTIME, 10, 170, 116, 9
     LTEXT "Dator:", IDC_STATIC, 124, 116, 34, 9
     LTEXT "", IDC_MACHINELINE1, 130, 128, 118, 9
     LTEXT "", IDC_MACHINELINE2, 130, 137, 118, 9
@@ -283,6 +285,7 @@ BEGIN
     IDS_PETABYTE "PB RAM"
     IDS_MEGAHERTZ "MHz"
     IDS_GIGAHERTZ "GHz"
+    IDS_UPTIME_FORMAT "%u Days, %02u:%02u:%02u"
     IDS_VARIABLE "Variabel"
     IDS_VALUE "Värde"
     IDS_NO_DUMP "(None)"
diff --git a/dll/cpl/sysdm/lang/tr-TR.rc b/dll/cpl/sysdm/lang/tr-TR.rc
index fc38a8c6c0..f5b2a45c5e 100644
--- a/dll/cpl/sysdm/lang/tr-TR.rc
+++ b/dll/cpl/sysdm/lang/tr-TR.rc
@@ -12,6 +12,8 @@ BEGIN
     LTEXT REACTOS_STR_PRODUCT_NAME, IDC_STATIC, 10, 128, 116, 9
     LTEXT "Sürüm:", IDC_ROSVERSION, 10, 137, 116, 9
     LTEXT REACTOS_STR_PRODUCT_BUILD, IDC_STATIC, 10, 146, 110, 9
+    LTEXT "System Uptime:", IDC_STATIC, 4, 158, 86, 9
+    LTEXT "", IDC_UPTIME, 10, 170, 116, 9
     LTEXT "Makine:", IDC_STATIC, 124, 116, 34, 9
     LTEXT "", IDC_MACHINELINE1, 130, 128, 118, 9
     LTEXT "", IDC_MACHINELINE2, 130, 137, 118, 9
@@ -283,6 +285,7 @@ BEGIN
     IDS_PETABYTE "PB Bellek"
     IDS_MEGAHERTZ "MHz"
     IDS_GIGAHERTZ "GHz"
+    IDS_UPTIME_FORMAT "%u Days, %02u:%02u:%02u"
     IDS_VARIABLE "Değişken"
     IDS_VALUE "Değer"
     IDS_NO_DUMP "(Yok)"
diff --git a/dll/cpl/sysdm/lang/uk-UA.rc b/dll/cpl/sysdm/lang/uk-UA.rc
index 4051101889..b567946151 100644
--- a/dll/cpl/sysdm/lang/uk-UA.rc
+++ b/dll/cpl/sysdm/lang/uk-UA.rc
@@ -18,6 +18,8 @@ BEGIN
     LTEXT REACTOS_STR_PRODUCT_NAME, IDC_STATIC, 10, 128, 116, 9
     LTEXT "Версія", IDC_ROSVERSION, 10, 137, 116, 9
     LTEXT REACTOS_STR_PRODUCT_BUILD, IDC_STATIC, 10, 146, 110, 9
+    LTEXT "System Uptime:", IDC_STATIC, 4, 158, 86, 9
+    LTEXT "", IDC_UPTIME, 10, 170, 116, 9
     LTEXT "Комп'ютер:", IDC_STATIC, 124, 132, 36, 9
     LTEXT "", IDC_MACHINELINE1, 130, 128, 118, 9
     LTEXT "", IDC_MACHINELINE2, 130, 137, 118, 9
@@ -289,6 +291,7 @@ BEGIN
     IDS_PETABYTE "Пб ОЗП"
     IDS_MEGAHERTZ "МГц"
     IDS_GIGAHERTZ "ГГц"
+    IDS_UPTIME_FORMAT "%u Days, %02u:%02u:%02u"
     IDS_VARIABLE "Змінна"
     IDS_VALUE "Значення"
     IDS_NO_DUMP "(Немає)"
diff --git a/dll/cpl/sysdm/lang/zh-CN.rc b/dll/cpl/sysdm/lang/zh-CN.rc
index af07acbd7d..b47fbc501d 100644
--- a/dll/cpl/sysdm/lang/zh-CN.rc
+++ b/dll/cpl/sysdm/lang/zh-CN.rc
@@ -13,6 +13,8 @@ BEGIN
     LTEXT REACTOS_STR_PRODUCT_NAME, IDC_STATIC, 10, 128, 116, 9
     LTEXT "版本", IDC_ROSVERSION, 10, 137, 116, 9
     LTEXT REACTOS_STR_PRODUCT_BUILD, IDC_STATIC, 10, 146, 110, 9
+    LTEXT "System Uptime:", IDC_STATIC, 4, 158, 86, 9
+    LTEXT "", IDC_UPTIME, 10, 170, 116, 9
     LTEXT "计算机:", IDC_STATIC, 124, 116, 34, 9
     LTEXT "", IDC_MACHINELINE1, 130, 128, 118, 9
     LTEXT "", IDC_MACHINELINE2, 130, 137, 118, 9
@@ -284,6 +286,7 @@ BEGIN
     IDS_PETABYTE "PB 内存"
     IDS_MEGAHERTZ "MHz"
     IDS_GIGAHERTZ "GHz"
+    IDS_UPTIME_FORMAT "%u Days, %02u:%02u:%02u"
     IDS_VARIABLE "变量"
     IDS_VALUE "值"
     IDS_NO_DUMP "(无)"
diff --git a/dll/cpl/sysdm/lang/zh-TW.rc b/dll/cpl/sysdm/lang/zh-TW.rc
index 403d0178de..c2ca25f64b 100644
--- a/dll/cpl/sysdm/lang/zh-TW.rc
+++ b/dll/cpl/sysdm/lang/zh-TW.rc
@@ -12,6 +12,8 @@ BEGIN
     LTEXT REACTOS_STR_PRODUCT_NAME, IDC_STATIC, 10, 128, 116, 9
     LTEXT "版本", IDC_ROSVERSION, 10, 137, 116, 9
     LTEXT REACTOS_STR_PRODUCT_BUILD, IDC_STATIC, 10, 146, 110, 9
+    LTEXT "System Uptime:", IDC_STATIC, 4, 158, 86, 9
+    LTEXT "", IDC_UPTIME, 10, 170, 116, 9
     LTEXT "計算機:", IDC_STATIC, 124, 116, 34, 9
     LTEXT "", IDC_MACHINELINE1, 130, 128, 118, 9
     LTEXT "", IDC_MACHINELINE2, 130, 137, 118, 9
@@ -283,6 +285,7 @@ BEGIN
     IDS_PETABYTE "PB內存"
     IDS_MEGAHERTZ "MHz"
     IDS_GIGAHERTZ "GHz"
+    IDS_UPTIME_FORMAT "%u Days, %02u:%02u:%02u"
     IDS_VARIABLE "變量"
     IDS_VALUE "值"
     IDS_NO_DUMP "(無)"
diff --git a/dll/cpl/sysdm/resource.h b/dll/cpl/sysdm/resource.h
index e999b8c73d..26645d023f 100644
--- a/dll/cpl/sysdm/resource.h
+++ b/dll/cpl/sysdm/resource.h
@@ -52,6 +52,8 @@
 #define IDS_MEGAHERTZ 90
 #define IDS_GIGAHERTZ 91
 
+#define IDS_UPTIME_FORMAT 92
+
 /* Propsheet - general */
 #define IDD_PROPPAGEGENERAL  100
 #define IDC_MACHINELINE1     101
@@ -64,6 +66,7 @@
 #define IDC_ROSIMG           108
 #define IDC_ROSHOMEPAGE_LINK 109
 #define IDC_ROSVERSION       110
+#define IDC_UPTIME           111
 
 /* Propsheet - hardware */
 #define IDD_PROPPAGEHARDWARE        300

Reply via email to