//корректируем автозагрузку
//ParamName - название параметра, помещаемого в Run
//bErase - удалить параметр(true) или записать (false)
//pModulePath - полный путь к запускаемому приложению
bool static CorrectAutorunInReg(const char* ParamName,const char* pModulePath,bool bErase=false)
{
if(!ParamName || !*ParamName)return false;
if(!pModulePath || !*pModulePath)return false;
//ключ
const char* regpath="Software\\Microsoft\\Windows\\CurrentVersion\\Run";
HKEY k=0;
DWORD dwdRes=RegOpenKeyEx(HKEY_CURRENT_USER,regpath,0,KEY_ALL_ACCESS,&k);
if(dwdRes==ERROR_SUCCESS)
{
if(bErase)
{
RegDeleteValue(k,ParamName);
}
else
{
RegSetValueEx(k,ParamName,0,REG_SZ,(BYTE*)pModulePath,strlen(pModulePath));
}
RegCloseKey(k);
k=0;
}
return true;
}