テキスト ファイルを開いてデータを書き込み、ファイルに既に書き込まれているデータの最後にさらにデータを追加しようとしていますが、うまくいきません。私のコードの問題を理解するのを手伝ってくれる人はいますか? コードスニペット:
char buffer[]="Write this text to file";
DWORD dwWritten; // number of bytes written to file
HANDLE hFile;
hFile=CreateFile("file.txt",GENERIC_READ|GENERIC_WRITE,FILE_SHARE_READ|FILE_SHARE_WRITE,0,CREATE_ALWAYS,FILE_ATTRIBUTE_NORMAL,0);
if(hFile==INVALID_HANDLE_VALUE)
{
MessageBox(0,"Could not create/open a file","Error",16);
return 0;
}
WriteFile(hFile,buffer,sizeof(buffer),&dwWritten,0);
DWORD dwPtr = SetFilePointer( hFile, dwWritten, NULL, FILE_END); //set pointer position to end file
WriteFile(hFile,buffer,sizeof(buffer),&dwPtr,NULL);
CloseHandle(hFile);