Imprimer sur une imprimante réseau à l'aide de l'adresse IP
Je veux envoyer un nom et une adresse IP de l'imprimante pour spécifier l'imprimante à utiliser.
J'obtiens un message d'erreur indiquant que "les Paramètres d'accès de l'imprimante 'xxx.xxx.xxx.xxx " ne sont pas valides." quand j'arrive à imprimerdoc.Print().
Comment définir l'imprimante pour imprimer en fonction de l'Adresse IP?
printdoc = new PrintDocument();
printdoc.PrinterSettings.PrinterName = IPAddress.Trim;
printdoc.DocumentName = FileName;
printdoc.Print();
Comment résoudre ce problème?De son c# vs2010 autonome d'application windows
- Éventuellement pertinentes: stackoverflow.com/a/18722872/5858238
Vous devez vous connecter pour publier un commentaire.
Votre imprimante est accessible en réseau pour la machine que vous utilisez votre logiciel?
http://msdn.microsoft.com/en-us/library/system.drawing.printing.printersettings.printername.aspx
Comme vous pouvez le voir, vous devriez appeler
IsValid
afin de déterminer si tout est ok et vous pouvez également utiliserInstalledPrinters
propriété pour obtenir une liste des imprimantes installées sur le système. Je suppose que vous n'avez pas installé l'imprimante correctement ou que vous n'avez pas les autorisations suffisantes ou quelque chose comme ça.edit: si à l'aide de nom fonctionne, cela devrait faire l'affaire: Comment accéder à un nom de l'imprimante à partir de l'IP sur le réseau en C#?
Vous ne pouvez pas le faire à l'aide de IPAddress. L'imprimante doit être déjà installé sur votre Machine.
Sur certains systèmes, cette fonction est réservée pour les administrateurs uniquement si vous êtes app ne doit pas être la création d'imprimantes. Après tout, vous n'avez pas les pilotes pour chaque type d'imprimante soit.
Votre application ne peut obtenir le nom de l'imprimante à utiliser qui est déjà installé. Vous ne pouvez pas utiliser simplement l'adresse IP.