CString strFileName; //需要更新的文件名
CString strDownFile; //需要更新的文件名全路径
CString g_strOldUpdater;//命名后更新器全路径 A.exe -> A_old.exe
//若是更新器自己,则将自己改名
if (strFileName.Compare("CustomUpdateFileName") == 0)
{
//若旧文件存在,则删之
if (::GetFileAttributes(g_strOldUpdater) != -1)::DeleteFile(g_strOldUpdater);
//将当前更新器文件改名,改名后的进程依然能够继续运行(此时的strDownFile就是需要下载的更新器全路径)
//MOVEFILE_WRITE_THROUGH表示等待文件操作完成后再返回
: