Appunti di Programmazione

Creative Commons License

Pagina 1 2 3 4 5 6 7 8

Stampare un file qualunque usando i Processi

Esiste un piccolo trucco per stampare qualsiasi file usando VB.Net, senza dovere scrivere troppe linee di codice. Si tratta di utilizzare i "PROCESSI", per stampare QUALUNQUE documento, purché esso sia associato ad un'applicazione in grado di aprirlo. C'è il solo inconveniente di vedere avviare l'applicazione associata al file scelto.
Se ad esempio, usando questo codice, tentiamo di stampare un file immagine, che di default viene aperto con Paint, nel momemto in cui iniziamo il processo di stampa, si apre anche Paint.
Personalmente non amo questo genere di scorciatoie, ma visto che esistono, tanto vale conoscerle per poterle usare se si presenta l'occasione utile.

Public Class Form1

    Private WithEvents btnStampa As New Windows.Forms.Button
    Private WithEvents OpenFileDialog1 As New Windows.Forms.OpenFileDialog

    Private Sub Form1_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load

        Me.Size = New Size(300, 300)

        With btnStampa
            .Size = New Size(90, 30)
            .Location = New Point(97, 160)
            .Text = "Stampa file"
        End With

        Me.Controls.Add(btnStampa)

    End Sub

    Private Sub btnStampa_Click(sender As Object, e As System.EventArgs) Handles btnStampa.Click

        If OpenFileDialog1.ShowDialog = Windows.Forms.DialogResult.OK Then

            Dim processo As New Process
            processo.StartInfo.Verb = "Print"
            processo.StartInfo.FileName = OpenFileDialog1.FileName
            processo.Start()

        End If

    End Sub

End Class

Pagina 1 2 3 4 5 6 7 8