Fehler: Die GetDlgItem() gibt NULL unter Win32s

Wichtig: Dieser Artikel wurde maschinell und nicht von einem Menschen übersetzt. Die Microsoft Knowledge Base ist sehr umfangreich und ihre Inhalte werden ständig ergänzt beziehungsweise überarbeitet. Um Ihnen dennoch alle Inhalte auf Deutsch anbieten zu können, werden viele Artikel nicht von Menschen, sondern von Übersetzungsprogrammen übersetzt, die kontinuierlich optimiert werden. Doch noch sind maschinell übersetzte Texte in der Regel nicht perfekt, insbesondere hinsichtlich Grammatik und des Einsatzes von Fremdwörtern sowie Fachbegriffen. Microsoft übernimmt keine Gewähr für die sprachliche Qualität oder die technische Richtigkeit der Übersetzungen und ist nicht für Probleme haftbar, die direkt oder indirekt durch Übersetzungsfehler oder die Verwendung der übersetzten Inhalte durch Kunden entstehen könnten.

Den englischen Originalartikel können Sie über folgenden Link abrufen: 149982
Dieser Artikel wurde archiviert. Er wird im vorliegenden Zustand bereitgestellt und nicht mehr aktualisiert.
Problembeschreibung
Fehlschlagen und Zurückgeben von NULL unter Win32s kann Aufrufen von GetDlgItem() den CWnd-Zeiger eines Steuerelements in einem Dialogfeld abrufen. DoDataExchange(), die DDX-Funktionen aufruft, endet auch GetDlgItem() aufrufen. Dies kann zu einer Assertion in Dlgdata.cpp, Zeile 43 führen.
Ursache
Dies ist durch erweiterte Stile in eines der Steuerelemente in das Dialogfeld verursacht. Alle erweiterten Stil konvertiert die Dialogfeldressource zu einer Ressource DIALOGEX. DIALOGEX-Ressourcen werden von Win32s nicht unterstützt. Keines der Steuerelemente im Dialogfeld erstellt werden und das Dialogfeld wird nicht korrekt angezeigt. Detaillierte Informationen zum Ersetzen des DIALOGEX-Stil finden Sie im Abschnitt "Weitere Informationen" dieses Artikels.
Lösung
Entfernen Sie alle erweiterten Stile in alle Steuerelemente in die Dialogfeldressource.
Status
Microsoft hat bestätigt, dass es sich dabei um einen Fehler in den Microsoft-Produkten handelt, die zu Beginn dieses Artikels aufgeführt sind. Wir werden das Problem untersucht und hier neue Informationen können in der Microsoft Knowledge Base werden gebucht werden, sobald Sie verfügbar sind.

Visual C++, Versionen 4.2 und höher unterstützen keine erstellen Win32s von Anwendungen.
Weitere Informationen
Weitere Informationen finden Sie in der folgenden Artikel der Microsoft Knowledge Base:
138971Fehler: Standard-Dialogfeld-basierten Anwendung nicht in Win32s arbeiten.
Dialogfeldern basiert hängt

Warnung: Dieser Artikel wurde automatisch übersetzt.

Eigenschaften

Artikelnummer: 149982 – Letzte Überarbeitung: 02/02/2014 08:46:23 – Revision: 2.1

Microsoft Foundation Class Library 4.2

  • kbnosurvey kbarchive kbmt kbbug kbdlg kbprogramming kbuidesign KB149982 KbMtde
Feedback