• votre commentaire

  • votre commentaire
  • Delphi permet de pouvoir déplacer un formulaire sans bordure grace à n'importe quel contenneur graphique (Form, Panel ...)
    Il suffit de placez le code suivant sur la propriété OnMouseDown du contenneur:


    procedure TForm1.FormMouseDown(Sender: TObject; Button: TMouseButton;
      Shift: TShiftState; X, Y: Integer);
    const
      SC_DRAGMOVE = $F012;
    begin
      if Button = mbLeft then
      begin
        ReleaseCapture;
        Perform(WM_SYSCOMMAND, SC_DRAGMOVE, 0);
      end;
    end;


    votre commentaire
  • Bon !!! J'ai décidé de choisir comme EDI, Borland Delphi 6 Personnal edition.
    Quand je me suis lancé dans la programmation, je ne savait pas par ou commencer. Après des recherches sur le web pour me familiariser avec le monde de la programmation, l'on m'avait très souvant conseillé VB (Visual basic), j'ai donc un peut appris les bases du language en lui même mais je n'arrivais à rien vu que je n'avait aucune version en main : presque pas de connection internet ( + de 700 Mo de téléchargement) alors je me suis tourné vers autre chose de moins lourd à savoir Netbeans de sun java. Mais après avoir formaté mon disque dur, j'ai perdu netbeans.

    Peu après, vu que j'avais quand même un cd de Microsoft office, je me suis mis à apprendre la programmation de base de données, à mon avis, tous ceux qui veulent commencer quelque part doivent commencer par Ms access qui m'a beaucoup aidé. Puis j'ai découvert que ms access avait visual basic ou plutôt Visual basic for application (VBA). je me suis entrainé à créer mes propres bases de données touchant tous les domaines.

    Finalement j'ai eu une bonne connection internet et j'ai fini par trouver Microsoft visual basic express 2005 qui est entièrement gratuit, bon produit. Mais j'avais pas de Winsock dans ma version et je pouvais pas ajouter des composant. Alors j'ai cherché ailleurs.

    En consultant des mémoires de fin d'étude et des thèses, je suis tombé sur le mémoire d'une femme qui avait developpé un bonne application de gestion du*'un hopital sous Delphi. J'ai eu le coup de foudre (heeuuu  pour delphi ).
    Après mes recherches j'ai obtenu Delphi 6 edition personnel ( dispo sur Commentçamarche ), qui est gratuite. C'est une version ancienne mais toujours très utilisée sinon la plus utilisée.

    Cette version étant donnée qu'elle est gratuite ne possède pas de composant d'accès aux données mais vous pouvez installer d'autres composants.

    Bref vous aurez juste besoin de delphi 6.

    Allez consulter les autres pages du blog pour les sources, les objectifs, les captures d'écran , le client serveur sous delphi pour les débutants, et les liens de téléchaargement et autres.


    votre commentaire

  • Ce protocole est mis sur pied pour faciliter la gestion des informations au niveau du codage du serveur << Julie / MGL-01 >>. Il est constitué d’une chaine de caractères disposés de façon ordonnée et lisible par le programmeur et est donc standardisé de part sa forme.
    Ce protocole se forme trois (03) principales parties : La tête ; Le corps ; Les membres.

    1234567890|1234567890|1234567890

    123456789012345678901234567890
    CD........OPEN......D
    CD........CLOSE.....D
    SCREEN....CHANGE_RES1024......768
    KEY.......TOUCH.....A
    MOUSE.....MOVE......2.........2

    La tête : Elle contient les 10 premiers caractères y compris les espaces vides.
    Exemple :       CD........

    Elle sert à identifier les catégories de commandes pour simplifier le regroupement de code et une bonne lecture.

    Le corps : cette partie contient les 10 caractères suivants y compris les espaces vides à savoir du 11ème au 20ème caractère.
    Exemple :       OPEN......

    Elle sert à identifier précisément la fonction appartenant à une catégorie.

    Les membres : cette partie contient les 10 caractères suivants y compris les espaces vides à savoir du 21ème au 30ème caractère.
    Exemple :      D    ou encore 1024......768

    Elle sert à identifier les paramètres de la fonction.

    Exemple de traitement du protocole MGL :

    Protocole :
    123456789012345678901234567890
    CD........OPEN......D
    CD........CLOSE.....D
    SCREEN....CHANGE_RES1024......768
    KEY.......TOUCH.....A
    MOUSE.....MOVE......2.........2

    Code :

    procedure TForm1.ServerSocket1ClientRead(Sender: TObject; Socket: TCustomWinSocket);
    var
      Txt : string;
      Category, Command, Param1, Param2: string;
    begin
     Txt:=Socket.ReceiveText;
     Category := Trim(Copy(Txt, 1, 10));
     Commande := Trim(Copy(Txt, 11, 10));
     
     if Category = 'CD' then
     begin
       if Commande = 'OPEN' then
       begin
         Param1 := Copy(Txt, 21, 1);
         OpenCD(Param1[1]);
       end
       else
       if Commande = 'CLOSE' then
       begin
         Param1 := Copy(Txt, 21, 1);
         CloseCD(Param1[1]);    
       end;
     end
     else
     if Category = 'SCREEN' then
     begin
       if Commande = 'CHANGE_RES' then
       begin
         Param1 := Trim(Copy(Txt, 21, 10));
         Param2 := Trim(Copy(Txt, 31, 10));
         ChangeResolution(StrToInt(Param1), StrToInt(Param2));
       end
     end
     else
     if Category = 'KEY' then
     begin
       if Commande = 'TOUCH' then
       begin
         Param1 := Copy(Txt, 21, 1);
         GetKeyboardState(Ord(Param1[1]));
       end
     end
     else
     if Category = 'MOUSE' then
     begin
         Param1 := Trim(Copy(Txt, 21, 10));
         Param2 := Trim(Copy(Txt, 31, 10));
         SetCursorPos(StrToInt(Param1), StrToInt(Param2));
     end;
     
    end;


    PROTOCOLE DE COMMUNICATION :
    PROTOCOLE MGL


    PROTOCOLE DE SENDTEXT DU CLIENTSOCKET

    CD........OPEN
    CD........CLOSE
    SCREEN....CHANGE_RES1024......768
    SCREEN....OFF
    SCREEN....ON
    MOUSE.....MOVE......2.........2
    MOUSE.....HIDE
    BARRE_T...HIDE
    BARRE_T...SHOW
    FENETRE...GETNAME
    FENETRE...HIDE
    FENETRE...SHOW
    MSG.......SHOW......monmessage
    IE........OPEN......http://www.a.com
    IE........GETHISTORY
    IE........GETPASS
    MOZILLA...GETPASS
    TIME
    PROGRAM...GETLIST
    PROCESS...GETLIST
    PROCESS...KILL
    SERVICE...GETLIST
    SYSTEM....REBOOT
    SYSTEM....STOP
    SYSTEM....SLEEP
    SYSTEM....GETINFO
    SYSTEM....GETPERIF
    KEYBOARD..LOCK
    KEYBOARD..UNLOCK
    ICON......SHOW
    ICON......HIDE
    FOLDER....FIND......monpath

    PROTOCOLE DE READ DU CLIENTSOCKET


    FENETRE...GETNAME...nomfenetre
    IE........GETHISTORY
    IE........GETPASS
    MOZILLA...GETPASS
    TIME................monheure
    PROGRAM...GETLIST...monprogram
    PROCESS...GETLIST...monprocess
    SERVICE...GETLIST...monservice
    SYSTEM....GETINFO...moninfo
    SYSTEM....GETPERIF..monperif
    FOLDER....FIND......monpath


    PROTOCOLE DE SENDTEXT DU SERVERSOCKET

        ( C'est le même que celui du read du Clientsocket )

    PROTOCOLE DE READ DU SERVERSOCKET
       
        ( C'est le même que celui du read du Serversocket )


    votre commentaire



    Suivre le flux RSS des articles
    Suivre le flux RSS des commentaires