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.
Os runtimes do .NET não adicionam mais um sufixo A ou W aos nomes de exportação de funções durante a sondagem de P/Invokes em plataformas não-Windows.
Versão introduzida
5,0
Descrição da alteração
O Windows tem uma convenção de adicionar um A ou W sufixo a nomes de função do SDK do Windows, que correspondem à página de código do Windows e às versões Unicode, respectivamente.
Nas versões anteriores do .NET, os runtimes CoreCLR e Mono adicionavam um A ou W sufixo ao nome de exportação durante a descoberta das exportações para P/Invokes em todas as plataformas.
No .NET 5 e versões posteriores, um sufixo A ou W é adicionado ao nome de exportação durante a detecção de exportação somente no Windows. Em plataformas Unix, o sufixo não é adicionado. A semântica de ambos os runtimes na plataforma Windows permanece inalterada.
Motivo da alteração
Essa alteração foi feita para simplificar a investigação entre plataformas. É uma sobrecarga que não deve ser incorrida, considerando que as plataformas que não são do Windows não contêm essa semântica.
Ação recomendada
Para atenuar a alteração, você pode adicionar manualmente o sufixo desejado em plataformas que não são do Windows. Por exemplo:
[DllImport(...)]
extern static void SetWindowTextW();