pullareddy S Ответов: 1

Печать нескольких изображений с помощью команды Processstartinfo.verb=“print


я хочу, чтобы распечатать все изображения в папке, используя изменение панели.глагол="печать" команду

у меня есть код для печати одного изображения, как это
dim psinfo as new processstartinfo
psinfo.verb="print"
psinfo.createnowindow=false
psinfo.filename="d:/imgfolder/0001.jpg"
process.start(psinfo)


но я хочу печатать больше изображений одновременно с помощью этой команды. в папке, если я выберу все изображения(Ctrl+A) , а затем щелкну Правой Кнопкой Мыши и затем напечатаю. тогда это работает нормально и печатает все изображения. точно так же я хочу печатать изображения с помощью vb.net если кто-нибудь знает, как это сделать, пожалуйста, ответьте....

1 Ответов

Рейтинг:
1

DamithSL

проверьте код ниже

For Each file In IO.Directory.GetFiles(folderPath)
    Try
        Dim psi As New ProcessStartInfo(file )
 
        If psi.Verbs.Contains("print") Then
            psi.Verb = "print"
            psi.UseShellExecute = True
            psi.WindowStyle = ProcessWindowStyle.Hidden
            psi.CreateNoWindow = True
            Process.Start(psi).WaitForExit()
        Else
            MessageBox.Show("No 'print' verb associated with file extension " & IO.Path.GetExtension(file))
        End If
    Catch ex As Exception
        MessageBox.Show(ex.ToString())
    End Try
Next


http://www.vbforums.com/showthread.php?609098-Print-all-files-in-folder&p=3764285&viewfull=1#post3764285[^]


pullareddy S

привет ,спасибо за ваш ответ..
Для PNG-изображений это условие всегда показывает "ложные" psi.глаголы.Содержит("print")
если я пропущу приведенную выше строку, то получу ошибку "ССЫЛКА на объект не установлена на экземпляр объекта" в процессе.Старт(psi).WaitForExit()
Процесс.Старт(psi).WaitForExit()

не могли бы вы проверить один раз, пожалуйста.

DamithSL

это правда, для PNG-файлов нет глагола печати.

pullareddy S

привет Дамит,
даже PNG не имеет "печати", но мы можем печатать в приведенном выше коде. мне не нужно проверять наличие печатного глагола. Мое главное требование здесь заключается в том, что я хочу привязать все изображения в папке к одному printwindow (single processstartinfo) .....

pullareddy S

А также если я бегу, комментируя .WaitForExit() .у меня есть 5 разных окон печати для 5 изображений.но я хочу только одно окно с 5 изображениями по одному, показывая изображение 1 из 5, 2 из 5 вот так...пожалуйста, проверьте...