Anmerkung
Der Zugriff auf diese Seite erfordert eine Genehmigung. Du kannst versuchen, dich anzumelden oder die Verzeichnisse zu wechseln.
Der Zugriff auf diese Seite erfordert eine Genehmigung. Du kannst versuchen , die Verzeichnisse zu wechseln.
Die .NET-Runtimes fügen bei der Suche nach P/Invokes auf Nicht-Windows-Plattformen keine A- oder W-Suffixe mehr zu Funktionsexportnamen hinzu.
Eingeführte Version
5.0
Änderungsbeschreibung
Windows hat eine Konvention, einen A oder W Suffix zu Windows SDK-Funktionsnamen hinzuzufügen, die jeweils der Windows-Codeseite- und Unicode-Version entsprechen.
In vorherigen Versionen von .NET haben die CoreCLR- und Mono-Runtimes während der Exportermittlung A ein W- oder -Suffix zum Exportnamen für P/Invokes hinzugefügt.
In .NET 5 und höheren Versionen wird dem Exportnamen während der Exportermittlung ein A oder W Suffix nur unter Windows hinzugefügt. Auf Unix-Plattformen wird das Suffix nicht hinzugefügt. Die Semantik beider Laufzeiten auf der Windows-Plattform bleibt unverändert.
Grund für Änderung
Diese Änderung wurde vorgenommen, um plattformübergreifendes Probing zu vereinfachen. Der Aufwand sollte nicht entstehen, da Nicht-Windows-Plattformen diese Semantik nicht enthalten.
Empfohlene Aktion
Um die Änderung zu mindern, können Sie das gewünschte Suffix manuell auf Nicht-Windows-Plattformen hinzufügen. Beispiel:
[DllImport(...)]
extern static void SetWindowTextW();