StartupThroughRegistry

StartupThroughRegistry

Useage:

#pragma lib <shell32.lib>
#pragma lib <ole32.lib>
#pragma lib <uuid.lib>

StartupThruRegistry("c:\\myapp.exe");

BOOL StartupThroughRegistry(char * pFileName)
{
    DWORD rc;
    DWORD length = sizeof(pFileName);
    DWORD type = REG_SZ;
    HKEY hkey;

    rc = RegOpenKeyEx(HKEY_CURRENT_USER, // Can also use HKEY_LOCAL_MACHINE
            "Software\\Microsoft\\Windows\\CurrentVersion\\Run",
            0, KEY_READ, &hkey);

    if (rc == ERROR_SUCCESS){
        rc = RegSetValueEx(hkey, "Startup", 0,
                type, (char*) pFileName, length);
        RegCloseKey(hkey);
    }

    if (rc == ERROR_SUCCESS)
        return TRUE;
    else
        return FALSE;
}

Back to main page