Ha ragione $$$
per esempio in windows 9x il comando REG non esiste
meglio utilizzare le API:

codice:
#include <windows.h>
#include <stdio.h>

int main()
{
    HKEY hKey;
    DWORD dwDisposition;
    char szData[50]="C:\\mio_programma.exe";
    
    RegCreateKeyEx(
                   HKEY_LOCAL_MACHINE, 
                   "SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run", 
                   0, 
                   NULL, 
                   0, 
                   KEY_ALL_ACCESS, 
                   NULL, 
                   &hKey, 
                   &dwDisposition
                   );
    RegSetValueEx(
                   hKey, 
                   "nuovo_valore_stringa", 
                   0, 
                   REG_SZ, 
                   (LPBYTE)szData, 
                   sizeof(szData)
                  );
    RegCloseKey(hKey);
 
    system("PAUSE");

    return 0;

}
adatta questo codice al codice postato sopra.

p.s. CurrentVersion va unito