Solved

Print web page in VB.NET Console Application

Posted on 2010-11-17
7
829 Views
Last Modified: 2012-05-10
Hello, I am struggling to print a web page from a VB.NET terminal application. Basically, when our system sees a command in the database, it prints off a web page based on the value of that command. The problem I am having, is calling a web browser control gives me an ActiveX error about the application not having multiple threads.

Any code snippets for this would be really appreciated.
0
Comment
Question by:Benji_
  • 3
  • 3
7 Comments
 
LVL 7

Expert Comment

by:rogerard
ID: 34157944
I just did a test in my vb.net 2005.  I added a WebBrowser control to the form, set it the url to both a url and to a html file, then executed
Me.WebBrowser1.Print()
for both types of pages and it printed find.  Are you trying to print it from a background worker?
0
 
LVL 7

Expert Comment

by:rogerard
ID: 34157982
If trying to print from a thread, implement something similar to this:
 
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
    Me.WebBrowser1.Print()
    If Me.WebBrowser1.InvokeRequired Then
      Me.WebBrowser1.Invoke(New MethodInvoker(AddressOf printbrowser))
    Else
      WebBrowser1.Print()
    End If
  End Sub

  Private Sub printbrowser()
    Me.WebBrowser1.Print()
  End Sub

Open in new window

0
 
LVL 7

Expert Comment

by:rogerard
ID: 34157990
delete the first me.webbrowser1.print from the code above at line 2.  I forgot to remove it.
0
Courses: Start Training Online With Pros, Today

Brush up on the basics or master the advanced techniques required to earn essential industry certifications, with Courses. Enroll in a course and start learning today. Training topics range from Android App Dev to the Xen Virtualization Platform.

 
LVL 2

Author Comment

by:Benji_
ID: 34162714
Sorry, both of you seem to have missed (though this is my fault) that this application is a Terminal application, or a Console application in VB.NET terms. Sorry, but thank you for trying.
0
 
LVL 83

Accepted Solution

by:
CodeCruiser earned 500 total points
ID: 34162777
Does it have to be console app?

One option is to develop another winforms based app which you can launch from your console app. That app can use the webbrowser and print the web page.
0
 
LVL 2

Author Comment

by:Benji_
ID: 34164357
I am thinking of just moving from a console app to a winforms app. As nice as it is having a nice simple system, I think it is time to move to winforms as the solution.

Thanks for all your help.
0
 
LVL 2

Author Closing Comment

by:Benji_
ID: 34164372
Shame there was never a full solution, but still made me see what had to be done.
0

Featured Post

Live: Real-Time Solutions, Start Here

Receive instant 1:1 support from technology experts, using our real-time conversation and whiteboard interface. Your first 5 minutes are always free.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

I think the Typed DataTable and Typed DataSet are very good options when working with data, but I don't like auto-generated code. First, I create an Abstract Class for my DataTables Common Code.  This class Inherits from DataTable. Also, it can …
Introduction As chip makers focus on adding processor cores over increasing clock speed, developers need to utilize the features of modern CPUs.  One of the ways we can do this is by implementing parallel algorithms in our software.   One recent…
Nobody understands Phishing better than an anti-spam company. That’s why we are providing Phishing Awareness Training to our customers. According to a report by Verizon, only 3% of targeted users report malicious emails to management. With compan…
The Email Laundry PDF encryption service allows companies to send confidential encrypted  emails to anybody. The PDF document can also contain attachments that are embedded in the encrypted PDF. The password is randomly generated by The Email Laundr…

786 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question