#include <Windows.h>
#include <iostream>
#include <tchar.h>
#include <shlwapi.h>
#pragma comment(lib,"shlwapi.lib")
int main()
{
    //1.获取自身路径
    TCHAR szSelfFileName[MAX_PATH] = {}; //自身路径
    GetModuleFileName(nullptr,szSelfFileName,MAX_PATH);//获取自身路径
    //2.获取系统路径 C://windows
    TCHAR szWindowPath[MAX_PATH] = {};
    GetWindowsDirectory(szWindowPath,MAX_PATH);
    TCHAR szSystemPath[MAX_PATH] = {}; //system32
    GetSystemDirectory(szSystemPath,MAX_PATH);
    //3.复制
    StrCatW(szWindowPath,L"\\Demo.exe");//不写\\,会变成C:\\WindowsDemo.exe
    DWORD dwError;
    if(0 == CopyFile(szSelfFileName,//需要复制的文件
        szWindowPath,//需要复制到的目录
        TRUE //如果目标已经存在,不复制(TRUE),覆盖目标(FALSE) 
        ))
    {
        dwError = GetLastError();
        printf("%d\n",dwError);
    }
    return 0;
}