Server 2009

Automate Printing with PowerPoint

Example code is for an older version of Server, newer code is available.
' Copyright (c) 2019 ActivePDF, Inc.
' ActivePDF Server 2009
' Example generated 09/22/19 

Imports System

' Make sure to add the ActivePDF product .NET DLL(s) to your application.
' .NET DLL(s) are typically found in the products 'bin' folder.

Public Class Examples
  Sub Example()
    Dim strPath As String, intStartPrinting As Integer, intWait As Integer

    strPath = AppDomain.CurrentDomain.BaseDirectory

    ' Instantiate Object
    Dim oSVR As APServer.Server = New APServer.Server()
    
    ' Path and filename of output
    oSVR.OutputDirectory = strPath
    oSVR.NewDocumentName = "Output.pdf"
    
    ' Start the print job
    intStartPrinting = oSVR.StartPrinting()
    If intStartPrinting <> 0 Then
      ErrorHandler("StartPrinting", intStartPrinting)
    End If
    
    ' Automate PowerPoint to print a document to activePDF Server
    ' NOTE: You must add the 'Microsoft PowerPoint <<version number>> Object Library'
    ' COM object as a reference to your .NET application to access the PowerPoint Object.
    Dim oPPT As Microsoft.Office.Interop.PowerPoint._Application = New Microsoft.Office.Interop.PowerPoint.Application()
    Dim oPRES As Microsoft.Office.Interop.PowerPoint.Presentation = oPPT.Presentations.Open(strPath & "PPT.ppt", -1, 0, 0)
    Dim objOptions As Microsoft.Office.Interop.PowerPoint.PrintOptions = oPRES.PrintOptions
    objOptions.ActivePrinter = oSVR.NewPrinterName
    objOptions.PrintInBackground = 0
    oPRES.PrintOut(1, 9999, "", 1, 0)
    oPRES.Saved = 1
    oPRES.Close()
    oPPT.Quit()
    objOptions = Nothing
    oPRES = Nothing
    oPPT = Nothing
    
    ' Wait(seconds) for job to complete
    intWait = oSVR.Wait(30)
    If intWait <> 0 Then
      ErrorHandler("Wait", intWait)
    End If
    
    ' Release Object
    oSVR = Nothing
    
    ' Process Complete
    WriteResults("Done!")
  End Sub
  
  ' Error Handling
  ' Error messages written to debug output
  Sub ErrorHandler(ByVal strMethod, ByVal RtnCode)
    WriteResults(strMethod + " error:  " + rtnCode.ToString())
  End Sub
  
  ' Write output data
  Sub WriteResults(content As String)
    ' Choose where to write out results
  
    ' Debug output
    'System.Diagnostics.Debug.WriteLine("ActivePDF: * " + content)
  
    ' Console
    Console.WriteLine(content)
  
    ' Log file
    'Using tw = New System.IO.StreamWriter(AppDomain.CurrentDomain.BaseDirectory & "application.log", True)
    '   tw.WriteLine("[" + DateTime.Now.ToString("MM/dd/yyyy HH:mm:ss") + "]: => " + content)
    'End Using
  End Sub
End Class

Copyright © 2019 ActivePDF, Inc