Bonjour,
je développe un programme en ligne de commande, pour empecher l'utilisateur d'appuyer sur CTRL-C, j'utilise SetConsoleCtrlHandler() qui récupére CTRL_C_EVENT.
L'évenement est bien capté par le programme, mais le fichier stdin est fermé lors de la combinaison CTRL-C.
Il m'est donc impossible de récupérer des entrées claviers delors qu'un ctrl-c est effectué, j'aimerais que cette combinaison soit tout simplement anhilé.

Voici le bout de code :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
BOOL CtrlHandler(DWORD action)
{ 
	if (action==CTRL_C_EVENT ||action==CTRL_BREAK_EVENT)
	{
		char buf[50];
		if (!(std::cin>>buf))
			std::cout<<"erreur cin";
         }
return TRUE;
}
Dans le main :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
SetConsoleCtrlHandler((PHANDLER_ROUTINE) CtrlHandler, TRUE);
erreur cin est afficher lors du CTRL-C.

Merci