L'impression de fichiers Pdf avec PDFSharp
J'ai le code suivant:
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);
}
}
}
}
Pour la vie de moi je ne peux pas obtenir que cela fonctionne et imprimer un fichier PDF unique. Chaque fois que je vais à imprimer, j'ai l'erreur "Impossible de trouver le fichier spécifié". Quelqu'un at-il une idée si quelque chose va mal avec mon code?? Je suis en utilisant PDFSharp ici...
- où est le PDFSharp.PDF.L'impression d'espace de noms???
- ahhh dans la version actuelle de PDFSharp l'ensemble de l'Impression de la classe est commenté
Vous devez vous connecter pour publier un commentaire.
Une observation, dans la ligne suivante:
Vous utilisez le "@" pour échapper à la chaîne et aussi de s'échapper de la barre oblique inverse. Soit supprimer le "@" ou d'utiliser une seule barre oblique inverse.
Assurez-vous également que c'est le chemin d'accès correct à votre EXE.
Mise à JOUR: Si vous avez confirmé que vous avez le bon chemin d'accès à votre Acrobat Reader EXE, la prochaine chose à regarder est le "Nom de l'Imprimante" paramètre que vous êtes de passage à la PdfFilePrinter constructeur.
Vous êtes de passage à
" \\ny-dc-03\\IT-01"
comme le nom de l'imprimante. Cela doit correspondre au nom de l'imprimante tel qu'il apparaît dans la liste des Imprimantes dans Windows, pas seulement un arbitraire IP de l'imprimante.Si cela est correct, assurez-vous de supprimer l'espace de fin:
"\\ny-dc-03\\IT-01"
.Cela peut être une lapalissade mais il est acrobate à:
C'est juste votre nom d'utilisateur implique que votre nom n'est pas Mike smith.
Je pense que cela devrait être
"\\\\ny-dc-03\\IT-01"
ou@"\\ny-dc-03\IT-01"
Ne sais pas si
@"\\ny-dc-03\\IT-01"
de travail, mais"\\ny-dc-03\\IT-01"
ne peut pas travailler comme des noms UNC commencer avec une double barre oblique inverse.