BOOL FileReverse(PCTSTR pszPathName)
{
HANDLE hFile = CreateFile(pszPathName,GENERIC_WRITE|
GENERIC_READ,0,NULL
,OPEN_EXISTING,FILE_ATTRIBUTE_NORMAL,NULL);
if(hFile == INVALID_HANDLE_VALUE)
{
printf("File could not be opened.");
return FALSE;
}
DWORD dwFileSize = GetFileSize(hFile,NULL);
HANDLE hFileMap = CreateFileMapping(hFile,NULL,PAGE_READWRITE,0,
dwFileSize+sizeof(char),NULL);
if(hFileMap == NULL){
CloseHandle(hFile);
return FALSE;
}
PVOID pvFile = MapViewOfFile(hFileMap,FILE_MAP_WRITE,0,0,0);
if(pvFile == NULL){
CloseHandle(hFileMap);
CloseHandle(hFile);
return FALSE;
}
PSTR pchAnsi = (PSTR)pvFile;
pchAnsi[dwFileSize/sizeof(char)]=0;
_strrev(pchAnsi);
pchAnsi = strchr(pchAnsi,'');
while(pchAnsi != NULL){
*pchAnsi++ ='';
*pchAnsi++ ='';
pchAnsi = strchr(pchAnsi,'');
}
UnmapViewOfFile(pvFile);
CloseHandle(hFileMap);
SetFilePointer(hFile,dwFileSize,NULL,FILE_BEGIN);
评论0
最新资源