Qu'est-ce que #if USING_NET11 en utilisant System.Runtime.InteropServices.ComTypes!; #endif moyenne?
-
01-10-2019 - |
Question
Qu'est-ce que la moyenne de code suivant et que fait-il? Est-il vraiment nécessaire?
#if !USING_NET11
using System.Runtime.InteropServices.ComTypes;
#endif
Dans mon dossier de projet, je l'ai mis en place la capture de web cam en utilisant l'enveloppe de dshownet. Le code ci-dessus était là dans le fichier Form1.cs.
La solution
Cela signifie que:
using System.Runtime.InteropServices.ComTypes;
ne sera compilé dans l'ensemble si le symbole USING_NET11 est faux.
Depuis System.Runtime.InteropServices.ComTypes a été ajouté dans .NET 2.0, ce moyen directive que le code sera toujours contre .NET 1.1 compiler depuis la nouvelle référence ne sera pas compilé.
Autres conseils
Le System.Runtime.InteropServices.ComType
a été introduit dans la version .NET Framework 2.0. Le code semble tenter d'être compatible avec la version 1.1 du cadre que de déclarer la déclaration de using
sur cet espace de noms si la version en cours de compilation contre n'est pas 1.1.
Si vous faites un Google recherche sur USING_NET11 , vous trouverez qu'il pointe à beaucoup de code managé DirectX.