Promotic
WikipediaLinkedInYoutubeTwitterFacebook

GetSystemInfo - metoda obiektu Pm

Opis:
Zwraca informacje systemowe.
Składnia:
Variant GetSystemInfo(String sWhat, String sParams)
Wołanie:
nScreenX = Pm.GetSystemInfo("screen.width", "")
Parametry:
sWhat(String) Identyfikator uzyskanej informacji. Podstawowa opcja określająca, co zostanie zwrócone.
"screen.width" - Zwraca szerokość ekranu (w pikselach).

Parametr sParams nie jest wykorzystany.

Patrz Przykład1.

"screen.height" - Zwraca wysokość ekranu (w pikselach).

Parametr sParams nie jest wykorzystany.

Patrz Przykład1.

"screen.clientarea.width" - Zwraca szerokość obszaru klienckiego monitora (bez paska narzędziowego SO Windows) (w pikselach).

Parametr sParams nie jest wykorzystany.

"screen.clientarea.height" - Zwraca wysokość obszaru klienckiego monitora (bez paska narzędziowego SO Windows) (w pikselach).

Parametr sParams nie jest wykorzystany.

"screen.allmonitors" - Zwraca pozycję oraz całkowity rozmiar opisanego prostokąta wokół wszystkich monitorów (w pikselach) w postaci PmMap. PmMap zawiera właściwości x, y, dx oraz dy określające pozycję oraz rozmiar.

Parametr sParams nie jest wykorzystany.

"app.zoom" - Zwraca wartość zwiększenia/zmniejszenia całej aplikacji jako wynik dostosowania pierwotnej aplikacji do innej rozdzielczości wyświetlacza.

Patrz konfigurator "Zwiększenie wyglądu (zoom) aplikacji".

Parametr sParams nie jest wykorzystany.

"screensaver.active" - Zwraca atrybut, czy w danej chwili jest włączony wygaszacz ekranu (nie chodzi o wyłączenie ekranu w trybie energooszczędnym).

Parametr sParams nie jest wykorzystany.

"memory.free" - Zwraca wartość wolnej pamięci całego komputera w kB (z dokładnością do 4 kB).

Śledzenie wartości na komputerze jest korzystne zwłaszcza przy dostrajaniu aplikacji.

Parametr sParams nie jest wykorzystany.

"memory.usage" - Zwraca wartość zajętej pamięci całego komputera w kB (z dokładnością do 4 kB)

Zajęcie pamięci w komputerze można również określić (poza innymi) w INFO systemie pod pozycją /System/Memory.

Patrz również Monitoring uruchomionej aplikacji PROMOTIC.

Śledzenie wartości na komputerze jest korzystne zwłaszcza przy dostrajaniu aplikacji.

Parametr sParams nie jest wykorzystany.

"cpu.usage" - Zwraca wartość przeciętnego obciążenia procesora (CPU) w procentach. Wartość przedstawia przeciętne obciążenie wszystkich rdzeniów procesora (CPU) od ostatniego wywołania tej metody.

Śledzenie wartości na komputerze jest korzystne zwłaszcza przy dostrajaniu aplikacji.

Parametr sParams nie jest wykorzystany.

"win.username" - Zwraca nazwę aktualnie zalogowanego użytkownika w SO Windows.

Parametr sParams nie jest wykorzystany.

"win.starttime" - Zwraca czas uruchomienia Windows.

Parametr sParams nie jest wykorzystany.

"app.starttime" - Zwraca czas uruchomienia aplikacji.

Parametr sParams nie jest wykorzystany.

"app.lastuseracttime" - Zwraca czas ostatniej czynności użytkownika (klawiatura lub myszka). Metoda ta działa także w Web panelach.

Można periodycznie testować i jeżeli brak aktywności użytkownika przekroczy dany próg, wtedy można wykonać dowolną akcję (np. wylogować użytkownika)

Parametr sParams nie jest wykorzystany.

Patrz Przykład3.

"app.laststopfailed" - Zwraca true jeżeli poprzednie zatrzymanie aplikacji zostało zakończone z błędem, w innym przypadku false. (Patrz parametr pEvent.Reset w zdarzeniu onAppStartBegin).

Parametr sParams nie jest wykorzystany.

"net.addresses" - Zwraca tablicę adresów sieciowych IP danego komputera.

Parametr sParams w formacie KeyVal określa dodanie adresów do tablicy wg typu. Jeżeli nie zostanie określone, wtedy są zwrócone wszystkie adresy IPv4 oraz IPv6 bez adresów localhost.

Patrz Przykład2.

