CFile::GetStatus
Esse método retorna o status informações acrescentadas relacionadas à uma determinada instância de um objeto de CFile ou um caminho de arquivo especificado.
BOOL GetStatus(
CFileStatus& rStatus
) const;
static BOOL PASCAL GetStatus(
LPCTSTR lpszFileName,
CFileStatus& rStatus,
CAtlTransactionManager* pTM = NULL
);
Parâmetros
rStatus
Uma referência a uma estrutura de usuário fornecida CFileStatus que recebe informações de status.A estrutura de CFileStatus possui os seguintes valores:CTime m_ctime a data e a hora em que o arquivo foi criado.
CTime m_mtime a data e hora o arquivo foi modificado pela última vez.
CTime m_atime a data e hora o arquivo foi acessado pela última vez de ler.
ULONGLONG m_size lógico o tamanho do arquivo em bytes, como relatados pelo comando de DIR.
BYTE m_attribute o byte de atributos de arquivo.
char m_szFullName[_MAX_PATH] o nome de arquivo absoluto no conjunto de caracteres do windows.
lpszFileName
Uma cadeia de caracteres no conjunto de caracteres do windows que é o caminho para o arquivo desejado.O caminho pode ser relativo ou absoluto, ou pode conter um nome de caminho de rede.pTM
Ponteiro para o objeto de CAtlTransactionManager
Valor de retorno
SeVerdadeiro informações de status para o arquivo especificado é obtida com êxito; caso contrário, Falso.
Comentários
A versão não-estático de GetStatus recupera informações de status abertura de arquivo associado ao objeto dado de CFile .A versão estático de GetStatus obtém o status de arquivo de um caminho de arquivo especificado sem realmente abra o arquivo.Isso é útil para testar a existir e direitos de acesso de um arquivo.
O membro de m_attribute estrutura de CFileStatus refere-se ao atributo de arquivo.A classe fornece CFile do tipo de enumeração de Atributo para que os atributos de arquivo podem ser especificados simbolicamente:
enum Attribute {
normal = 0x00,
readOnly = 0x01,
hidden = 0x02,
system = 0x04,
volume = 0x08,
directory = 0x10,
archive = 0x20
};
Exemplo
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);
}
Requisitos
Cabeçalho: afx.h