AccessTr.neT
Win32Exception Was Unhandled. Nerede Hata Yapıyorum ? - Baskı Önizleme

+- AccessTr.neT (https://accesstr.net)
+-- Forum: Visual Basic 6 (https://accesstr.net/forum-visual-basic-6.html)
+--- Forum: Visual Basic 6 Cevaplanmış Soruları (https://accesstr.net/forum-visual-basic-6-cevaplanmis-sorulari.html)
+--- Konu Başlığı: Win32Exception Was Unhandled. Nerede Hata Yapıyorum ? (/konu-win32exception-was-unhandled-nerede-hata-yapiyorum.html)



Win32Exception Was Unhandled. Nerede Hata Yapıyorum ? - Uğur ŞİRİN - 07/06/2017

Public Class Form1

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

Dim strPDFFile As String = Dir("d:\Test.pdf")
Dim PrintPDFFile As New ProcessStartInfo

Do Until strPDFFile Is Nothing
PrintPDFFile.UseShellExecute = True
PrintPDFFile.Verb = "print"
PrintPDFFile.WindowStyle = ProcessWindowStyle.Hidden
PrintPDFFile.FileName = strPDFFile
Process.Start(PrintPDFFile)
strPDFFile = Dir()
Loop

End Sub
End Class

bu kodda "Process.Start(PrintPDFFile)" bu satırda sorun yaşıyorum. Test.PDF isimli dosyayı yazdırması lazım ancak hata veriyor. 

Verdiği hata ise Win32Exception was unhandled. Nerede hata yapıyorum ?


Cvp: Win32Exception Was Unhandled. Nerede Hata Yapıyorum ? - alpeki99 - 07/06/2017

Process.Start(PrintPDFFile) ile bir process başlatmanız lazım. PrintPDFFile değişkeninin içeriğine bakınca Dir("d:\Test.pdf") ile geri dönen bir değer görüyoruz. Dir komutu ile bir dosyanın var olup olmadığını kontrol edersiniz. Dolayısıyla burada sorun yaşıyorsunuzdur. Process.Start ile çalıştırılacak bir EXE dosya yolunu(Path) parametre olarak vermiş olmanız lazım.


Cvp: Win32Exception Was Unhandled. Nerede Hata Yapıyorum ? - Uğur ŞİRİN - 07/06/2017

(07/06/2017, 15:10)alpeki99 yazdı: Process.Start(PrintPDFFile) ile bir process başlatmanız lazım. PrintPDFFile değişkeninin içeriğine bakınca Dir("d:\Test.pdf") ile geri dönen bir değer görüyoruz. Dir komutu ile bir dosyanın var olup olmadığını kontrol edersiniz. Dolayısıyla burada sorun yaşıyorsunuzdur. Process.Start ile çalıştırılacak bir EXE dosya yolunu(Path) parametre olarak vermiş olmanız lazım.
İlginiz için çok teşekkür ederiö. Burada ben muhtemelen acrobat.exe'nin uzantısını vermem lazım diye düşünerek bu kodu şu şekilde değiştirdim, lakin yine aynı hatayı verdi.

Process.Start(c:\program files\acrobat\bin\Acrobat.exe)


Cvp: Win32Exception Was Unhandled. Nerede Hata Yapıyorum ? - alpeki99 - 07/06/2017

Tırnak içerisinde yazdınız mı?
Birde tam adres olarak o konumda o dosya var mı?

Ayrıca Process'e parametreyi birleştirerek vermenizde gerekebilir. Mesela Process.Start("c:\program files\acrobat\bin\Acrobat.exe" & "d:\abc.pdf") gibi. Bunu Acrobat'ın sitesinden incelemeniz lazım. Elbette benim gibi Foxit Reader kullananlarda bu satırlar çalışmayacaktır. Bundan dolayı ilk bu işlemlere başlamadan Acrobat.exe dosyası varmı diye kontrol ettirmeniz iyi olur.