Classe CGopherFileFind
Ajuda nas pesquisas de arquivos na Internet de servidores gopher.
Observação
As classes CGopherConnection
, CGopherFile
, CGopherFileFind
, CGopherLocator
e seus membros foram preteridos porque não funcionam na plataforma Windows XP, mas continuarão a funcionar em plataformas anteriores.
Sintaxe
class CGopherFileFind : public CFileFind
Membros
Construtores públicos
Nome | Descrição |
---|---|
CGopherFileFind::CGopherFileFind | Constrói um objeto CGopherFileFind . |
Métodos públicos
Nome | Descrição |
---|---|
CGopherFileFind::FindFile | Localiza um arquivo em um servidor gopher. |
CGopherFileFind::FindNextFile | Continua uma pesquisa de arquivo de uma chamada anterior para FindFile. |
CGopherFileFind::GetCreationTime | Obtém a hora em que o arquivo foi criado. |
CGopherFileFind::GetLastAccessTime | Obtém a hora em que o arquivo especificado foi acessado pela última vez. |
CGopherFileFind::GetLastWriteTime | Obtém a hora em que o arquivo especificado foi gravado pela última vez. |
CGopherFileFind::GetLength | Obtém o tamanho do arquivo encontrado, em bytes. |
CGopherFileFind::GetLocator | Obter um objeto CGopherLocator . |
CGopherFileFind::GetScreenName | Obtém o nome de uma tela gopher. |
CGopherFileFind::IsDots | Testa o diretório atual e os marcadores de diretório pai durante a iteração pelos arquivos. |
Comentários
CGopherFileFind
inclui funções membro que iniciam uma pesquisa, localizam um arquivo e retornam a URL de um arquivo.
Outras classes MFC projetadas para Internet e arquivo local pesquisadas incluem CFtpFileFind e CFileFind. Juntamente com CGopherFileFind
, essas classes fornecem um mecanismo contínuo para o usuário localizar arquivos específicos, independentemente do protocolo do servidor, tipo de arquivo ou local (uma máquina local ou um servidor remoto). Observe que não há classe MFC para pesquisando em servidores HTTP porque o HTTP não suporta a manipulação direta de arquivos exigida pelas pesquisas.
Observação
CGopherFileFind
não oferece suporte às seguintes funções membro de sua classe base CFileFind:
Além disso, quando usado com CGopherFileFind
a CFileFind
função membro IsDots é sempre FALSE.
Para obter mais informações sobre como usar CGopherFileFind
e outras classes de WinInet, consulte o artigo Programação de Internet com WinInet.
Hierarquia de herança
CGopherFileFind
Requisitos
Cabeçalho: afxinet.h
CGopherFileFind::CGopherFileFind
Essa função membro é chamada para construir um objeto CGopherFileFind
.
explicit CGopherFileFind(
CGopherConnection* pConnection,
DWORD_PTR dwContext = 1);
Parâmetros
pConnection
Um ponteiro para um objeto CGopherConnection.
dwContext
O identificador de contexto da operação. Confira Comentários para obter mais informações sobre dwContext.
Comentários
O valor padrão para dwContext é enviado pelo MFC para o objeto CGopherFileFind
do objeto CInternetSession que criou o objeto CGopherFileFind
. Ao construir um objeto CGopherFileFind
, você pode substituir o padrão para definir o identificador de contexto para um valor de sua escolha. O identificador de contexto retorna para CInternetSession::OnStatusCallback para fornecer status sobre o objeto com o qual é identificado. Confira o artigo Primeiras etapas da Internet: WinInet para mais informações sobre o identificador de contexto.
CGopherFileFind::FindFile
Chame essa função membro para encontrar um arquivo gopher.
virtual BOOL FindFile(
CGopherLocator& refLocator,
LPCTSTR pstrString,
DWORD dwFlags = INTERNET_FLAG_RELOAD);
virtual BOOL FindFile(
LPCTSTR pstrString,
DWORD dwFlags = INTERNET_FLAG_RELOAD);
Parâmetros
refLocator
Uma referência a um objeto CGopherLocator.
pstrString
Um ponteiro para uma cadeia de caracteres que contém o nome do arquivo.
dwFlags
Os sinalizadores que descrevem como lidar com essa sessão. Os sinalizadores válidos são:
INTERNET_FLAG_RELOAD Obtenha os dados do servidor remoto mesmo que sejam armazenados em cache localmente.
INTERNET_FLAG_DONT_CACHE Não armazene os dados em cache nem localmente, nem em gateway.
INTERNET_FLAG_SECURE Solicite transações seguras na transmissão com Secure Sockets Layer ou PCT. Esse sinalizador é aplicável somente a solicitações HTTP.
INTERNET_FLAG_USE_EXISTING Se possível, reutilize as conexões existentes com o servidor para novas solicitações
FindFile
, em vez de criar uma nova sessão para cada solicitação.
Valor de retorno
Diferente de zero se tiver êxito; caso contrário, 0. Para obter informações de erro estendidas, chame a função GetLastError do Win32.
Comentários
Depois de chamar FindFile
para recuperar o primeiro objeto gopher, você pode chamar FindNextFile para recuperar arquivos gopher subsequentes.
CGopherFileFind::FindNextFile
Chame essa função membro para continuar uma pesquisa de arquivo iniciada com uma chamada para CGopherFileFind::FindFile.
virtual BOOL FindNextFile();
Valor de retorno
Diferente de zero se houver mais arquivos, zero se o arquivo encontrado for o último no diretório ou se ocorreu um erro. Para obter informações de erro estendidas, chame a função GetLastError do Win32. Se o arquivo encontrado for o último arquivo no diretório ou se nenhum arquivo correspondente puder ser encontrado, a função GetLastError
retornará ERROR_NO_MORE_FILES.
CGopherFileFind::GetCreationTime
Obtém a hora de criação do arquivo atual.
virtual BOOL GetCreationTime(FILETIME* pTimeStamp) const;
virtual BOOL GetCreationTime(CTime& refTime) const;
Parâmetros
pTimeStamp
Um ponteiro para uma estrutura FILETIME que contém a hora em que o arquivo foi criado.
refTime
Uma referência a um objeto CTime.
Valor de retorno
Um valor diferente de zero, se tiver êxito. 0, se falhar. GetCreationTime
retorna 0 somente se FindNextFile nunca foi chamado neste objeto CGopherFileFind
.
Comentários
Você deve chamar FindNextFile pelo menos uma vez antes de chamar GetCreationTime
.
Observação
Nem todos os sistemas de arquivos usam a mesma semântica para implementar o carimbo de data/hora retornado por essa função. Essa função pode retornar o mesmo valor retornado por outras funções de carimbo de data/hora, se o sistema de arquivos ou servidor subjacente não permitir a manutenção do atributo de hora. Consulte a estrutura WIN32_FIND_DATA para obter informações sobre formatos de hora. Em alguns sistemas operacionais, a hora retornada está no fuso horário local da máquina em que o arquivo está localizado. Consulte a API Win32 FileTimeToLocalFileTime para obter mais informações.
CGopherFileFind::GetLastAccessTime
Obtém a hora em que o arquivo especificado foi acessado pela última vez.
virtual BOOL GetLastAccessTime(CTime& refTime) const;
virtual BOOL GetLastAccessTime(FILETIME* pTimeStamp) const;
Parâmetros
refTime
Uma referência a um objeto CTime.
pTimeStamp
Um ponteiro para uma estrutura FILETIME que contém a hora em que o arquivo foi acessado pela última vez.
Valor de retorno
Um valor diferente de zero, se tiver êxito. 0, se falhar. GetLastAccessTime
retorna 0 somente se FindNextFile nunca foi chamado neste objeto CGopherFileFind
.
Comentários
Você deve chamar FindNextFile pelo menos uma vez antes de chamar GetLastAccessTime
.
Observação
Nem todos os sistemas de arquivos usam a mesma semântica para implementar o carimbo de data/hora retornado por essa função. Essa função pode retornar o mesmo valor retornado por outras funções de carimbo de data/hora, se o sistema de arquivos ou servidor subjacente não permitir a manutenção do atributo de hora. Consulte a estrutura WIN32_FIND_DATA para obter informações sobre formatos de hora. Em alguns sistemas operacionais, a hora retornada está no fuso horário local da máquina em que o arquivo está localizado. Consulte a API Win32 FileTimeToLocalFileTime para obter mais informações.
CGopherFileFind::GetLastWriteTime
Obtém a última vez que o arquivo foi alterado.
virtual BOOL GetLastWriteTime(FILETIME* pTimeStamp) const;
virtual BOOL GetLastWriteTime(CTime& refTime) const;
Parâmetros
pTimeStamp
Um ponteiro para uma estrutura FILETIME contendo a hora em que o arquivo foi gravado pela última vez.
refTime
Uma referência a um objeto CTime.
Valor de retorno
Um valor diferente de zero, se tiver êxito. 0, se falhar. GetLastWriteTime
retorna 0 somente se FindNextFile nunca foi chamado neste objeto CGopherFileFind
.
Comentários
Você deve chamar FindNextFile pelo menos uma vez antes de chamar GetLastWriteTime
.
Observação
Nem todos os sistemas de arquivos usam a mesma semântica para implementar o carimbo de data/hora retornado por essa função. Essa função pode retornar o mesmo valor retornado por outras funções de carimbo de data/hora, se o sistema de arquivos ou servidor subjacente não permitir a manutenção do atributo de hora. Consulte a estrutura WIN32_FIND_DATA para obter informações sobre formatos de hora. Em alguns sistemas operacionais, a hora retornada está no fuso horário local da máquina em que o arquivo está localizado. Consulte a API Win32 FileTimeToLocalFileTime para obter mais informações.
CGopherFileFind::GetLength
Chame essa função membro para obter o comprimento, em bytes, do arquivo encontrado.
virtual ULONGLONG GetLength() const;
Valor de retorno
O tamanho, em bytes, do arquivo encontrado.
Comentários
GetLength
usa a estrutura Win32 WIN32_FIND_DATA para obter o valor do tamanho do arquivo em bytes.
Observação
A partir do MFC 7.0, GetLength
dá suporte a tipos de inteiros de 64 bits. O código existente anteriormente, criado com essa versão mais recente da biblioteca, pode resultar em avisos de truncamento.
Exemplo
Consulte o exemplo para CFile::GetLength (a implementação da classe base).
CGopherFileFind::GetLocator
Chame essa função membro para obter o objeto CGopherLocator que FindFile usa para localizar o arquivo gopher.
CGopherLocator GetLocator() const;
Valor de retorno
Um objeto CGopherLocator
.
CGopherFileFind::GetScreenName
Chame essa função membro para obter o nome da tela gopher.
CString GetScreenName() const;
Valor de retorno
O nome da tela gopher.
CGopherFileFind::IsDots
Testa o diretório atual e os marcadores de diretório pai durante a iteração pelos arquivos.
virtual BOOL IsDots() const;
Valor de retorno
Um valor diferente de zero, se o arquivo encontrado tiver o nome "." ou "..", o que indica que o arquivo encontrado é, na verdade, um diretório. Caso contrário, 0.
Comentários
Você deve chamar FindNextFile pelo menos uma vez antes de chamar IsDots
.
Confira também
Classe CFileFind
Gráfico da hierarquia
Classe CFtpFileFind
Classe CFileFind
Classe CInternetFile
Classe CGopherFile
Classe CHttpFile