Retours à la ligne C++

Résolu/Fermé
jenaipasdideepourlenomdutilisate Messages postés 20 Date d'inscription lundi 25 mars 2019 Statut Membre Dernière intervention 10 juillet 2019 - Modifié le 9 juil. 2019 à 22:39
jenaipasdideepourlenomdutilisate Messages postés 20 Date d'inscription lundi 25 mars 2019 Statut Membre Dernière intervention 10 juillet 2019 - 10 juil. 2019 à 17:15
Bonjour à tous !

J'ai créé un programme qui écrie du texte avec la commande keybd_event().
Le problème, c'est que je n'arrive pas comment je pourrais faire un retours a la ligne !
En gros ce que je veux faire c'est ça:

azert
yuiop


et pas:

azert yuiop

Des idées pour m'aider ?
Sachant que si vous avez des solutions avec des combinaisons de touche, je suis preneur : je sais appuyer sur ALT et sur CTRL (en plus des lettres, des chiffres et des symboles).

PS: le PROG écrit sur document text (ou bloc-note c'est la même chose), ce qui fait que je ne peut pas lui faire écrire 10 000 espaces car cela serait beaucoup trop long (et moins propre).

1 réponse

yg_be Messages postés 22730 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 26 avril 2024 1 477
10 juil. 2019 à 10:51
bonjour, peux-tu partager la source de ton programme?
1
jenaipasdideepourlenomdutilisate Messages postés 20 Date d'inscription lundi 25 mars 2019 Statut Membre Dernière intervention 10 juillet 2019 1
10 juil. 2019 à 15:24
Bon, le programme entier faisant 204 ligne, je vous l'ai raccourcie un peu :

#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <stdio.h>
#include <stdlib.h>
#include <windows.h>
#include <stdlib.h>
#include <ctime>

int main(void) {
	 srand(time(NULL));
	for (int p = 0; p < 2; p++) {
	
  int nombre;
 
  for (int i = 0; i < 5; i++) {
      nombre = rand() % 9 + 0;
      printf("%d ", nombre);

  if(nombre==1){
  	keybd_event('a', 0,0 ,0);
}
  if(nombre==2){
  	keybd_event('b', 0,0 ,0);
}
  if(nombre==3){
  	keybd_event('c', 0,0 ,0);
}
  if(nombre==4){
  	keybd_event('d', 0,0 ,0);
}
  if(nombre==5){
  	keybd_event('e', 0,0 ,0);
}
  if(nombre==6){
  	keybd_event('f', 0,0 ,0);
}
  if(nombre==7){
  	keybd_event('g', 0,0 ,0);
}
  if(nombre==8){
  	keybd_event('h', 0,0 ,0);
}
  if(nombre==9){
  	keybd_event('i', 0,0 ,0);
}

  }
  printf("\n");
keybd_event('n', 0,0 ,0);
  
}
keybd_event('A', 0,0 ,0);
keybd_event('£', 0,0 ,0);
keybd_event('¤', 0,0 ,0);
keybd_event('10', 0,0 ,0);
keybd_event('£',0,KEYEVENTF_KEYUP,0);
keybd_event('¤',0,KEYEVENTF_KEYUP,0);
keybd_event('Y', 0,0 ,0);
keybd_event('A', 0,0 ,0);
keybd_event('H', 0,0 ,0);
keybd_event('O', 0,0 ,0);
keybd_event('O', 0,0 ,0);
keybd_event('n', 0,0 ,0);
keybd_event('F', 0,0 ,0);
keybd_event('R', 0,0 ,0);
Sleep(10);
return 0
}
 


Au début, le programme donne un chiffre aléatoire entre 1 et 9 pour écrire le premier caractère de l'adresse mail et l'écrie, puis recommence 5 fois, place un point et recommence puis ajoute @yahoo.fr.

Comme vous pouvez le voire à la ligne 54, le programme appui sur CTRL, puis sur ATL et enfin sur 0 pour pouvoir faire le "@",je maitrise donc ces notions là.

Ce que je veux faire, c'est générer des adresse mail aléatoirement et les écrire sur un document texte. Le probleme, c'est qu'il écrie tout a la suit, et j'aimerais qu'il change de ligne pour plus des simplicité de lecture.
0
jenaipasdideepourlenomdutilisate Messages postés 20 Date d'inscription lundi 25 mars 2019 Statut Membre Dernière intervention 10 juillet 2019 1
10 juil. 2019 à 15:35
Et au passage, comment je pourrait faire pour garder l'adresse mail en mémoire ?
Je le rappelle, ces ligne de code ne sont qu'une partie du programme et j'aimerais bien le stoker dans une variable ou dans quelque chose d'autre afin de pouvoir le réécrire plus tard.
Donc voila:
Comment stoker cette adresse mail fictive et comment la restituer plus tard (en l'écriant, pas en l'affichant) quitte a recommencer le programme ?

Seul contrainte : il faut que l'adresse soit aléatoire ! Je fait tourner ce programme plusieurs fois et j'aimerais avoir es adresses mail différente !
0
yg_be Messages postés 22730 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 26 avril 2024 1 477 > jenaipasdideepourlenomdutilisate Messages postés 20 Date d'inscription lundi 25 mars 2019 Statut Membre Dernière intervention 10 juillet 2019
10 juil. 2019 à 16:16
suggestion pour passer à la ligne:
keybd_event(VK_RETURN,0x1c,0,0);
0
yg_be Messages postés 22730 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 26 avril 2024 1 477 > jenaipasdideepourlenomdutilisate Messages postés 20 Date d'inscription lundi 25 mars 2019 Statut Membre Dernière intervention 10 juillet 2019
10 juil. 2019 à 16:32
Où le programme stockerait-il cette information, et quand la réutiliserait-il?
ta description est très confuse : "quitte a recommencer le programme", "il faut que l'adresse soit aléatoire".
Je suis très surpris par la technique que tu utilises pour écrire dans un fichier: pourquoi utiliser keybd_event et ne pas écrire directement dans le fichier?
0
jenaipasdideepourlenomdutilisate Messages postés 20 Date d'inscription lundi 25 mars 2019 Statut Membre Dernière intervention 10 juillet 2019 1
10 juil. 2019 à 16:46
Ah bon ? On peut le faire ?
En fait, je ne savais pas que l'on pouvait le faire, je n'y avais pas trop pensé : je pouvais écrire comme ça, et cela me suffisais.

Sinon, merci pour la commande: elle fonctionne !
Comme ça, mon ficher texte sera beaucoup plus lisible, merci !

Et du coup, comment je pourrais écrire directement dans le fichier ou stoker l'adresse mail ?
0