Druck-PDFs mit PDFSharp
Ich habe den folgenden code:
using System;
using System.Diagnostics;
using System.IO;
using PdfSharp.Pdf.Printing;
namespace PrintPdfFile
{
class Program
{
[STAThread]
static void Main(string[] args)
{
//Set Acrobat Reader EXE, e.g.:
PdfFilePrinter.AdobeReaderPath = @"C:\\Documents and Settings\\mike.smith\\Desktop\\Adobe Reader 9.0.exe";
//-or-
//PdfPrinter.AdobeReaderPath = @"C:\Program Files\Adobe\[...]\AcroRd32.exe";
////Ony my computer (running a German version of Windows XP) it is here:
//PdfFilePrinter.AdobeReaderPath = @"C:\\Documents and Settings\\mike.smith\\Desktop\\Adobe Reader 9.0.exe";
//Set the file to print and the Windows name of the printer.
//At my home office I have an old Laserjet 6L under my desk.
PdfFilePrinter printer = new PdfFilePrinter(@"C:\Documents and Settings\mike.smith\Desktop\Stuff\ReleaseNotesAndFolderList.pdf", " \\ny-dc-03\\IT-01");
try
{
printer.Print();
}
catch (Exception ex)
{
Console.WriteLine("Error: " + ex.Message);
}
}
}
}
Für das Leben von mir ich kann nicht ankommen dieses zu wirken und ausdrucken einer PDF-Datei zusammen. Immer, wenn ich gehe um zu drucken, bekomme ich die Fehlermeldung "die angegebene Datei wurde Nicht gefunden". Hat jemand eine Idee, ob etwas falsch ist mit meinem code?? Ich bin mit PDFSharp hier...
wo ist der PDFSharp.PDF.Printing-namespace???
ahhh in der aktuellen version von PDFSharp die gesamte Druck-Klasse auskommentiert ist
ahhh in der aktuellen version von PDFSharp die gesamte Druck-Klasse auskommentiert ist
InformationsquelleAutor yeahumok | 2009-05-19
Du musst angemeldet sein, um einen Kommentar abzugeben.
Eine Beobachtung, die in der folgenden Zeile:
Du mit "@" zu entkommen, der string und auch die Flucht des backslashes. Entfernen Sie entweder die "@" oder verwenden Sie einen einzelnen backslash.
Stellen Sie auch sicher, den richtigen Pfad zu deiner EXE.
UPDATE: Wenn Sie bestätigt haben, dass Sie den richtigen Pfad zu deinem Acrobat Reader EXE-Datei, die nächste Sache zu betrachten ist die "Printer Name" - parameter, die Sie übergeben, um die PdfFilePrinter Konstruktor.
Übergeben Sie
" \\ny-dc-03\\IT-01"
als den Namen des Druckers. Dieser muss mit dem Namen des Druckers genau so, wie es erscheint in der Liste der Drucker in Windows, nicht nur eine beliebige IP-Drucker.Wenn dies korrekt ist, werden Sie sicher zu entfernen, das Leerzeichen:
"\\ny-dc-03\\IT-01"
.habe bereits versucht zu tun, dass-immer noch nicht funktioniert
InformationsquelleAutor ichiban
Dies ist möglicherweise banal, ist aber in acrobat auf:
Es ist nur dein Benutzername impliziert, dass Ihr name nicht Mike smith.
Registrierung.ClassesRoot.OpenSubKey(@"Software\Adobe\Acrobat\Exe"), der Standardwert ist, was hält den Pfad zur aktuell installierten version von Acrobat, ob reader oder pro.
InformationsquelleAutor Omar Kooheji
Ich denke, das sollte
"\\\\ny-dc-03\\IT-01"
oder@"\\ny-dc-03\IT-01"
Nicht sicher, ob
@"\\ny-dc-03\\IT-01"
arbeiten, aber"\\ny-dc-03\\IT-01"
nicht arbeiten, wie UNC-Namen beginnen mit einem doppelten Schrägstrich.InformationsquelleAutor Vive la déraison