Microsoft 开发人员网络 > 论坛主页 > XML Paper Specification (XPS) > Printing on NOVELL iPRINT PORT always fails...
提出问题提出问题
 

已答复Printing on NOVELL iPRINT PORT always fails...

  • 2007年6月5日 8:08Jo0815 用户奖牌用户奖牌用户奖牌用户奖牌用户奖牌
     
    Hi all,


    trying to print a xps-file via Batchwriter/SerializerWriterCollator on different bins of a "HP Laserjet 4050" printer, and therefor I modify the PrintTickets and set the correct values (1st page -> ns0000Surpriseption2 / rest pages -> ns0000Surpriseption3 which should be upper/lower bins)... I've read the values from the PrintCapabilites-XML of the PrintQueue (like I've posted also code in the other thread about InputBins...)


    This works fine when printing on same driver with a local printport or LPT1: or even on a TCP-Port, but it doesn't work on a "Novell iPrint Port" (like ipp://print.company-corp.com/ipp/HPLJ4050N-OG1)


    I keep getting following errors:


    "System.Printing.PrintSystemException" wurde aufgefangen.
    Message="Printing was canceled. Win32 error: Falscher Parameter.\r\n"
    Source="System.Printing"
    StackTrace:
    bei Microsoft.Internal.GDIExporter.CGDIRenderTarget.ThrowOnFailure(Int32 hr)
    bei Microsoft.Internal.GDIExporter.CGDIRenderTarget.StartDocument(String printerName, String jobName, String filename, Byte[] devmode)
    bei Microsoft.Internal.AlphaFlattener.MetroToGdiConverter.StartDocument(String jobName, PrintTicket ticket)
    bei System.Windows.Xps.Serialization.NgcSerializationManager.StartDocument(Object o, Boolean documentPrintTicketRequired)
    bei System.Windows.Xps.Serialization.NgcSerializationManager.SaveAsXaml(Object serializedObject)
    bei System.Windows.Xps.VisualsToXpsDocument.WriteVisual(Boolean asyncMode, PrintTicket printTicket, PrintTicketLevel printTicketLevel, Visual visual)
    bei System.Windows.Xps.VisualsToXpsDocument.Write(Visual visual, PrintTicket printTicket)
    ...

    or sometimes this one:

    "PrintTicket provider failed to retrieve PrintCapabilities. Win32 error: -2147467259"

    _______________

    The SAME CODE works fine on all other printers except on that one using a Novell iPrint Port...Also printing without modified PrintTickets doesn't work...
    what's going wrong here? Does printing on a Novell iPrint Port not work with XPS?

    I also have noticed that the PrintQueue-Name of this shared printer ("HPLJ4050N-OG1 on ipp://print.company-corp.com/ipp/HPLJ4050N-OG1") can't be used to retrieve the PrintQueue, but the sharename or queue-port-name...

    anyone of Microsoft can help out on that issue??
    somebody else noticed this behaviour also? any ideas?

    regards,
    Jo


答案

  • 2007年8月7日 16:03Daniel _MS_ 用户奖牌用户奖牌用户奖牌用户奖牌用户奖牌
     已答复

    Hi Joachim,

      Thank you for your patience on this issue.  We have investigated your report and determined that there is a problem in the processing of the printer name.  The issue has been logged and will be considered for a future product release.  We understand the impact this issue may have for your development, but do not have a timeline for when this issue will be addressed at this time.

     

    -Daniel (MS)

     

     

