Класс CGopherFileFind
Помогает в поиске файлов Интернета на серверах gopher.
Примечание.
Классы CGopherConnection
, CGopherFile
CGopherFileFind
CGopherLocator
и их члены были нерекомендуемы, поскольку они не работают на платформе Windows XP, но они будут продолжать работать на более ранних платформах.
Синтаксис
class CGopherFileFind : public CFileFind
Участники
Открытые конструкторы
Имя | Описание |
---|---|
CGopherFileFind::CGopherFileFind | Формирует объект CGopherFileFind . |
Открытые методы
Имя | Описание |
---|---|
CGopherFileFind::FindFile | Находит файл на сервере gopher. |
CGopherFileFind::FindNextFile | Продолжает поиск файла из предыдущего вызова FindFile. |
CGopherFileFind::GetCreationTime | Возвращает время создания указанного файла. |
CGopherFileFind::GetLastAccessTime | Возвращает время последнего доступа к указанному файлу. |
CGopherFileFind::GetLastWriteTime | Возвращает время последнего записи указанного файла. |
CGopherFileFind::GetLength | Возвращает длину найденного файла в байтах. |
CGopherFileFind::GetLocator | CGopherLocator Получение объекта. |
CGopherFileFind::GetScreenName | Возвращает имя экрана gopher. |
CGopherFileFind::IsDots | Проверяет текущие маркеры каталога и родительского каталога при итерации файлов. |
Замечания
CGopherFileFind
включает функции-члены, начинающие поиск, поиск файла и возвращающие URL-адрес файла.
Другие классы MFC, предназначенные для поиска в Интернете и локальном файле, включают CFtpFileFind и CFileFind. Вместе с CGopherFileFind
этими классами можно легко найти определенные файлы, независимо от протокола сервера, типа файла или расположения (локального компьютера или удаленного сервера). Обратите внимание, что нет класса MFC для поиска на HTTP-серверах, так как HTTP не поддерживает прямую обработку файлов, необходимую для поиска.
Примечание.
CGopherFileFind
не поддерживает следующие функции-члены базового класса CFileFind:
Кроме того, при использовании с CGopherFileFind
CFileFind
функцией-членом IsDots всегда имеет значение FALSE.
Дополнительные сведения об использовании CGopherFileFind
и других классах WinInet см. в статье "Интернет-программирование с помощью WinInet".
Иерархия наследования
CGopherFileFind
Требования
Заголовок: afxinet.h
CGopherFileFind::CGopherFileFind
Эта функция-член вызывается для создания CGopherFileFind
объекта.
explicit CGopherFileFind(
CGopherConnection* pConnection,
DWORD_PTR dwContext = 1);
Параметры
pConnection
Указатель на объект CGopherConnection .
dwContext
Идентификатор контекста для операции. Дополнительные сведения о dwContext см. в примечаниях.
Замечания
Значение по умолчанию для dwContext отправляется MFC CGopherFileFind
объекту из объекта CInternetSession , создавшего CGopherFileFind
объект. При создании CGopherFileFind
объекта можно переопределить значение по умолчанию, чтобы задать идентификатор контекста для выбранного значения. Идентификатор контекста возвращается в CInternetSession::OnStatusCallback , чтобы предоставить состояние объекта, с которым он определен. Дополнительные сведения об идентификаторе контекста см. в статье Internet First Steps: WinInet .
CGopherFileFind::FindFile
Вызовите эту функцию-член, чтобы найти gopher-файл.
virtual BOOL FindFile(
CGopherLocator& refLocator,
LPCTSTR pstrString,
DWORD dwFlags = INTERNET_FLAG_RELOAD);
virtual BOOL FindFile(
LPCTSTR pstrString,
DWORD dwFlags = INTERNET_FLAG_RELOAD);
Параметры
Рефлокатор
Ссылка на объект CGopherLocator .
pstrString
Указатель на строку, содержащую имя файла.
dwFlags
Флаги, описывающие обработку этого сеанса. Допустимые флаги:
INTERNET_FLAG_RELOAD Получить данные с удаленного сервера, даже если он кэшируется локально.
INTERNET_FLAG_DONT_CACHE Не кэшируйте данные локально или в шлюзах.
INTERNET_FLAG_SECURE запрашивать безопасные транзакции по проводу с помощью уровня Secure Sockets или PCT. Этот флаг применим только к HTTP-запросам.
INTERNET_FLAG_USE_EXISTING По возможности повторно используйте существующие подключения к серверу для новых
FindFile
запросов вместо создания нового сеанса для каждого запроса.
Возвращаемое значение
Имеет ненулевое значение в случае успешного выполнения, иначе — 0. Чтобы получить расширенные сведения об ошибке, вызовите функцию Win32 GetLastError.
Замечания
После вызова FindFile
для получения первого объекта gopher можно вызвать FindNextFile , чтобы получить последующие файлы шифров.
CGopherFileFind::FindNextFile
Вызовите эту функцию-член, чтобы продолжить поиск файлов, начинающийся с вызова CGopherFileFind::FindFile.
virtual BOOL FindNextFile();
Возвращаемое значение
Ненулевое значение, если есть больше файлов; ноль, если найденный файл является последним в каталоге или произошла ошибка. Чтобы получить расширенные сведения об ошибке, вызовите функцию Win32 GetLastError. Если найденный файл является последним файлом в каталоге или если не удается найти соответствующие файлы, GetLastError
функция возвращает ERROR_NO_MORE_FILES.
CGopherFileFind::GetCreationTime
Возвращает время создания текущего файла.
virtual BOOL GetCreationTime(FILETIME* pTimeStamp) const;
virtual BOOL GetCreationTime(CTime& refTime) const;
Параметры
pTimeStamp
Указатель на структуру FILETIME , содержащую время создания файла.
refTime
Ссылка на объект CTime .
Возвращаемое значение
Ненулевое значение при успешном выполнении; 0, если неудачно. GetCreationTime
возвращает значение 0, только если FindNextFile никогда не вызывался для этого CGopherFileFind
объекта.
Замечания
Перед вызовом GetCreationTime
необходимо вызвать FindNextFile по крайней мере один раз.
Примечание.
Не все файловые системы используют ту же семантику для реализации метки времени, возвращаемой этой функцией. Эта функция может возвращать то же значение, возвращаемое другими функциями метки времени, если базовая файловая система или сервер не поддерживает сохранение атрибута времени. Сведения о форматах времени см. в структуре WIN32_FIND_DATA . В некоторых операционных системах возвращенное время находится в локальном часовом поясе компьютера, где находится файл. Дополнительные сведения см. в API Win32 FileTimeToLocalFileTime .
CGopherFileFind::GetLastAccessTime
Возвращает время последнего доступа к указанному файлу.
virtual BOOL GetLastAccessTime(CTime& refTime) const;
virtual BOOL GetLastAccessTime(FILETIME* pTimeStamp) const;
Параметры
refTime
Ссылка на объект CTime .
pTimeStamp
Указатель на структуру FILETIME , содержащую время последнего доступа к файлу.
Возвращаемое значение
Ненулевое значение при успешном выполнении; 0, если неудачно. GetLastAccessTime
возвращает значение 0, только если FindNextFile никогда не вызывался для этого CGopherFileFind
объекта.
Замечания
Перед вызовом GetLastAccessTime
необходимо вызвать FindNextFile по крайней мере один раз.
Примечание.
Не все файловые системы используют ту же семантику для реализации метки времени, возвращаемой этой функцией. Эта функция может возвращать то же значение, возвращаемое другими функциями метки времени, если базовая файловая система или сервер не поддерживает сохранение атрибута времени. Сведения о форматах времени см. в структуре WIN32_FIND_DATA . В некоторых операционных системах возвращенное время находится в локальном часовом поясе компьютера, где находится файл. Дополнительные сведения см. в API Win32 FileTimeToLocalFileTime .
CGopherFileFind::GetLastWriteTime
Возвращает последний раз, когда файл был изменен.
virtual BOOL GetLastWriteTime(FILETIME* pTimeStamp) const;
virtual BOOL GetLastWriteTime(CTime& refTime) const;
Параметры
pTimeStamp
Указатель на структуру FILETIME , содержащую время последнего записи файла.
refTime
Ссылка на объект CTime .
Возвращаемое значение
Ненулевое значение при успешном выполнении; 0, если неудачно. GetLastWriteTime
возвращает значение 0, только если FindNextFile никогда не вызывался для этого CGopherFileFind
объекта.
Замечания
Перед вызовом GetLastWriteTime
необходимо вызвать FindNextFile по крайней мере один раз.
Примечание.
Не все файловые системы используют ту же семантику для реализации метки времени, возвращаемой этой функцией. Эта функция может возвращать то же значение, возвращаемое другими функциями метки времени, если базовая файловая система или сервер не поддерживает сохранение атрибута времени. Сведения о форматах времени см. в структуре WIN32_FIND_DATA . В некоторых операционных системах возвращенное время находится в локальном часовом поясе компьютера, где находится файл. Дополнительные сведения см. в API Win32 FileTimeToLocalFileTime .
CGopherFileFind::GetLength
Вызовите эту функцию-член, чтобы получить длину в байтах найденного файла.
virtual ULONGLONG GetLength() const;
Возвращаемое значение
Длина найденного файла в байтах.
Замечания
GetLength
использует структуру Win32 WIN32_FIND_DATA для получения значения размера файла в байтах.
Примечание.
По состоянию на MFC 7.0 поддерживает GetLength
64-разрядные целые типы. Ранее существующий код, созданный с помощью этой более новой версии библиотеки, может привести к усечению предупреждений.
Пример
См. пример для CFile::GetLength (реализация базового класса).
CGopherFileFind::GetLocator
Вызовите эту функцию-член, чтобы получить объект CGopherLocator , который FindFile использует для поиска файла gopher.
CGopherLocator GetLocator() const;
Возвращаемое значение
Объект CGopherLocator
.
CGopherFileFind::GetScreenName
Вызовите эту функцию-член, чтобы получить имя экрана gopher.
CString GetScreenName() const;
Возвращаемое значение
Имя экрана гофера.
CGopherFileFind::IsDots
Проверяет текущие маркеры каталога и родительского каталога при итерации файлов.
virtual BOOL IsDots() const;
Возвращаемое значение
Ненулевое значение, если найденный файл имеет имя "." или "..", указывающее, что найденный файл фактически является каталогом. В противном случае 0.
Замечания
Перед вызовом IsDots
необходимо вызвать FindNextFile по крайней мере один раз.
См. также
Класс CFileFind
Диаграмма иерархии
Класс CFtpFileFind
Класс CFileFind
Класс CInternetFile
Класс CGopherFile
Класс CHttpFile