/CLRUNMANAGEDCODECHECK
(Remove SuppressUnmanagedCodeSecurityAttribute)
/CLRUNMANAGEDCODECHECK
spécifie que l’éditeur de liens ne s’applique SuppressUnmanagedCodeSecurityAttribute pas aux appels générés par PInvoke
l’éditeur de liens à partir de code managé dans des DLL natives.
Syntaxe
/CLRUNMANAGEDCODECHECK
/CLRUNMANAGEDCODECHECK:NO
Notes
Par défaut, l’éditeur de liens applique l’attribut SuppressUnmanagedCodeSecurityAttribute
aux appels générés par PInvoke
l’éditeur de liens. Lorsqu’elle /CLRUNMANAGEDCODECHECK
est en vigueur, SuppressUnmanagedCodeSecurityAttribute
est supprimée. Pour appliquer explicitement l’attribut aux appels générés par l’éditeur SuppressUnmanagedCodeSecurityAttribute
de liens, vous pouvez utiliser /CLRUNMANAGEDCODECHECK:NO
.PInvoke
L’éditeur de liens ajoute uniquement l’attribut aux objets compilés à l’aide /clr
ou /clr:pure
. Toutefois, l’option /clr:pure
du compilateur est déconseillée dans Visual Studio 2015 et non prise en charge dans Visual Studio 2017 et versions ultérieures.
Un PInvoke
appel est généré par l’éditeur de liens lorsque l’éditeur de liens ne trouve pas de symbole managé pour satisfaire une référence à partir d’un appelant managé, mais peut trouver un symbole natif pour satisfaire cette référence. Pour plus d’informations sur PInvoke
, consultez Appel à des fonctions natives à partir de code managé.
Si vous utilisez AllowPartiallyTrustedCallersAttribute votre code, vous devez définir /CLRUNMANAGEDCODECHECK
explicitement pour supprimer l’attribut SuppressUnmanagedCodeSecurity
. Il s’agit d’une vulnérabilité de sécurité potentielle si une image contient à la fois les attributs et AllowPartiallyTrustedCallers
les SuppressUnmanagedCodeSecurity
attributs.
Pour plus d’informations sur les implications de l’utilisation SuppressUnmanagedCodeSecurityAttribute
, consultez instructions de codage sécurisé pour le code non managé.
Pour définir cette option de l'éditeur de liens dans l'environnement de développement Visual Studio
Ouvrez la boîte de dialogue Pages de propriétés du projet. Pour plus d’informations, consultez Définir les propriétés du compilateur et de la génération.
Sélectionnez la page de propriétés Avancées de l’Éditeur >de propriétés>de configuration.
Modifiez la propriété Vérification du code non managé CLR.
Pour définir cette option de l'éditeur de liens par programmation
- Consultez CLRUnmanagedCodeCheck.
Voir aussi
Informations de référence sur l’éditeur de liens MSVC
Options de l’éditeur de liens MSVC