CFile::GetStatus
Ta metoda pobiera informacje o stanie związane z danym CFile wystąpienie obiektu lub ścieżki pliku.
BOOL GetStatus(
CFileStatus& rStatus
) const;
static BOOL PASCAL GetStatus(
LPCTSTR lpszFileName,
CFileStatus& rStatus,
CAtlTransactionManager* pTM = NULL
);
Parametry
rStatus
Odwołanie do użytkownika dostarczonych CFileStatus strukturę, która będzie otrzymywać informacje o stanie.CFileStatus struktura ma następujące pola:CTime m_ctime datę i godzinę utworzenia pliku.
CTime m_mtime datę i godzinę ostatniej modyfikacji pliku.
CTime m_atime Data i godzina ostatniego dostępu do pliku do odczytu.
ULONGLONG m_size logiczny rozmiar pliku w bajtach, zgłaszanych przez polecenie DIR.
BAJT m_attribute bajt atrybut pliku.
CHAR m_szFullName [_MAX_PATH bezwzględne nazwa_pliku w zestaw znaków systemu Windows.
lpszFileName
Ciąg znaków Windows czyli Ustaw ścieżkę do pliku.Ścieżka może być względna lub bezwzględna lub może zawierać nazwę ścieżki sieciowej.pTM
Wskaźnik do obiektu CAtlTransactionManager
Wartość zwracana
TRUE Jeżeli pomyślnie uzyskano informacje o stanie dla określonego pliku; w przeciwnym razie FALSE.
Uwagi
Wersja-statycznej GetStatus pobiera informacje o stanie otwartego pliku skojarzone z danym CFile obiektu.Statyczne wersję GetStatus uzyska status pliku ze ścieżki pliku bez konieczności otwierania pliku.Jest to przydatne do testowania istnienia i praw dostępu pliku.
M_attribute członek CFileStatus struktury odnosi się do zestawu atrybutów pliku.CFile Zawiera klasy atrybutu wyliczenie wpisz tak atrybuty pliku można określić symbolicznie:
enum Attribute {
normal = 0x00,
readOnly = 0x01,
hidden = 0x02,
system = 0x04,
volume = 0x08,
directory = 0x10,
archive = 0x20
};
Przykład
CFile cfile;
cfile.Open(_T("SetLength_File.dat"), CFile::modeCreate |
CFile::modeReadWrite);
ULONGLONG dwNewLength = 10000;
cfile.SetLength(dwNewLength);
CFileStatus status;
if(cfile.GetStatus(status)) // virtual member function
{
TRACE(_T("File size = %u\n"), status.m_size);
}
TCHAR* pszFileName = _T("SetLength_File.dat");
if(CFile::GetStatus(pszFileName, status)) // static function
{
TRACE(_T("Full file name = %s\n"), status.m_szFullName);
}
Wymagania
Nagłówek: afx.h