Zum Inhalt springen

"SetWindowText" als Methodenname


Empfohlene Beiträge

Geschrieben

Hallo Zusammen,

ich habe mir seit längerer zeit eine Klassensammlung zusammengestellt wo ich Win32 - Api Methoden gekapselt habe.

Diese Klassensammlung ist in C++ (mit MFC unterstützung) geschrieben.

Das ganze verwende ich jetzt in C# wieder. Dazu schreibe ich mir managed c++ wrapperklassen.

=> Die Original C++ Klasse hat eine Methode "SetWindowText".

Wenn jetzt der Wrapper diese Methode aufruft, schlägt mir die Hilfe plötzlich "SetWindowTextA" als Methodennamen vor :confused:.

Wie gibts denn sowas?

WEnn meine C# Methode die SetWindowText des Wrappers aufrufen will, dann heißt die SetWindowText des Wrappers plötzlich "SetWindowTextW"?

Kann mir das jemand erklären?

Viele Grüße

Stefan

P.S. Wenn ich die Methodennamen in "SetTHEWindowText" umbennen oder sowas, dann gehts.. aber ich würde trotzdem 1. gerne einen grund wissen und 2. meine Methodennnamen beibehalten :)

Geschrieben

Es gibt eine WinAPI-Funktion namens SetWindowText, d.h eigentlich gibt es die nicht ;). Es gibt die Multi-Byte-Variante (SetWindowTextA) und die Wide-Character-Variante (SetWindowTextW). SetWindowText ist nur ein Präprozessorsymbol, das je nachdem, wie die UNICODE-Einstellungen im C++-Projekt definiert sind, entweder auf SetWindowTextA oder SetWindowTextW verweist.

Und da Präprozessormakros dumm sind und keine Scopes beachten, passiert diese Ersetzung auch in deinem Code, sobald du die Windows-Header einbindest.

Das gilt übrigens für praktisch alle WinAPI-Funktionen, die mit C-Strings arbeiten.

Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren

Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können

Benutzerkonto erstellen

Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!

Neues Benutzerkonto erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde Dich hier an.

Jetzt anmelden

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...