• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录

博客园    首页    新随笔       管理    订阅  订阅

拷贝自身至系统路径(Win10需要以管理员身份运行,未包含提权代码)

#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;
}

 

posted @ 2021-02-19 02:30  ヤ玥夜ゞ  阅读(171)  评论(0)    收藏  举报
刷新页面返回顶部
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3