Probleme programme au démarage de windows

Fermé
TheYoungGeek43 Messages postés 88 Date d'inscription samedi 14 juin 2014 Statut Membre Dernière intervention 1 avril 2017 - 9 août 2016 à 13:25
Bonjour,
J'essaye de faire un programme qui démarre au démarrage de windows sauf que la méthode que j'utilise n'est pas fonctionnel car ça ne prend que la première lettre du chemin d’accès a mon appli par exemple la j'essaye de faire démarrer un programme au démarrage de windows sauf que dans les registre ça ne prend que la première lettre c'est a dire C

#include <windows.h>
#include <string>
#include <iostream>
void main(void)
{
	HKEY hkey;
	std::string	key_name("Aust");
	std::string name_app("DiskDefrag");
	std::string	const app_path("C:\\Program Files\\Auslogics\\DiskDefrag\\DiskDefrag.exe");

	/** Ouvrire le registre */
	LONG ret = RegOpenKeyEx(HKEY_LOCAL_MACHINE,
		"SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run",
		0L,
		KEY_WRITE | KEY_WOW64_64KEY,
		&hkey);

	if (ret == ERROR_SUCCESS)
	{
		/* Mettre le chemin de l'appli */
		ret = RegSetValueEx(hkey,
			key_name.c_str(),
			0,
			REG_SZ,
			reinterpret_cast< const BYTE* >(app_path.c_str()),
			REG_SZ);

		if (ret == ERROR_SUCCESS)
			std::cout << "Set at startup has done successfully" << std::endl;
		else
			std::cerr << "Failed to set at startup" << std::endl;
	}
	else
	{
		std::cerr << "Failed to set at startup" << std::endl;
	}
	std::cout << app_path << std::endl;
	std::cout << reinterpret_cast<const BYTE*>(app_path.c_str()) << std::endl;
	system("PAUSE");
}


quand je lance le programme il me met en chemin C dans le registre
si je met en première lettre un P il me mettra P ect...

Merci pour votre aide