Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
A opção /backward_compat direciona o compilador MIDL para desativar alguns recursos avançados ao gerar stubs RPC/COM.
midl /backward_compat { maybenull_sizeis | zeroout_alignmentgap |
BSTR_byvalue_escaping | string_defaultvalue | signed_wchar_t }
Opções de alternância
maybenull_sizeis
- Aplica o atributo [disable_consistency_check] a uma compilação MIDL inteira.
zeroout_alignmentgap
- Desativa a eliminação de lacunas no buffer em marshaled.
BSTR_byvalue_escaping
- Direciona o compilador MIDL para honrar sequências de escape como '\n' ou '\t' em BSTRs.
string_defaultvalue
- Força o compilador MIDL a coagir cadeias de caracteres em atributos de [defaultvalue] em VARIANT. VT_I4 tipo antes de coagir o valor para o tipo correto.
signed_wchar_t
- Direciona MIDL para tratar o tipo de wchar_t como assinado para compatibilidade com Visual Basic.
Observações
maybenull_sizeis: consulte [disable_consistency_check].
zeroout_alignmentgap: quando as IDLs são compiladas com --target NT60 ou superior, MIDL criará stubs que zeram quaisquer lacunas de alinhamento entre membros ou uma estrutura no buffer de fio. A opção de linha de comando /backward_compat zeroout_alignmentgap direciona MIDL para desabilitar esse recurso.
Na estrutura de exemplo a seguir, o buffer de fio contém uma lacuna de alinhamento de 7 bytes para alinhar o membro hyper a 8 após o membro char. Com --target NT60 ou superior, MIDL zera essa lacuna, a menos que a opção seja usada.
Arquivo IDL:
typedef struct _structwithgaps{ char c; // 7 byte gap to align the following hyper to 8 hyper h; } structwithgap;Essa opção pode fornecer uma ligeira melhoria de desempenho com aumentos potencialmente significativos no risco de divulgação.
BSTR_byvalue_escaping: por padrão, o compilador MIDL não processa sequências de escape, como '\n' ou '\t' em constantes de cadeia de caracteres para Automação OLE ao converter uma constante de cadeia de caracteres em tipos VT_LPSTR ou VT_LPWSTR. Com essa opção de comutador de compatibilidade com versões anteriores, as sequências de escape são avaliadas.
string_defaultvalue: força o compilador MIDL a coagir cadeias de caracteres numéricas em atributos de [defaultvalue] em VARIANT. VT_I4 tipo antes de coagir o valor para o tipo correto. Isso pode levar à perda de precisão em alguns casos, portanto, essa opção de comutador não é recomendada.
signed_wchar_t: direciona MIDL para tratar o tipo de wchar_t como assinado para compatibilidade com Visual Basic.