Что делает #if !USING_NET11 с использованием System.Runtime.Служб взаимодействия.ComTypes;#конец, что это значит?
-
01-10-2019 - |
Вопрос
Что означает следующий код и что он делает?Действительно ли это необходимо?
#if !USING_NET11
using System.Runtime.InteropServices.ComTypes;
#endif
В моем файле проекта я реализовал захват веб-камеры с помощью оболочки dshownet.Приведенный выше код был там, в файле Form1.cs.
Решение
Это означает, что:
using System.Runtime.InteropServices.ComTypes;
Будут компилировать только в сборку, если символ с помощью_net11 является ложным.
Поскольку System.runtime.interopservices.comTypes был добавлен в .NET 2.0, эта директива означает, что код все равно будет составить против .NET 1.1, так как новая ссылка не будет скомпилирована.
Другие советы
Тот Самый System.Runtime.InteropServices.ComType
был представлен в .NET Framework версии 2.0.Похоже, что код пытается быть совместимым с версией фреймворка 1.1, только объявляя using
оператор в этом пространстве имен, если версия, для которой компилируется, не является 1.1.
Если вы сделаете Поиск в Google по USING_NET11, вы обнаружите, что это указывает на большое количество управляемого кода DirectX.