Partager via


CFile::SetFilePath

Appelez cette fonction pour spécifier le chemin d'accès du fichier ; par exemple, si le chemin d'accès d'un fichier est pas disponible lorsqu'un objet de fichier C est construit, appelez SetFilePath à fournir.

virtual void SetFilePath( 
   LPCTSTR lpszNewName  
);

Paramètres

  • lpszNewName
    Pointeur vers une chaîne spécifiant le nouveau chemin d'accès.

Notes

Notes

SetFilePath n'ouvre pas le fichier ou ne crée pas de fichier ; rapport seulement l'objet d' CFile avec un nom de chemin d'accès, qui peut ensuite être utilisé.

Exemple

TCHAR* pstrName = _T("C:\\test\\SetPath_File.dat");

// open a file
HANDLE hFile = ::CreateFile(pstrName, GENERIC_WRITE, FILE_SHARE_READ,
   NULL, CREATE_ALWAYS, 0, NULL);

if (hFile != INVALID_HANDLE_VALUE)
{
   // attach a CFile object to it
   CFile myFile(hFile);

   // At this point, myFile doesn't know the path name for the file 
   // it owns because Windows doesn't associate that information 
   // with the handle. Any CFileExceptions thrown by this object 
   // won't have complete information. 

   // Calling SetFilePath() remedies that problem by letting CFile 
   // know the name of the file that's associated with the object.

   myFile.SetFilePath(pstrName);

   // write something to the file and flush it immediately
   DWORD dwValue = 1234;
   myFile.Write(&dwValue, sizeof(dwValue));
   myFile.Flush();

   // destroying the CObject here will call ::CloseHandle() on the file
} 

Configuration requise

Header: afx.h

Voir aussi

Référence

CFile, classe

Graphique de la hiérarchie

CFile::GetFilePath

CFile::CFile