"ipv4" (opcjonalne) - Określa dodanie adresów IPv4 do tablicy.
0 - Nie zostaną dodane żadne adresy danego typu.
1 (domyślnie) - Zostaną dodane sieciowe adresy danego typu (bez adresy localhost).
2 - Zostanie dodany localhost adres 127.0.0.1 lub ::1 wg danego typu.
3 - Zostaną dodane sieciowe adresy wraz z adresami localhost danego typu.
"ipv6" (opcjonalne) - Określa dodanie adresów IPv6 do tablicy.
0 - Nie zostaną dodane żadne adresy danego typu.
1 (domyślnie) - Zostaną dodane sieciowe adresy danego typu (bez adresy localhost).
2 - Zostanie dodany localhost adres 127.0.0.1 lub ::1 wg danego typu.
3 - Zostaną dodane sieciowe adresy wraz z adresami localhost danego typu.
"pm.platform" - Zwraca flagę, czy chodzi o system PROMOTIC 32 bitowy (wartość 0) lub 64 bitowy (wartość 1).

Parametr sParams nie jest wykorzystany.

"pm.version" - Zwraca wersję systemu PROMOTIC w postaci na przykład "PROMOTIC 9.0.6".

Parametr sParams nie jest wykorzystany.

"tz.bias.standard" - Zwraca przesunięcie czasu w minutach (bias) czasu UTC od lokalnego czasu zimowego (standard). Dla większości Europy (strefa UTC+1) zawiera wartość -60.

Parametr sParams nie jest wykorzystany.

"tz.bias.daylight" - Zwraca przesunięcie czasu w minutach (bias) czasu UTC od lokalnego czasu letniego (daylight). Dla większości Europy (strefa UTC+1) zawiera wartość -120.

Parametr sParams nie jest wykorzystany.

sParams(String) Dodatkowe parametry dla poszczególnych operacji. Znaczenie jest różne dla poszczególnych operacji.

Jeżeli dana operacja stosuje ten parametr, wtedy jest to dla danej operacji podkreślone.

Notatka:

Metoda ta działa również w Makro wyrażenie $.expr oraz w zdarzeniu onDraw obiektu PmgCanvas.

Metoda ta działa także w Web panelach. Na Webie funkcjonują tylko:

- wybór typu "screen". Wtedy metoda zwraca informacje (parametry monitora) na komputerze, na którym jest uruchomiony klient (przeglądarka internetowa).

Przykład1:
Uzyska rozdzielczość ekranu:
JavaScriptVBScriptWybierz oraz skopiuj do schowka

var nScreenX = Pm.GetSystemInfo("screen.width", "");
var nScreenY = Pm.GetSystemInfo("screen.height", "");
Przykład2:
Uzyska tablicę adresów sieciowych IPv4 komputera bez adresu localhost:
JavaScriptVBScriptWybierz oraz skopiuj do schowka

var aIpAddr = Pm.GetSystemInfo("net.addresses", "ipv4:1;ipv6:0;");
Przykład3:
Automatyczne wylogowanie użytkownika po 10 minutach braku aktywności. Skrypt w zdarzeniu onRefresh v PmgRoot panela, który jest w ramach aplikacji trwale otwarty (na przykład w pasku narzędzi). Metoda ta działa także w Web panelach.
JavaScriptVBScriptWybierz oraz skopiuj do schowka

var nMinInactivity = 10;  //x minute
var nLastTimeActivity = Pm.GetSystemInfo("app.lastuseracttime", "");
var nTimeOut = Pm.Time - (1 / 24 / 60) * nMinInactivity;
if (nTimeOut > nLastTimeActivity)
{
Pm.Debug("Auto LogOff");
Pm.Logoff();
}

Historia:
Pm9.00.05: Nowe wybory:
- "app.lastuseracttime" zwraca czas ostatniej czynności użytkownika. Patrz Przykład3.
- "tz.bias.standard" zwraca przesunięcie czasu pomiędzy UTC oraz lokalnym czasem zimowym.
- "tz.bias.daylight" zwraca przesunięcie czasu pomiędzy UTC oraz lokalnym czasem letnim.
Pm9.00.03: Nowe wybóry
- "net.addresses" zwraca tablicy adresów IP komputera.
- "pm.platform" zwraca flag, czy chodzi o 32 lub 64 bitowy PROMOTIC.
- "pm.version" zwraca wersję PROMOTIC.
Pm8.03.27: Nowy wybór "screen.allmonitors" zwraca rozmiar ograniczającego wszystkie monitory.
Pm8.03.03: Nowy wybór "win.username" zwraca nazwy aktualnie zalogowanego użytkownika w SO Windows.
Navigacja:
 
- Pm
 
- Abs
- Cos
- E
- Exp
- GetSystemInfo
 
 
- LN2
- PI
- Pow
- Sin
- Tan
© MICROSYS, spol. s r. o.Tavičská 845/21 703 00 Ostrava-Vítkovice