Nrj.be : gagner des points

Description

Récemment je me suis inscrit sur Nrj.be pour essayer de gagner des cadeaux gratuitement. Leur principe est que plus tu consultes leur site plus tu gagnes de points. ( plus tu as de points plus tu as de chances de gagner ).
Tous les x chargements de page Nrj ( aléatoire ), tu dois cliquer sur une images te disant que tu gagnes 200 points si tu cliques dessus. Cependant il est fastidieux de devoir toujours cliquer sur cette image. C'est pourquoi j'ai créé un programme approprié.

Le principe est simple, vous disposez de l'adsl et vous ne devez pas travailler sur votre pc ? alors lancer Internet, allez sur le site Nrj.be placer votre curseur de souris sur l'image & le tour est joué. Ainsi vous gagnez des points tout en faisant autre chose.

Si vous n'avez pas compris, allez sur Nrj.be & inscrivez-vous.

Source / Exemple :


unit Principale;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  ExtCtrls, ShellApi, IniFiles, Menus, StdCtrls;

type
  TForm_Principale = class(TForm)
    Timer2: TTimer;
    Btn_Stop: TButton;
    PopupMenu1: TPopupMenu;
    Menu_Plus: TMenuItem;
    Menu_Moins: TMenuItem;
    Menu_Clic_Time: TMenuItem;
    N1: TMenuItem;
    Menu_Defaut: TMenuItem;
    procedure FormCreate(Sender: TObject);
    procedure Timer2Timer(Sender: TObject);
    procedure Btn_StopClick(Sender: TObject);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure Menu_PlusClick(Sender: TObject);
    procedure Menu_MoinsClick(Sender: TObject);
    procedure Menu_DefautClick(Sender: TObject);
  private
    { Déclarations privées }
  public
    { Déclarations publiques }
  end;

var
  Form_Principale: TForm_Principale;
  Cpt, Clic:Byte;
  State:Boolean;
  Fichier_Ini: TIniFile;

implementation

{$R *.DFM}

//Création de la fenêtre & chargement des paramètres
//--------------------------------------------------
procedure TForm_Principale.FormCreate(Sender: TObject);
begin
     Cpt := 0;
     Clic := 7;
     State := False;

     Fichier_Ini := TIniFile.Create(IncludeTrailingBackslash(ExtractFilePath(ParamStr(0))) + 'Lp_Nrj.ini');
     Fichier_Ini.WriteString('NRJ', 'Version', '1.0.0.');

     if Fichier_Ini.SectionExists('Position') then
     begin
          Form_Principale.Left := Fichier_Ini.ReadInteger('Position', 'Left', 0);
          Form_Principale.Top := Fichier_Ini.ReadInteger('Position', 'Top', 0);
     end
     else
         Form_Principale.Position := poScreenCenter;

     if Fichier_Ini.SectionExists('Time') then
     begin
          Clic := Fichier_Ini.ReadInteger('Time', 'Clic', 7);
          State := Fichier_Ini.ReadBool('Time', 'Etat', False);
     end;

     if Clic <= 0 then
        Clic := 1;

     Btn_Stop.Click();
end;

//Fermeture de la fenêtre & mémorisation des paramètres
//-----------------------------------------------------
procedure TForm_Principale.FormClose(Sender: TObject; var Action: TCloseAction);
begin
     Fichier_Ini.WriteInteger('Position', 'Left', Form_Principale.Left);
     Fichier_Ini.WriteInteger('Position', 'Top', Form_Principale.Top);
     Fichier_Ini.WriteInteger('Time', 'Clic', Clic);
     Fichier_Ini.WriteBool('Time', 'Etat', State);
     Fichier_Ini.Free;
end;

//Timer déclenché toutes les secondes s'il est enabled
//----------------------------------------------------
procedure TForm_Principale.Timer2Timer(Sender: TObject);
begin
     Form_Principale.Caption := 'NRJ - ' + IntToStr((Clic - Cpt));

     if Cpt = Clic then
     begin
        mouse_event(MOUSEEVENTF_LEFTDOWN , 0, 0, 0, 0);
        Form_Principale.Caption := 'NRJ - Simule clic';
        sleep(200);
        mouse_event(MOUSEEVENTF_LEFTUP , 0, 0, 0, 0);
     end;
     Cpt := (Cpt + 1) mod (Clic + 1);
end;

//Clic sur le bouton de la fenêtre
//--------------------------------
procedure TForm_Principale.Btn_StopClick(Sender: TObject);
begin
     if State then
     begin
          State := False;
          Btn_Stop.Caption := '&Demarer';
          Form_Principale.Caption := 'NRJ - Stop';
          Cpt := 0;
     end
     else
         begin
              State := True;
              Btn_Stop.Caption := '&Stop';
         end;

     Timer2.Enabled := State;
end;

//Menu +1 : Ajout d'une seconde de delai
//--------------------------------------
procedure TForm_Principale.Menu_PlusClick(Sender: TObject);
begin
     Clic := Clic + 1;
end;

//Menu -1 : Retire une seconde de delai
//-------------------------------------
procedure TForm_Principale.Menu_MoinsClick(Sender: TObject);
begin
     Clic := Clic - 1;
     if Clic <= 0 then
        Clic := 1;
end;

//Menu Defaut : Reconfigure le delai par défaut
//---------------------------------------------
procedure TForm_Principale.Menu_DefautClick(Sender: TObject);
begin
     Clic := 7;
     State := True;
     Btn_Stop.Click();
end;

end.

Conclusion :


Le problème est que vous ne pouvez rien faire sur votre pc pendant que le programme tourne puisque tous les x temps ( paramétrable ), on simule un clic à la position de la souris.
Alors j'invite ceux que cela interesse à produire le même procédé tout en ayant la possibilité de continuer de travailler sur le pc ( mettre l'application en fond de tâches donc ).
Sans doute avec un control WebBrowser, ...

Codes Sources

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.