Personalizando quais objetos estão disponíveis em My (Visual Basic)
Este tópico descreve como você pode controlar quais My
objetos são habilitados definindo a constante de compilação condicional do _MYTYPE
projeto. O Visual Studio Integrated Development Environment (IDE) mantém a _MYTYPE
compilação condicional constante para um projeto em sincronia com o tipo do projeto.
Valores de _MYTYPE predefinidos
Você deve usar a /define
opção do compilador para definir a _MYTYPE
constante de compilação condicional. Ao especificar seu próprio valor para a _MYTYPE
constante, você deve incluir o valor da cadeia de caracteres em sequências de barra invertida/aspas (\"). Por exemplo, você pode usar:
/define:_MYTYPE=\"WindowsForms\"
Esta tabela mostra como a _MYTYPE
constante de compilação condicional é definida para vários tipos de projeto.
Tipo de projeto | Valor _MYTYPE |
---|---|
Class Library | "Janelas" |
Aplicação de Consola | "Consola" |
Web | "Web" |
Biblioteca de controle da Web | "Controlo Web" |
Aplicação do Windows | "WindowsForms" |
Aplicativo do Windows, ao iniciar com personalizado Sub Main |
"WindowsFormsWithCustomSubMain" |
Biblioteca de Controlo do Windows | "Janelas" |
Serviço Windows | "Consola" |
Vazio | "Vazio" |
Nota
Todas as comparações de cadeia de caracteres de compilação condicional diferenciam maiúsculas de minúsculas, independentemente de como a Option Compare
instrução é definida.
Constantes de compilação _MY dependentes
A _MYTYPE
constante de compilação condicional, por sua vez, controla os valores de várias outras _MY
constantes de compilação:
_MYTYPE | _MYAPPLICATIONTYPE | _MYCOMPUTERTYPE | _MYFORMS | _MYUSERTYPE | _MYWEBSERVICES |
---|---|---|---|---|---|
"Consola" | "Consola" | "Janelas" | Não definido | "Janelas" | TRUE |
"Personalizado" | Não definido | Não definido | Não definido | Não definido | Não definido |
"Vazio" | Não definido | Não definido | Não definido | Não definido | Não definido |
"Web" | Não definido | "Web" | FALSE | "Web" | FALSE |
"Controlo Web" | Não definido | "Web" | FALSE | "Web" | TRUE |
"Windows" ou "" | "Janelas" | "Janelas" | Não definido | "Janelas" | TRUE |
"WindowsForms" | "WindowsForms" | "Janelas" | TRUE | "Janelas" | TRUE |
"WindowsFormsWithCustomSubMain" | "Consola" | "Janelas" | TRUE | "Janelas" | TRUE |
Por padrão, constantes de compilação condicional indefinidas resolvem para FALSE
. Você pode especificar valores para as constantes indefinidas ao compilar seu projeto para substituir o comportamento padrão.
Nota
Quando _MYTYPE
é definido como "Custom", o projeto contém o My
namespace, mas não contém objetos. No entanto, a configuração _MYTYPE
como "Vazio" impede que o compilador adicione o My
namespace e seus objetos.
Esta tabela descreve os efeitos dos valores predefinidos das _MY
constantes de compilação.
Constante | Significado |
---|---|
_MYAPPLICATIONTYPE |
Habilita My.Application , se a constante for "Console", Windows" ou "WindowsForms":- A versão "Console" deriva de ConsoleApplicationBase. e tem menos membros do que a versão "Windows". - A versão "Windows" deriva de ApplicationBase.and tem menos membros do que a versão "WindowsForms". - A versão "WindowsForms" deriva My.Application de WindowsFormsApplicationBase. Se a TARGET constante é definida como "winexe", então a classe inclui um Sub Main método. |
_MYCOMPUTERTYPE |
Habilita My.Computer , se a constante for "Web" ou "Windows":- A versão "Web" deriva de ServerComputer, e tem menos membros do que a versão "Windows". - A versão "Windows" deriva My.Computer de Computer. |
_MYFORMS |
Habilita My.Forms , se a constante for TRUE . |
_MYUSERTYPE |
Habilita My.User , se a constante for "Web" ou "Windows":- A versão "Web" do My.User está associada à identidade do usuário da solicitação HTTP atual.- A versão "Windows" do My.User está associada ao principal atual do thread. |
_MYWEBSERVICES |
Habilita My.WebServices , se a constante for TRUE . |
_MYTYPE |
Habilita My.Log , My.Request , e My.Response , se a constante for "Web". |