Bonjour à tous,

Tout d'abord, je me présente. Je m'appelle Corentin , j'ai 29 ans et je suis automaticien.
Depuis quelques mois maintenant, j'ai commencé à m'intéresser au C# et à l'utilisation de Visual Studio.
Avec l'aide des différents tutoriels trouver sur le net, j'ai commencé à développer une application qui tourne plutôt bien jusqu'à présent.

Concernant ce sujet, j'ai recherché "Impression + C#" sur le forum , mais je n'ai pas trouvé d'occurence, je vous prie de bien vouloir m'excuser si un sujet similaire a déjà été ouvert.

Dans mon application, j'appelle une fonction toute les 500ms pour contrôler des valeurs au sein de mon automate.
Pour certaines valeurs , il est possible de lancer l'impression d'un document (pdf) de façon automatique.

Cependant, quand l'impression se lance, le traitement est bloqué tant que l'impression n'est pas terminé.
En effectuant des recherches, j'ai compris qu'il faudrait que je lance l'impression de façon asynchrone afin de permettre à mon code de continuer d'être exécuté.
J'ai compris qu'il fallait que j'utilise les termes TASK, async , await , mais j'avoue ne pas comprendre exactement comment mettre cela en place et c'est pourquoi je solicite votre aide.

A titre d'information, pour l'impression de document en PDF, j'utilise le package Nutget "ceTe.DynamicPDF.Printing.NET".

Finalement, mon code aujourd'hui ressemble à cela :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
 
  public static void Impression(string Printer,string Path)
        {
            PrintJob print = new PrintJob(Printer, Path);
            print.Print();
        }
Merci d'avance pour vos précieux conseils ..