全部回复

  • 2007年6月15日 7:58Jo0815 用户奖牌用户奖牌用户奖牌用户奖牌用户奖牌
     

    I still can't get the print on a Novell iPrint Port and I assume it must be the PrintQueue-Name of this shared printer ("HPLJ4050N-OG1 on ipp://print.company-corp.com/ipp/HPLJ4050N-OG1") which causes the "Wrong Parameter"-Exception as the PrinterName get also passed to the GDIExporter.CGDIRenderTarget.StartDocument() and like I have already mentioned, you're not able to get a PrintQueue using this name...


    Is this a bug??


    I've sent this thread also to XPS-Info and no answer... anyone from MS can confirm this behaviour and maybe have a work-around for that issue??

  • 2007年7月12日 11:52Jo0815 用户奖牌用户奖牌用户奖牌用户奖牌用户奖牌
     

    Hi Feng Yue


    thanx for your reply on 06-15-07  -  any NEWS to this issue???


    regards,

    Jo



  • 2007年8月7日 16:03Daniel _MS_ 用户奖牌用户奖牌用户奖牌用户奖牌用户奖牌
     已答复

    Hi Joachim,

      Thank you for your patience on this issue.  We have investigated your report and determined that there is a problem in the processing of the printer name.  The issue has been logged and will be considered for a future product release.  We understand the impact this issue may have for your development, but do not have a timeline for when this issue will be addressed at this time.

     

    -Daniel (MS)

     

     

  • 2007年8月8日 7:33Jo0815 用户奖牌用户奖牌用户奖牌用户奖牌用户奖牌
     

    Hi Daniel,

    thanx for your reply - at least I know now that the issue isn't on my side and it's a bug which gets fixed in future releases...

    btw, is there somewhere a list with fixed bugs for the upcoming xps-release/s ??

    regards,
    Jo
  • 2008年5月15日 23:22Rei Miyasaka 用户奖牌用户奖牌用户奖牌用户奖牌用户奖牌
     

    Please consider having this fixed. My project is at risk of being abandoned.

     

    I am using a Ricoh Aficio 3235C.

  • 2008年9月18日 14:45debugdiva 用户奖牌用户奖牌用户奖牌用户奖牌用户奖牌
     

    Please fix this.

  • 2009年6月3日 15:03xiasma 用户奖牌用户奖牌用户奖牌用户奖牌用户奖牌
     

    Hello Daniel,

    Did this bug ever get resolved? f it's any help, here is my stacktrace:

    Stack=  
       at MS.Internal.Printing.Configuration.PTProvider.GetPrintCapabilities(MemoryStream printTicket)
       at System.Printing.PrintTicketManager.GetPrintCapabilitiesAsXml(PrintTicket printTicket)
       at System.Printing.PrintTicketManager.GetPrintCapabilities(PrintTicket printTicket)
       at System.Printing.PrintQueue.GetPrintCapabilities(PrintTicket printTicket)
       at System.Windows.Controls.PrintDialog.UpdatePrintableAreaSime()
       at System.Windows.Controls.PrintDialog.get_PrintableAreaWidth()
       at Xiasma.WPF.Application.EvageneMainWindow.printPreview()
       at Xiasma.WPF.Application.EvageneMainWindow.printPreviewMenuItem_Activate(Object sender, RoutedEventArgs e)
       at System.Windows.RoutedEventHandlerInfo.InvokeHandler(Object target, RoutedEventArgs routedEventArgs)
       at System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised)
       at System.Windows.UIElement.RaiseEventImpl(DependencyObject sender, RoutedEventArgs args)
       at System.Windows.UIElement.RaiseEvent(RoutedEventArgs e)
       at Divelements.SandRibbon.RibbonControl.OnActivate(ActivateEventArgs e)
       at Divelements.SandRibbon.MenuItem.OnActivate(ActivateEventArgs e)
       at Divelements.SandRibbon.MenuItem.OnMouseLeftButtonUp(MouseButtonEventArgs e)
       at System.Windows.UIElement.OnMouseLeftButtonUpThunk(Object sender, MouseButtonEventArgs e)
       at System.Windows.Input.MouseButtonEventArgs.InvokeEventHandler(Delegate genericHandler, Object genericTarget)
       at System.Windows.RoutedEventArgs.InvokeHandler(Delegate handler, Object target)
       at System.Windows.RoutedEventHandlerInfo.InvokeHandler(Object target, RoutedEventArgs routedEventArgs)
       at System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised)
       at System.Windows.UIElement.ReRaiseEventAs(DependencyObject sender, RoutedEventArgs args, RoutedEvent newEvent)
       at System.Windows.UIElement.CrackMouseButtonEventAndReRaiseEvent(DependencyObject sender, MouseButtonEventArgs e)
       at System.Windows.UIElement.OnMouseUpThunk(Object sender, MouseButtonEventArgs e)
       at System.Windows.Input.MouseButtonEventArgs.InvokeEventHandler(Delegate genericHandler, Object genericTarget)
       at System.Windows.RoutedEventArgs.InvokeHandler(Delegate handler, Object target)
       at System.Windows.RoutedEventHandlerInfo.InvokeHandler(Object target, RoutedEventArgs routedEventArgs)
       at System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised)
       at System.Windows.UIElement.RaiseEventImpl(DependencyObject sender, RoutedEventArgs args)
       at System.Windows.UIElement.RaiseEvent(RoutedEventArgs args, Boolean trusted)
       at System.Windows.Input.InputManager.ProcessStagingArea()
       at System.Windows.Input.InputManager.ProcessInput(InputEventArgs input)
       at System.Windows.Input.InputProviderSite.ReportInput(InputReport inputReport)
       at System.Windows.Interop.HwndMouseInputProvider.ReportInput(IntPtr hwnd, InputMode mode, Int32 timestamp, RawMouseActions actions, Int32 x, Int32 y, Int32 wheel)
       at System.Windows.Interop.HwndMouseInputProvider.FilterMessage(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
       at System.Windows.Interop.HwndSource.InputFilterMessage(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
       at MS.Win32.HwndWrapper.WndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
       at MS.Win32.HwndSubclass.DispatcherCallbackOperation(Object o)
       at System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Boolean isSingleParameter)
       at System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Boolean isSingleParameter, Delegate catchHandler)

     
    Source=ReachFramework

     
    TargetSite=System.IO.MemoryStream GetPrintCapabilities(System.IO.MemoryStream)

     
    Message=PrintTicket provider failed to retrieve PrintCapabilities. Win32 error: -2147467259

     
    InnerException=

     
    Data=System.Collections.ListDictionaryInternal



    In .net 3.5 sp1