AsnDecoder.ReadEncodedValue Metoda
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Lokalizuje zakres zawartości zakodowanej wartości na początku buforu source
przy użyciu określonych reguł kodowania.
public:
static System::Formats::Asn1::Asn1Tag ReadEncodedValue(ReadOnlySpan<System::Byte> source, System::Formats::Asn1::AsnEncodingRules ruleSet, [Runtime::InteropServices::Out] int % contentOffset, [Runtime::InteropServices::Out] int % contentLength, [Runtime::InteropServices::Out] int % bytesConsumed);
public static System.Formats.Asn1.Asn1Tag ReadEncodedValue (ReadOnlySpan<byte> source, System.Formats.Asn1.AsnEncodingRules ruleSet, out int contentOffset, out int contentLength, out int bytesConsumed);
static member ReadEncodedValue : ReadOnlySpan<byte> * System.Formats.Asn1.AsnEncodingRules * int * int * int -> System.Formats.Asn1.Asn1Tag
Public Shared Function ReadEncodedValue (source As ReadOnlySpan(Of Byte), ruleSet As AsnEncodingRules, ByRef contentOffset As Integer, ByRef contentLength As Integer, ByRef bytesConsumed As Integer) As Asn1Tag
Parametry
- source
- ReadOnlySpan<Byte>
Bufor zawierający zakodowane dane.
- ruleSet
- AsnEncodingRules
Ograniczenia kodowania używane podczas interpretowania danych.
- contentOffset
- Int32
Gdy ta metoda zwróci wartość, przesunięcie ładunku zawartości względem początku elementu source
.
Ten parametr jest traktowany jako niezainicjowany.
- contentLength
- Int32
Gdy ta metoda zwróci wartość , liczba bajtów w ładunku zawartości (co może być 0). Ten parametr jest traktowany jako niezainicjowany.
- bytesConsumed
- Int32
Gdy ta metoda zostanie zwrócona, całkowita liczba bajtów dla zakodowanej wartości. Ten parametr jest traktowany jako niezainicjowany.
Zwraca
Tag identyfikujący zawartość.
Wyjątki
ruleSet
nie jest zdefiniowany.
source
nie reprezentuje wartości zakodowanej w określonych regułach kodowania.
Uwagi
Ta metoda wykonuje bardzo małą walidację zawartości. Jeśli zakodowana wartość używa określonej długości, zawartość nie jest w ogóle sprawdzana. Jeśli zakodowana wartość używa nieskończonej długości, zawartość jest sprawdzana tylko w razie potrzeby, aby określić lokalizację odpowiedniego znacznika końca zawartości.
Gdy zakodowana wartość używa nieskończonej długości, bytesConsumed
wartość będzie większa niż suma contentOffset
i contentLength
do uwzględnienia znacznika końca zawartości.