コード例 #1
0
        private void WriteJobTicket()
        {
            string filename = _PrintDataBasename + ".ticket.xml";

            PrintTicket ticket = this.GetPrintTicket();

            if (!File.Exists(filename))
            {
                using (Stream ticketstream = File.Create(filename))
                {
                    ticket.SaveTo(ticketstream);
                }
            }

#if DEBUG
            try  /* #@$%^& thing gives an IO exception, but doesn't say what happened.  #@&^%$ */
            {
                File.SetCreationTime(filename, this.CreateTime);
                File.SetLastWriteTime(filename, this.CreateTime);
            }
            catch
            {
            }
#endif

            Util.WindowsIdentityStore.SetFileAccess(filename, this.Username);
        }
コード例 #2
0
ファイル: XpsOMPackagingPolicy.cs プロジェクト: yk2012985/wpf
        GeneratePrintTicketResource(
            ContentType contentType,
            PrintTicket printTicket
            )
        {
            IXpsOMPrintTicketResource printTicketResource  = null;
            XpsPrintStream            printTicketXpsStream = XpsPrintStream.CreateXpsPrintStream();

            printTicket.SaveTo(printTicketXpsStream);
            IStream printTicketStream = printTicketXpsStream.GetManagedIStream();

            Uri printTicketUri = _xpsManager.GeneratePrintTicketUri(contentType);

            try
            {
                IOpcPartUri printTicketPart = GenerateIOpcPartUri(printTicketUri);
                printTicketResource = _xpsOMFactory.CreatePrintTicketResource(printTicketStream, printTicketPart);
            }
            catch (COMException)
            {
                Invalidate();
                throw new PrintingCanceledException();
            }

            return(printTicketResource);
        }
コード例 #3
0
 public void WritePrintTicket(XpsPartBase relatedPart, PackagePart metroPart, PrintTicket printTicket)
 {
     Stream stream;
     if (relatedPart == null)
     {
         throw new ArgumentNullException("relatedPart");
     }
     if (metroPart == null)
     {
         throw new ArgumentNullException("metroPart");
     }
     if (printTicket == null)
     {
         throw new ArgumentNullException("printTicket");
     }
     Uri partUri = this.GeneratePrintTicketUri(relatedPart);
     PackagePart part = this.GeneratePart(XpsS0Markup.PrintTicketContentType, partUri);
     string uriString = MakeRelativePath(metroPart.Uri, part.Uri);
     metroPart.CreateRelationship(new Uri(uriString, UriKind.Relative), TargetMode.Internal, XpsS0Markup.PrintTicketRelationshipName);
     if (this._metroPackage.FileOpenAccess == FileAccess.Write)
     {
         stream = part.GetStream(FileMode.Create);
     }
     else
     {
         stream = part.GetStream(FileMode.OpenOrCreate);
     }
     printTicket.SaveTo(stream);
     stream.Close();
 }