Dlfcn Klasse

Definition

Ermöglicht den Zugriff auf den dynamischen Linker.

public static class Dlfcn
type Dlfcn = class
Vererbung
Dlfcn

Hinweise

Die Methoden in dieser Klasse werden verwendet, um auf den dynamischen Linker iOS/macOS zuzugreifen. Sie können die Methoden in dieser Klasse verwenden, um ein Handle für native freigegebene Bibliotheken zu erhalten und öffentliche Symbole daraus zu suchen sowie nach Konstanten zu suchen, die in einer dynamischen Bibliothek definiert sind.

Sie können verwenden dlopen(String, Int32) , um eine Bibliothek in den Arbeitsspeicher zu bringen, dlclose(IntPtr) die Bibliothek zu schließen und dlerror() Probleme mit Aufrufen von dlopen zu diagnostizieren.

Es gibt verschiedene Methoden zum Lesen und Schreiben der Werte von Symbolen, die vom dynamischen Linker verfügbar gemacht werden. In der Regel werden diese für den Zugriff auf globale Variablen aus einer Bibliothek verwendet.

Die Methoden GetCGSize, GetDouble, GetFloat, GetIndirect, GetInt32, GetInt64, GetIntPtr, GetNSNumber, GetStringConstant können verwendet werden, um den Wert eines globalen Symbols abzurufen.

SetArray, SetCGSize, SetDouble, SetFloat, SetInt32, SetInt64, SetIntPtr, SetString können verwendet werden, um globale Symbole auf einen angegebenen Wert festzulegen.

Methoden

CachePointer(IntPtr, String, IntPtr*)

Sucht das angegebene Konstantensymbol in der angegebenen Bibliothek und speichert es im angegebenen Speicher (es sei denn, der Speicher enthält bereits einen Wert, in diesem Fall wird dieser Wert zurückgegeben).

dlclose(IntPtr)

Schließt und entlädt die native freigegebene Bibliothek, auf die vom Handle verwiesen wird.

dlerror()

Gibt eine Diagnosemeldung für den letzten Fehler zurück, wenn eine der Methoden in dieser Klasse verwendet wird.

dlopen(String, Int32)

Lädt die angegebene dynamische Bibliothek in den Arbeitsspeicher.

dlsym(Dlfcn+RTLD, String)

Gibt die Adresse des angegebenen Symbols im aktuellen Prozess zurück.

dlsym(IntPtr, String)

Gibt die Adresse des angegebenen Symbols in der dynamischen Bibliothek zurück.

GetCGRect(IntPtr, String)

Ruft den Wert ab, der CGRect mit dem angegebenen Symbol aus der dynamischen Bibliothek verfügbar gemacht wird.

GetCGSize(IntPtr, String)

Ruft den Wert ab, der CGSize mit dem angegebenen Symbol aus der dynamischen Bibliothek verfügbar gemacht wird.

GetDouble(IntPtr, String)

Ruft den Double-Wert ab, der mit dem angegebenen Symbol aus der dynamischen Bibliothek verfügbar gemacht wird.

GetFloat(IntPtr, String)

Ruft den float-Wert ab, der mit dem angegebenen Symbol aus der dynamischen Bibliothek verfügbar gemacht wird.

GetIndirect(IntPtr, String)

Ruft den Zeiger im Arbeitsspeicher auf das angegebene Symbol ab.

GetInt32(IntPtr, String)

Ruft den int-Wert ab, der mit dem angegebenen Symbol aus der dynamischen Bibliothek verfügbar gemacht wird.

GetInt64(IntPtr, String)

Ruft den long-Wert ab, der mit dem angegebenen Symbol aus der dynamischen Bibliothek verfügbar gemacht wird.

GetIntPtr(IntPtr, String)

Ruft den IntPtr-Wert ab, der mit dem angegebenen Symbol aus der dynamischen Bibliothek verfügbar gemacht wird.

GetNFloat(IntPtr, String)

Ruft den nfloat-Wert ab, der mit dem angegebenen Symbol aus der dynamischen Bibliothek verfügbar gemacht wird.

GetNInt(IntPtr, String)

Ruft den nint-Wert ab, der mit dem angegebenen Symbol aus der dynamischen Bibliothek verfügbar gemacht wird.

GetNSNumber(IntPtr, String)

Ruft einen NSNumber-Wert ab, der mit dem angegebenen Symbol aus der dynamischen Bibliothek verfügbar gemacht wird.

GetNUInt(IntPtr, String)

Ruft den Nuint-Wert ab, der mit dem angegebenen Symbol aus der dynamischen Bibliothek verfügbar gemacht wird.

GetStringConstant(IntPtr, String)

Ruft den NSString-Wert ab, der mit dem angegebenen Symbol aus der dynamischen Bibliothek verfügbar gemacht wird.

GetUInt32(IntPtr, String)

Ruft den uint-Wert ab, der mit dem angegebenen Symbol aus der dynamischen Bibliothek verfügbar gemacht wird.

GetUInt64(IntPtr, String)

Ruft den ulong-Wert ab, der mit dem angegebenen Symbol aus der dynamischen Bibliothek verfügbar gemacht wird.

SetArray(IntPtr, String, NSArray)

Legt das angegebene Symbol im Bibliothekshandle auf den angegebenen Arraywert fest.

SetCGSize(IntPtr, String, CGSize)

Ruft den Wert ab, der CGSize mit dem angegebenen Symbol aus der dynamischen Bibliothek verfügbar gemacht wird.

SetDouble(IntPtr, String, Double)

Legt das angegebene Symbol im Bibliothekshandle auf den angegebenen Double-Wert fest.

SetFloat(IntPtr, String, Single)

Legt das angegebene Symbol im Bibliothekshandle auf den angegebenen Floatwert fest.

SetInt32(IntPtr, String, Int32)

Legt das angegebene Symbol im Bibliothekshandle auf den angegebenen int-Wert fest.

SetInt64(IntPtr, String, Int64)

Legt das angegebene Symbol im Bibliothekshandle auf den angegebenen long-Wert fest.

SetIntPtr(IntPtr, String, IntPtr)

Legt das angegebene Symbol im Bibliothekshandle auf den angegebenen IntPtr-Wert fest.

SetNFloat(IntPtr, String, nfloat)

Legt das angegebene Symbol im Bibliothekshandle auf den angegebenen nfloat-Wert fest.

SetNInt(IntPtr, String, nint)

Legt das angegebene Symbol im Bibliothekshandle auf den angegebenen nint-Wert fest.

SetNUInt(IntPtr, String, nuint)

Legt das angegebene Symbol im Bibliothekshandle auf den angegebenen Nuint-Wert fest.

SetString(IntPtr, String, NSString)

Legt das angegebene Symbol im Bibliothekshandle auf den angegebenen Zeichenfolgenwert fest.

SetString(IntPtr, String, String)

Legt das angegebene Symbol im Bibliothekshandle auf den angegebenen Zeichenfolgenwert fest.

SetUInt32(IntPtr, String, UInt32)

Legt das angegebene Symbol im Bibliothekshandle auf den angegebenen uint-Wert fest.

SetUInt64(IntPtr, String, Int64)
Veraltet..

Legt das angegebene Symbol im Bibliothekshandle auf den angegebenen long-Wert fest.

SetUInt64(IntPtr, String, UInt64)

Legt das angegebene Symbol im Bibliothekshandle auf den angegebenen ulong-Wert fest.

Gilt für: