Promotic

GetHexaString - metoda obiektu PmBuffer

Opis:
Odczyt bloku danych w formie HexaString.
Składnia:
String GetHexaString([Long nOffset], [Long nSize], [Long nAttr])
Parametry:
nOffset[opcjonalne] (Long) Określa pozycję odczytywanej wartości w bloku danych.
Cała odczytywana pozycja musi znajdować się w bloku danych. Pozycja zostanie odczytana w całości lub wogóle.
Domyślnie: 0.
>= 0 - Indeks (w bajtach, indeksowane od 0) w bloku danych.
-4 - Zostanie zastosowana wewnętrzna automatyczna pozycja (patrz właściwość AutoOffset), która wskazuje ostatnią odczytywaną lub zapisywaną wartość.
Operacja ta przesunie wewnętrzną automatyczną pozycję za odczytywaną/zapisywaną wartość.
Jeżeli pozycje są odczytywane/zapisywane po kolei za sobą, wtedy nie trzeba ręcznie określać pozycję, ale jest lepiej zastosować automatyczne pozycjonowanie.
nSize[opcjonalne] (Long) Wielkość odczytywanego bloku danych.
Wartość -1 (domyślnie) oznacza, że zostanie odczytany blok danych od określonej pozycji do końca.
nAttr[opcjonalne] (Long) Określa, w jaki sposób zostanie wygenerowany HexaString.
0 (domyślnie) - Znaki Hexa będą małe (lowercase).
1 - Znaki Hexa będą duże (uppercase).
Notatka:
Metoda ta działa także w Web panelach.
 
HexaString (łańcuch znaków w formacie szesnastkowym) może być użyty na dwa sposoby:
1) Wyświetlanie liczb w systemie szesnastkowym, gdzie wyższe rzędy znajdują się po lewej stronie. Odpowiada to przechowywaniu w pamięci Big-endian. Chodzi o konwersję wartości liczbowej na łańcuch (i odwrotnie) przy pomocy łańcucha formatującego. Do zastosowania HexaString w ten sposób jest zalecane zastosowanie obiektu PmFormat.
2) Zakodowanie zawartości sekcji pamięci o określonym rozmiarze (np. 1B, 2B, 4B, ...) w systemie szesnastkowym. Następnie zależy to od tego, jak liczba jest przechowywana w pamięci. Na procesorach Intel i AMD (architektura x86 lub x64) używana jest tzw. Little-endian, gdzie niższe rzędy znajdują się po lewej stronie. Do zastosowania HexaString w ten sposób jest zalecane stosowanie wyłącznie obiektu PmBuffer, który może obsługiwać zarówno Little-endian jak i Big-endian.
Patrz również:
Przykład:
Wytworzenie bloku danych, kolejny zapis 4, 2 oraz 1 bajtowej wartości rzeczywistaj (razem 7 bajtów), a na końcu odczyt zawartości całego bloku danych w formie HexaString.
Odwrotny przykład patrz metoda SetHexaString.
JavaScriptWybierz oraz skopiuj do schowka

var b = Pm.CreatePmBuffer();
b.SetInt32(-2, 0x10203040);
b.SetInt16(-2, 0x5060);
b.SetUint8(-2, 0x70);
var s = b.GetHexaString();   // Wynikiem jest HexaString "40302010605070"

Historia:
Pm9.00.05: Nowy parametr nAttr do doprecyzowania wyglądu wygenerowanego łańcucha HexaString.
Pm9.00.04: Wytworzono
© MICROSYS, spol. s r. o.