Personnalisation de la disponibilité ou non des objets dans My (Visual Basic)
Cette rubrique explique comment contrôler quels objets My
sont activés en définissant la constante de compilation conditionnelle _MYTYPE
de votre projet. L’environnement de développement intégré (IDE) Visual Studio maintient la constante de compilation conditionnelle _MYTYPE
d’un projet synchronisée avec le type du projet.
Valeurs _MYTYPE prédéfinies
Vous devez utiliser l’option de compilateur /define
pour définir la constante de compilation conditionnelle _MYTYPE
. Lorsque vous spécifiez votre propre valeur pour la constante _MYTYPE
, vous devez placer la valeur de la chaîne dans des séquences de barre oblique inverse/guillemet (\"). Par exemple, vous pouvez utiliser :
/define:_MYTYPE=\"WindowsForms\"
Ce tableau montre comment la constante de compilation conditionnelle _MYTYPE
est définie pour plusieurs types de projets.
Type de projet | Valeur _MYTYPE |
---|---|
Bibliothèque de classes | « Windows » |
Application console | "Console" |
Web | "Web" |
Bibliothèque de contrôles web | "WebControl" |
Application Windows | "WindowsForms" |
Application Windows, lors du démarrage avec Sub Main personnalisé |
"WindowsFormsWithCustomSubMain" |
Bibliothèque de contrôles Windows | « Windows » |
Service Windows | "Console" |
Vide | "Empty" |
Notes
Toutes les comparaisons de chaînes de compilation conditionnelle respectent la casse, quelle que soit la façon dont l’instruction Option Compare
est définie.
Constantes de compilation _MY dépendantes
La constante de compilation conditionnelle _MYTYPE
contrôle, à son tour, les valeurs de plusieurs autres constantes de compilation _MY
:
_MYTYPE | _MYAPPLICATIONTYPE | _MYCOMPUTERTYPE | _MYFORMS | _MYUSERTYPE | _MYWEBSERVICES |
---|---|---|---|---|---|
"Console" | "Console" | « Windows » | Indéfini | « Windows » | VRAI |
"Custom" | Indéfini | Indéfini | Indéfini | Indéfini | Indéfini |
"Empty" | Indéfini | Indéfini | Indéfini | Indéfini | Indéfini |
"Web" | Indéfini | "Web" | FAUX | "Web" | FAUX |
"WebControl" | Indéfini | "Web" | FAUX | "Web" | VRAI |
"Windows" ou "" | « Windows » | « Windows » | Indéfini | « Windows » | VRAI |
"WindowsForms" | "WindowsForms" | « Windows » | VRAI | « Windows » | VRAI |
"WindowsFormsWithCustomSubMain" | "Console" | « Windows » | VRAI | « Windows » | VRAI |
Par défaut, les constantes de compilation conditionnelle non définies se résolvent en FALSE
. Vous pouvez spécifier des valeurs pour les constantes non définies lors de la compilation de votre projet afin de remplacer le comportement par défaut.
Notes
Quand _MYTYPE
est défini sur "Custom", le projet contient l’espace de noms My
, mais il ne contient aucun objet. Toutefois, la définition de _MYTYPE
sur "Empty" empêche le compilateur d’ajouter l’espace de noms My
et ses objets.
Ce tableau décrit les effets des valeurs prédéfinies des constantes de compilation _MY
.
Constant | Signification |
---|---|
_MYAPPLICATIONTYPE |
Active My.Application , si la constante a la valeur "Console", "Windows" ou "WindowsForms" :- La version "Console" dérive de ConsoleApplicationBase. Elle a moins de membres que la version "Windows". - La version "Windows" dérive de ApplicationBase et elle moins de membres que la version "WindowsForms". - La version "WindowsForms" de My.Application dérive de WindowsFormsApplicationBase. Si la constante TARGET est définie comme étant "winexe", la classe inclut une méthode Sub Main . |
_MYCOMPUTERTYPE |
Active My.Computer , si la constante a la valeur "Web" ou "Windows" :- La version "Web" dérive de ServerComputer et elle moins de membres que la version "Windows". - La version "Windows" de My.Computer dérive de Computer. |
_MYFORMS |
Active My.Forms , si la constante a la valeur TRUE . |
_MYUSERTYPE |
Active My.User , si la constante a la valeur "Web" ou "Windows" :- La version "Web" de My.User est associée à l’identité de l’utilisateur de la requête HTTP actuelle.- La version "Windows" de My.User est associée au principal actuel du thread. |
_MYWEBSERVICES |
Active My.WebServices , si la constante a la valeur TRUE . |
_MYTYPE |
Active My.Log , My.Request et My.Response , si la constante a la valeur "Web". |