Learn how to a build a cloud-first strategyRegister Now

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 388
  • Last Modified:

Print PDF File From Web

Hi everyone,

I need code vb6 where I can print PDF file(Located on web server) in Local Printer without opening a file
0
iamdxb
Asked:
iamdxb
  • 7
  • 4
  • 3
  • +2
1 Solution
 
Dave BaldwinFixer of ProblemsCommented:
You would have to write a PDF reader to do that.  Or have a printer that can print PDFs directly.  PDFs have to be interpreted to convert to a printable format.
0
 
iamdxbAuthor Commented:
Please provide  me code If you have thanx in advance
0
 
Dave BaldwinFixer of ProblemsCommented:
I don't have such a code.  It would be the size of Adobe reader.
0
Technology Partners: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

 
iamdxbAuthor Commented:
I need code in vb6 where I can print PDF file(Located on web server) in Local Printer without opening a file

Please help anyone its urgent...
0
 
Dave BaldwinFixer of ProblemsCommented:
You can click on "Request Attention" above to get others to look at your question but I don't think you're going to get what you want.
0
 
Michel PlungjanIT ExpertCommented:
I find multiple articles and discussions here

http://www.google.com/search?q=print+pdf+without+opening+it

perhaps you find something useful?

In any case if you have the pdf on the server and you need to click on a link to print it from a web server, then you will need to open it

It can contain a pdf javascript to call the printer
0
 
kbireckiCommented:
How about this idea:

1. Download the file to a known location, maybe like this: http://visualstudiomagazine.com/Articles/2008/03/27/Simple-Asynchronous-Downloads.aspx?Page=1

2. Set your default printer, maybe like this: http://weblogs.asp.net/jamauss/archive/2004/07/12/181138.aspx

3. Print your file, maybe using the ShellExecute API (http://support.microsoft.com/kb/238245), with lpszOp set to "print".
0
 
iamdxbAuthor Commented:
hi kbirecki,
I am busy with other work , I will try yr solution  after that I will put comment.

thanx
0
 
LlamaJoeCommented:
I have used http://www.pdf-tools.com/pdf/pdf-printer-print-pdfa.aspx to do what you are requesting(silent, client side print of a pdf located on a network share - all controlled by javascript).  I use it as an activeX control in the browser - it is licensed by user and we have it installed it on specific user machines, so this is not an internet solution.  
0
 
iamdxbAuthor Commented:
Hi all

I will try above solution let know....
0
 
iamdxbAuthor Commented:
Hi kbirecki,

I have made ocx control, that I am using in webpage its working fine, only after printing Adobe Reader app window is not closing. I have used shell command ( Print your file, maybe using the ShellExecute API (http://support.microsoft.com/kb/238245), with lpszOp set to "print")  If you know please let me know.

Thanks a lot
0
 
kbireckiCommented:
Can you post the command you executed via the shell command that opens and prints the PDF but does not close.
0
 
iamdxbAuthor Commented:
Hi kbirecki,

below code is writen in OCX control

Private Declare Function ShellExecute Lib "shell32.dll" Alias _
   "ShellExecuteA" (ByVal hwnd As Long, ByVal lpOperation _
   As String, ByVal lpFile As String, ByVal lpParameters _
   As String, ByVal lpDirectory As String, ByVal nShowCmd _
   As Long) As Long

Private Declare Function apiFindWindow Lib "user32" Alias "FindWindowA" _
   (ByVal lpclassname As Any, ByVal lpCaption As Any) As Long

 

Private Function ShellExecuteExample()

   Dim hwnd
   Dim StartDoc
   
   On Error GoTo ErrHandler
   
   hwnd = apiFindWindow("OPUSAPP", "0")


   StartDoc = ShellExecute(hwnd, "print", "C:\POS\SI.pdf", "", "C:\", 0)
   
   
   Exit Function

ErrHandler:
   
  MsgBox ("Closing Application Error:" & Err.Number & Err.Description)
 
 
End Function
0
 
kbireckiCommented:
It looks like you are finding an already open window ("OPUSAPP") and sending a command to print the open file.  Is that what you want?  If so, you may need to manually close the window with something like:

Private Declare Function PostMessage Lib "user32" _
         Alias "PostMessageA" _
         (ByVal hwnd As Long, _
         ByVal wMsg As Long, _
         ByVal wParam As Long, _
         ByVal lParam As Long) As Long

Const WM_CLOSE = &H10

lngReturnValue = PostMessage(hWindow, WM_CLOSE, 0&, 0&)

Open in new window


See this article for more info on using PostMessage to close a window.

If that is the case, I don't see where the file is being opened.  However, if all you want to do is open, print a close a file, try this variation of your code:

Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" _
                   (ByVal hwnd As Long, ByVal lpszOp As String, _
                    ByVal lpszFile As String, ByVal lpszParams As String, _
                    ByVal LpszDir As String, ByVal FsShowCmd As Long) _
                    As Long
Private Declare Function GetDesktopWindow Lib "user32" () As Long

Sub Test()
     Dim hwnd As Long
     Const SW_HIDE = 0
     hwnd = GetDesktopWindow()
     ShellExecute(hwnd, "Print", "C:\POS\SI.pdf", "", "C:\", SW_HIDE)
End sub

Open in new window


More info on this here.
0
 
kbireckiCommented:
Edit: ....open, print and close a file,...
0
 
iamdxbAuthor Commented:
Thanks  to All
0

Featured Post

[Webinar] Cloud and Mobile-First Strategy

Maybe you’ve fully adopted the cloud since the beginning. Or maybe you started with on-prem resources but are pursuing a “cloud and mobile first” strategy. Getting to that end state has its challenges. Discover how to build out a 100% cloud and mobile IT strategy in this webinar.

  • 7
  • 4
  • 3
  • +2
Tackle projects and never again get stuck behind a technical roadblock.
Join Now