1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85
|
//L'utilisateur effectue un jet de dès et envoie le résultat par email.
void __fastcall TForm1::BitBtnAleaMailClick(TObject *Sender)
{
//Déclare une variable pour y placé le résultat aléatoire.
int ValAlea;
//Envoie pour calcul aléatoire le contenu de sélection de dès.
//Minima 1 et maxima la valeur du ComboBoxDes.
ValAlea = JetDeDes(1, StrToInt(ComboBoxDes->Text));
//Affiche dans LblResultat le résultat seul du dès.
LblResultat->Caption = "Résultat du jet: " + IntToStr(ValAlea);
//Si le champ action est vide
if(EditAction->Text.IsEmpty())
{
//Affiche dans RichEditLog le résultat du dès sans le contenu de EditAction.
RichEditLog->Lines->Add("Vous avez sélectionné le dès " + ComboBoxDes->Text + ".");
RichEditLog->Lines->Add("Résultat: " + IntToStr(ValAlea));
RichEditLog->Lines->Add("");
}
else
{
//Affiche dans RichEditLog le résultat du dès et de l'action avec le contenu de EditAction.
RichEditLog->Lines->Add("Vous avez sélectionné le dès " + ComboBoxDes->Text + ".");
RichEditLog->Lines->Add("Action: " + EditAction->Text + ".");
RichEditLog->Lines->Add("Résultat: " + IntToStr(ValAlea));
RichEditLog->Lines->Add("");
}
/* ************************************************************************************
Initialisation des éléments nécéssaires à l'envoie d'email.
On utilisera IdSMTP -> Indy - Clients qui permet l'envoie d'email.
On utilisera IdMessage -> Indy - Divers qui permet l'écriture du message à envoyer.
/!\ Cette section est isolée et soumise à un maintient permanent du code.
************************************************************************************ */
//Déclaration des variables nécéssaires à la récupération des données nécéssaires à l'envoie d'email.
char MailHost[50], MailPort[50], MailIdentifiant[50], MailMdp[50], MailEmeteur[50], MailRecepteur[50];
char CheminPreferenceIni[100];
//Regarde dans Préférence.ini les données et les affectes aux variables.
AnsiToChar(CheminPreferenceIni, DestPreferenceIni);
GetPrivateProfileString("Mail", "Host", "@", MailHost, sizeof(MailHost), CheminPreferenceIni);
GetPrivateProfileString("Mail", "Port", "@", MailPort, sizeof(MailPort), CheminPreferenceIni);
GetPrivateProfileString("Mail", "Identifiant", "@", MailIdentifiant, sizeof(MailIdentifiant), CheminPreferenceIni);
GetPrivateProfileString("Mail", "MotDePasse", "@", MailMdp, sizeof(MailMdp), CheminPreferenceIni);
GetPrivateProfileString("Mail", "EmailEnvoie", "@", MailEmeteur, sizeof(MailEmeteur), CheminPreferenceIni);
GetPrivateProfileString("Mail", "Emaildestinataire", "@", MailRecepteur, sizeof(MailRecepteur), CheminPreferenceIni);
//On Crée le texte qui sera envoyer par email.
AnsiString TexteMail, SujetMail;
//Sujet du mail.
SujetMail = NomLogiciel + " - Valeur aléatoire transmise par un joueur.";
//Message de l'email.
TexteMail = "Bonjour, \r";
TexteMail += "Ceci est un email qui est envoyer automatiquement par le logiciel " + NomLogiciel + " version " + VersionLogiciel + ". \r";
TexteMail += "Une personne à réaliser un jet de dès: \r\r";
//Si le champ action est vide
if(EditAction->Text.IsEmpty())
{
//Affiche dans le mail le résultat du dès sans le contenu de EditAction.
TexteMail += "Sélection du dès " + ComboBoxDes->Text + ".\r";
TexteMail += "Résultat: " + IntToStr(ValAlea) + ".";
}
else
{
//Affiche dans RichEditLog le résultat du dès et de l'action avec le contenu de EditAction.
TexteMail += "Sélection du dès " + ComboBoxDes->Text + ".\r";
TexteMail += "Action: " + EditAction->Text + ".";
TexteMail += "Résultat: " + IntToStr(ValAlea) + ".";
}
//On envoie vers la fonction l'autorisation de lavcer l'email.
//EnvoieEmail(AnsiString SujetMail, AnsiString Textemail, char HostMail, char PortMail, char IdentifiantMail, char MdpMail, char EmeteurMail, char RecepteurMail)
EnvoieEmail(SujetMail, TexteMail, MailHost, MailPort, MailIdentifiant, MailMdp, MailEmeteur, MailRecepteur);
}
//--------------------------------------------------------------------------- |
Partager