Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Der Switch /backward_compat leitet den MIDL-Compiler an, um einige erweiterte Features beim Generieren von RPC/COM-Stubs zu deaktivieren.
midl /backward_compat { maybenull_sizeis | zeroout_alignmentgap |
BSTR_byvalue_escaping | string_defaultvalue | signed_wchar_t }
Optionen wechseln
maybenull_sizeis
- Wendet das [disable_consistency_check] Attribut auf eine gesamte MIDL-Kompilierung an.
zeroout_alignmentgap
- Deaktiviert das Nullen von Lücken im gemarstischen Puffer.
BSTR_byvalue_escaping
- Leitet den MIDL-Compiler an, Escapesequenzen wie "\n" oder "\t" in BSTRs zu berücksichtigen.
string_defaultvalue
- Erzwingt den MIDL-Compiler, Zeichenfolgen in [Standardwert] Attribute in VARIANT zu koerzen. VT_I4 Typ, bevor der Wert in den richtigen Typ umgewandelt wird.
signed_wchar_t
- Leitet MIDL zur Behandlung des wchar_t Typs als signiert zur Kompatibilität mit Visual Basic an.
Bemerkungen
maybenull_sizeis: Siehe [disable_consistency_check].
zeroout_alignmentgap: Wenn IDLs mit --target NT60 oder höher kompiliert werden, erstellt MIDL Stubs, die alle Ausrichtungslücken zwischen Elementen oder einer Struktur im Drahtpuffer auf null setzen. Der Befehlszeilenschalter /backward_compat zeroout_alignmentgap leitet MIDL an, um dieses Feature zu deaktivieren.
In der folgenden Beispielstruktur enthält der Drahtpuffer eine 7 Byte-Ausrichtungslücke, um das Hyperelement nach dem Zeichenelement an 8 auszurichten. Bei --target NT60 oder höher wird diese Lücke von MIDL null null, es sei denn, der Switch wird verwendet.
IDL-Datei:
typedef struct _structwithgaps{ char c; // 7 byte gap to align the following hyper to 8 hyper h; } structwithgap;Dieser Switch kann eine leichte Leistungsverbesserung mit potenziell erheblichen Erhöhungen des Offenlegungsrisikos bieten.
BSTR_byvalue_escaping: Standardmäßig verarbeitet der MIDL-Compiler keine Escapesequenzen wie "\n" oder "\t" in Zeichenfolgenkonstanten für die OLE-Automatisierung, wenn eine Zeichenfolgenkonstante in Typen VT_LPSTR oder VT_LPWSTR konvertiert wird. Mit dieser Option zur Abwärtskompatibilität werden die Escapesequenzen ausgewertet.
string_defaultvalue: Erzwingt den MIDL-Compiler, numerische Zeichenfolgen in [Standardwert] Attribute in VARIANT zu koerieren. VT_I4 Typ, bevor der Wert in den richtigen Typ umgewandelt wird. Dies kann in einigen Fällen zu einem Genauigkeitsverlust führen, daher wird diese Option nicht empfohlen.
signed_wchar_t: Leitet MIDL zur Behandlung des wchar_t Typs als signiert für die Kompatibilität mit Visual Basic an.