Tcpserver interception des données de l'imprimante

Contenu du snippet

Le programme permet de visualiser l?impression envoyer vers une imprimante.
- Il faut déclarer une imprimante réseau Generique/text sur windows. L?adresse est l?IP du PC ou en locale 127.0.0.1
- Lancer le programme
- Lancer l?impression d?un quelconque programme.
- Visualiser sur le programme.
Le programme devait me permettre de vérifier la possibilité de visualisation de l?impression. Et de pouvoir prendre les information qui m?intéresse sur l?impression.

Source / Exemple :


unit SerImpTest1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, IdBaseComponent, IdComponent, IdTCPServer, Menus;

type
  TfServImpTest = class(TForm)
    IdTCPServer1: TIdTCPServer;
    stEtat: TStaticText;
    Memo1: TMemo;
    procedure IdTCPServer1Execute(AThread: TIdPeerThread);
  private
    { Déclarations privées }
  public
    { Déclarations publiques }
  end;

var
  fServImpTest: TfServImpTest;

implementation

{$R *.dfm}
// Procédure de gestion de la connexion TCP et création
// d'un processus de gestion
procedure TfServImpTest.IdTCPServer1Execute(AThread: TIdPeerThread);
var
// Variable pour stocker les lignes récupérer
  stBuffer : string;
begin
// Vérification d'une connexion
  stEtat.Caption := 'Connexion sur le port';
// Boucle de vidage du flux d'impression
  while AThread.Connection.Connected do
  begin
// Gestion s'il y a une erreur
// Pas de probléme
    try
// Stockage de la ligne dans la variable StBuffer
      stBuffer := AThread.Connection.ReadLn;
// Création d'une nouvelle ligne dans le mémo
// avec l'information de la variable
      Memo1.Lines.Add(stBuffer);
// IF Erreur Level
    except
// Déconnexion du lien TCP
      AThread.Connection.Disconnect;
    end;
  end;
end;

end.

Conclusion :


Je suis a la disposition si les question se font sentir.

A voir également

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.