Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
No componente de provedor de exemplo, um exemplo de código do analisador de caminho de serviço de diretório está em Parse.cpp. O analisador de caminho é um componente chave nos componentes do provedor de ADs. Ele verifica a validade sintática de um caminho de ADs passado para esse provedor. Se a sintaxe for válida, uma estrutura de OBJECTINFO será construída, que contém uma versão componentizada do ADspath para esse objeto.
Lembre-se de que isso é apenas uma verificação de sintaxe. Em vez de casos especiais a cada nova iteração de caminho, toda a verificação de caminho deve estar em conformidade com as regras gramaticais estabelecidas pelo analisador.
A tabela a seguir lista as funções e métodos implementados em Parse.cpp.
| Número | Descrição |
|---|---|
| ADsObject | Analisa o ADspath passado para ele. Esta função segue as seguintes regras gramaticais: <ADsObject> -><ProviderName><SampleDSObject> |
| SampleDSObject | Analisa as seguintes regras gramaticais: <SampleDSObject> -> identificador de <"\\"> "\" <Pathname> |
| ProviderName | Adiciona o nome do provedor sintaticamente correto, se não estiver lá. |
| PathName | Analisa as seguintes regras gramaticais: <Pathname> -><Component> "\\" <Pathname> OR <Pathname> -> de componentes>< |
| de componentes | Analisa as seguintes regras gramaticais: <Identificador> OU <Identificador> "=" <Identificador> |
| CLexer::CLexer | Construtor padrão. |
| CLexer::~CLexer | Destruidor padrão. |
| CLexer::GetNextToken | Tokenizador. |
| CLexer::NextChar | Recupera o próximo caractere único. |
| CLexer::P ushBackToken | Faz backup até o início do último token. |
| CLexer::P ushbackChar | Faz backup de um personagem. |
| CLexer::IsKeyword | Verifica a lista de palavras-chave. Definido em Globals.h). |
| AddComponent | Adiciona esse componente à matriz de componentes. |
| AddProviderName | Adiciona um nome de provedor sintaticamente correto à estrutura OBJECTINFO. |
| AddRootRDN | Adiciona o nome RDN (nome distinto relativo da raiz) sintaticamente correto à estrutura OBJECTINFO. |
| SetType | Define o tipo do objeto. |
| Tipo | Parses Type-> "usuário" | "grupo" e assim por diante. |