2016-09-29 4 views
7

में नेटवर्क प्रिंटर से एक्सेस अस्वीकार कर दिया गया है, मैं कोड से नेटवर्क प्रिंटर पर प्रिंट करने की कोशिश कर रहा हूं, लेकिन प्रिंट संवाद बॉक्स में नेटवर्क प्रिंटर स्थिति Access denied, unable to connect और प्रिंट बटन अक्षम है। लेकिन अगर मैं किसी अन्य एप्लिकेशन से प्रिंट करता हूं तो मैं उस प्रिंटर पर प्रिंट कर सकता हूं। और, यदि मैं प्रिंट संवाद से पीडीएफ में प्रिंट का चयन करता हूं, तो यह भी ठीक काम करता है। मैं बस नेटवर्क प्रिंटर पर प्रिंट नहीं कर सकता। क्या मुझे किसी प्रकार की अनुमति समस्या है?प्रिंटडियलॉग

if (File.Exists(previewDocument)) 
    File.Delete(previewDocument); 

PrintDialog printD = new PrintDialog(); 
printD.PageRangeSelection = PageRangeSelection.AllPages; 
printD.UserPageRangeEnabled = true; 

if (printD.ShowDialog() ?? false) 
{ 
    XpsDocument xpsDoc = new XpsDocument(previewDocument, FileAccess.ReadWrite); 
    XpsDocumentWriter xpsWriter = XpsDocument.CreateXpsDocumentWriter(xpsDoc); 
    xpsWriter.Write(((IDocumentPaginatorSource)messageFlow).DocumentPaginator); 

    FixedDocumentSequence fixedDocSeq = xpsDoc.GetFixedDocumentSequence(); 
    printD.PrintDocument(fixedDocSeq.DocumentPaginator, "Hello!"); 
} 
+0

आप उस संदर्भ को अच्छी तरह से देख सकते हैं जिस पर आपका एप्लिकेशन चलाने की कोशिश कर रहा है। यदि आप एक विशेषाधिकार के तहत चलाए जाते हैं जो प्रिंट करने की अनुमति नहीं देता है तो आप एप्लिकेशन संदर्भ का प्रतिरूपण कर सकते हैं। – Nair

+0

व्यवस्थापक के रूप में अपना आवेदन चलाने का प्रयास करें। – Hozikimaru

+0

क्या आप इस त्रुटि को प्रोग्राम के निर्माण से या डीबग से प्राप्त कर रहे हैं? – Hank

उत्तर

-1

मैं अभी तक टिप्पणी नहीं कर सकता लेकिन मैं आपकी समस्या के बारे में अपना विचार साझा करना चाहता था।

मुझे अपने अनुप्रयोगों से नेटवर्क ड्राइव तक पहुंच प्राप्त करने में समस्या आई है। व्यवस्थापक के रूप में चलते समय भी। मुझे लगता है कि प्रिंटर को इसी तरह से एक्सेस किया जा रहा है।

मेरी समस्या उपयोगकर्ता खाता नियंत्रण (यूएसी) के साथ थी।

इस के अनुसार एक रजिस्टर सेट करके देखें: Windows 10 and network drive

0

आप अपने साझा नेटवर्क प्रिंटर खोजने के लिए और इसे करने के लिए प्रिंट

printD.PrintQueue = New PrintQueue(New PrintServer(@"\\computer server name"), "the exact name of your network printer") 

आशा है कि करने के लिए अपने प्रिंट संवाद instantiating के बाद इस कोड टुकड़ा जोड़ने चाहिए यह

में मदद करता है
+0

मेरे पास स्थिर प्रिंटर नहीं हो सकता है। प्रत्येक उपयोगकर्ता के पास एक अलग नेटवर्क प्रिंटर होता है। – Arm0geddon

+0

आपको यह उल्लेख करना चाहिए था कि आपके पास स्थिर प्रिंटर नहीं हो सकता है। किस परिदृश्य में प्रत्येक उपयोगकर्ता के पास एक अलग नेटवर्क प्रिंटर होता है। यदि ऐसा है तो आपको लॉग ऑन उपयोगकर्ता के लिए नेटवर्क प्रिंटर सूचीबद्ध करने के लिए wmi क्वेरी की आवश्यकता है और उसके बाद अपने wpf एप्लिकेशन में चुनें। इस https://blogs.technet.microsoft.com/heyscriptingguy/2007/07/17/how-can-i-list-the-network-printers-for-the-logged-on-user/ का पालन करें उम्मीद है कि यह मदद करता है –

 संबंधित मुद्दे

  • कोई संबंधित समस्या नहीं^_^