IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Scripts/Batch Discussion :

Développement Powershell => imprimantes [PowerShell]


Sujet :

Scripts/Batch

  1. #1
    Candidat au Club
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Février 2017
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Technicien maintenance

    Informations forums :
    Inscription : Février 2017
    Messages : 5
    Points : 3
    Points
    3
    Par défaut Développement Powershell => imprimantes
    Bonjour,

    J'espère que je poste au bon endroit. Je vous explique mon problème. Je suis entrain de développer un script Powershell qui permet de redémarrer le spouleur d'impressions, de vider les files d'attente d'une imprimante ou de vider le répertoire \spool\PRINTERS. Tout ceci en sélectionnant un choix.

    Mon soucis que que lorsque je veux vider une file d'impression elle me vide TOUTES les files d'impression. Sachant que pour cela j'ai créer une combobox qui répertorier toutes les imprimantes installée sur le poste et je souhaiterais que lorsque l'on sélectionne le choix de vider une file d'attente + sélectionner l'imprimante dans la combobox cela supprime que la file d'attente de l'imprimante sélectionnée.

    voici mon code =

    #Ouvre une fenêtre.
    [reflection.assembly]::LoadWithPartialName("System.Windows.Forms")
    $form1 = New-Object Windows.Forms.Form
    $form1.text = "suppression file et redémarrage spouleur"
    $form1.Size = New-Object System.Drawing.Size(400,260)

    #Création d'un label (Label).
    $label1 = New-Object Windows.Forms.Label
    $label1.Location = New-Object Drawing.Point 35,12
    $label1.Size = New-Object System.Drawing.Size(300,15)
    $label1.text = "Redémarrage du spouleur d'impression"

    $label2 = New-Object Windows.Forms.Label
    $label2.Location = New-Object Drawing.Point 35,42
    $label2.Size = New-Object System.Drawing.Size(300,15)
    $label2.text = "File d'attente de l'imprimante à vider"

    $label3 = New-Object Windows.Forms.Label
    $label3.Location = New-Object Drawing.Point 35,72
    $label3.Size = New-Object System.Drawing.Size(300,15)
    $label3.text = "dossier PRINTERS à vider"

    #Création d'une case à cocher (CheckBox).
    $case1 = New-Object System.Windows.Forms.CheckBox
    $case1.Location = New-Object Drawing.Point 20,10
    $case1.Size = New-Object System.Drawing.Size(20,20)
    $case1.Checked = $false

    $case2 = New-Object System.Windows.Forms.CheckBox
    $case2.Location = New-Object Drawing.Point 20,40
    $case2.Size = New-Object System.Drawing.Size(20,20)
    $case2.Checked = $false

    $case3 = New-Object System.Windows.Forms.CheckBox
    $case3.Location = New-Object Drawing.Point 20,70
    $case3.Size = New-Object System.Drawing.Size(20,20)
    $case3.Checked = $false

    #Création d'un bouton valider (Button).
    $bouton1 = New-Object Windows.Forms.Button
    $bouton1.Location = New-Object Drawing.Point 20,180
    $bouton1.Size = New-Object System.Drawing.Size(85,23)
    $bouton1.text = "Valider"
    $bouton1.add_click({
    #Action lorsque l'on clique sur le bouton.
    if ($case1.Checked -eq $true)
    {net stop spooler
    net start spooler }

    if ($case2.Checked -eq $true)
    {
    $PrinterQueue = get-wmiobject -class win32_printer
    $PrinterQueue.CancelAllJobs()
    }
    if ($case3.Checked -eq $true)
    {
    net stop LPDSVC
    net stop spooler
    remove-item C:\Windows\System32\spool\PRINTERS\*.*
    net start spooler
    net start LPDSVC
    }
    })
    #Création d'un bouton Fermer (Button).
    $bouton2 = New-Object Windows.Forms.Button
    $bouton2.Location = New-Object Drawing.Point 120,180
    $bouton2.Size = New-Object System.Drawing.Size(85,23)
    $bouton2.text = "Fermer"
    $bouton2.add_click({$form1.Close()})

    $IMP = Get-WmiObject -class Win32_Printer
    $IMP = $IMP.Name

    #Liste deroulante (ComboBox).
    $liste1 = New-Object System.Windows.Forms.Combobox
    $liste1.Location = New-Object Drawing.Point 20,120
    $liste1.Size = New-Object System.Drawing.Size(350,200)
    $liste1.DropDownStyle = "DropDownList"
    $liste1.Items.AddRange($IMP)
    $liste1.SelectedIndex = 0

    $form1.controls.add($label1)
    $form1.controls.add($label2)
    $form1.controls.add($label3)
    $form1.controls.add($bouton1)
    $form1.controls.add($bouton2)
    $form1.controls.add($image1)
    $form1.controls.add($case1)
    $form1.controls.add($case2)
    $form1.controls.add($case3)
    $form1.controls.add($liste1)

    #Affiche le tout.
    $form1.ShowDialog()
    #Fin.
    Vous remarquez que le choix 2 supprime toutes les files. Il ne me reste que cela à faire et j'ai finis mon programme. J'ai cherché partout sans succès.

    Je vous remercie par avance de l'aide que vous m'apporterez.

  2. #2
    Candidat au Club
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Février 2017
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Technicien maintenance

    Informations forums :
    Inscription : Février 2017
    Messages : 5
    Points : 3
    Points
    3
    Par défaut
    Il faut que je crée un topic pour trouver la solution

    dans le choix case2, il fallait mettre =
    $imprim = $liste1.SelectedItem
    $obj = get-wmiobject -query "select * from win32_printer where name='$imprim'"
    $obj.CancelAllJobs()

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Comment Développer en équipe ?
    Par christ_mallet dans le forum Débats sur le développement - Le Best Of
    Réponses: 45
    Dernier message: 19/11/2007, 00h15
  2. Quel outil choisir pour un développement SQL-Server ?
    Par Mouse dans le forum Débats sur le développement - Le Best Of
    Réponses: 23
    Dernier message: 12/08/2003, 06h23
  3. [CR8][Delphi6] erreur imprimante non supportée
    Par Sebastien L. dans le forum SDK
    Réponses: 3
    Dernier message: 12/09/2002, 15h42
  4. Connaitre le nom des imprimantes
    Par bastien dans le forum C++Builder
    Réponses: 3
    Dernier message: 10/06/2002, 16h36
  5. Réponses: 2
    Dernier message: 20/03/2002, 23h01

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo