Products | Support | Email a link to this topic. | Send comments on this topic. | Back to Introduction - All Topics | Help Version 19.0.5.8
|
Leadtools.Printer Namespace > Printer Class : RemoteData Property |
public PrintJobData RemoteData {get;}
'Declaration Public ReadOnly Property RemoteData As PrintJobData
'Usage Dim instance As Printer Dim value As PrintJobData value = instance.RemoteData
public: property PrintJobData^ RemoteData { PrintJobData^ get(); }
When printing a job from a remote machine, the data will be recieved in the server machine.
This property will return the data related to the current printe job.
This parameter will be available between JobStart and JobEnd for a given job.
This data has been sent from the client machine in the Leadtools.Printer.Client.IVirtualPrinterClient.PrintJob(Leadtools.Printer.Client.PrintJobData) method.
Imports Leadtools.Support.Examples Imports Leadtools.Printer Imports Leadtools Private Sub printer_NetworkJobEvent(ByVal sender As Object, ByVal e As JobEventArgs) Handles networkPrinter.JobEvent Dim printerName As String = e.PrinterName Dim jobID As Integer = e.JobID If e.JobEventState = EventState.JobStart Then 'get the remote data sent from client Dim jobData As PrintJobData = networkPrinter.RemoteData MessageBox.Show(String.Format("Job {0} was started with printer {1} from remote client", jobData.PrintJobName, jobData.VirtualPrinterName)) ElseIf e.JobEventState = EventState.JobEnd Then Dim arrFonts As String() = networkPrinter.GetEmbeddedFonts("C:\path to save file", e.JobID) If Not arrFonts Is Nothing AndAlso arrFonts.Length > 0 Then MessageBox.Show(String.Format("{0} fonts recieved", arrFonts.Length)) End If MessageBox.Show(String.Format("Job {0} was ended with printer {1}", jobID, printerName)) Else networkPrinter.CancelPrintedJob(jobID) End If End Sub Private WithEvents networkPrinter As Printer Public Sub SetNetworkData(ByVal strData As String) Dim bytes As Byte() = Encoding.ASCII.GetBytes(strData) 'Set initial network data networkPrinter.SetNetworkInitialData(bytes) End Sub Public Function GetNetworkData() As String Dim bytes As Byte() 'Get initial network data bytes = networkPrinter.GetNetworkInitialData() Return Encoding.ASCII.GetString(bytes) End Function Public Sub PrinterDriverNetworkExamples() networkPrinter = New Printer("Test LEADTOOLS Printer") ' Set network printing enable networkPrinter.EnableNetworkPrinting = True 'Check network printing state Dim bNetworkEnabled As Boolean = networkPrinter.EnableNetworkPrinting Dim strData As String = "Network Printer Initial Data" 'Set network initial data SetNetworkData(strData) 'Get network initial data Dim strRet As String = GetNetworkData() If strRet <> strData Then Return End If End Sub
using Leadtools.Printer; using Leadtools; public void PrinterDriverNetworkExamples() { networkPrinter = new Printer("Test LEADTOOLS Printer"); // Set network printing enable networkPrinter.EnableNetworkPrinting = true; //Check network printing state bool bNetworkEnabled = networkPrinter.EnableNetworkPrinting; string strData = "Network Printer Initial Data"; //Set network initial data SetNetworkData(strData); //Get network initial data string strRet = GetNetworkData(); if (strRet != strData) return; networkPrinter.JobEvent += new EventHandler<JobEventArgs>(printer_NetworkJobEvent); } void printer_NetworkJobEvent(object sender, JobEventArgs e) { string printerName = e.PrinterName; int jobID = e.JobID; if (e.JobEventState == EventState.JobStart) { //get the remote data sent from client PrintJobData jobData = networkPrinter.RemoteData; MessageBox.Show(string.Format("Job {0} was started with printer {1} from remote client", jobData.PrintJobName, jobData.VirtualPrinterName)); } else if (e.JobEventState == EventState.JobEnd) { string[] arrFonts = networkPrinter.GetEmbeddedFonts("C:\\path to save file", e.JobID); if (arrFonts != null && arrFonts.Length > 0) { MessageBox.Show(string.Format("{0} fonts recieved", arrFonts.Length)); } MessageBox.Show(string.Format("Job {0} was ended with printer {1}", jobID, printerName)); } else { networkPrinter.CancelPrintedJob(jobID); } } Printer networkPrinter; public void SetNetworkData(string strData) { byte[] bytes = Encoding.ASCII.GetBytes(strData); //Set initial network data networkPrinter.SetNetworkInitialData(bytes); } public string GetNetworkData() { byte[] bytes; //Get initial network data bytes = networkPrinter.GetNetworkInitialData(); return Encoding.ASCII.GetString(bytes); }