जावा का उपयोग करके, मुझे नेटवर्क प्रिंटर पर प्रिंट करने की आवश्यकता है, जो स्थानीय रूप से स्थापित नहीं है। मुझे केवल प्रिंटर का नाम पता है। सभी ट्यूटोरियल मैंने देखा है की तरह कुछ के साथ शुरू किया:नेटवर्क प्रिंटर पर प्रिंट करने के लिए जावा का उपयोग कैसे करें?
PrintService []services = PrinterJob.lookupPrintServices();
समस्या कोई प्रिंटर स्थापित किया जा सकता है, तो सेवाओं है कि मामले में खाली हो जाएगा। मुझे प्रिंटर नाम सीधे सेट करना होगा, न केवल दृश्य प्रिंटर के माध्यम से गणना करें।
'lookupPrintServices()' के माध्यम से उपलब्ध प्रिंटर ओ/एस में पंजीकृत प्रिंटर सूचीबद्ध करता है और एप्लिकेशन चला रहे उपयोगकर्ता को पंजीकृत करता है। उदाहरण के लिए, यदि विंडोज़ में, आपको यह सुनिश्चित करना होगा कि आप जिस प्रिंटर को चाहते हैं वह पंजीकृत है, जो भी सक्रिय निर्देशिका उपयोगकर्ता ऐप चल रहा है (स्थानीय उपयोगकर्ता, पंजीकृत सेवा इत्यादि) यह एक बार पंजीकरण है। किसी नेटवर्क पर, आप नेटवर्क पर प्रिंटर भी पंजीकृत कर सकते हैं और इसे // सर्वर/प्रिंटरनाम – JoshDM
तक एक्सेस कर सकते हैं मुझे lookupPrintServices() का उपयोग करने की आवश्यकता नहीं है। मुझे // सर्वर/प्रिंटरनाम प्रारूप में प्रिंटर नाम मिल गए हैं। समस्या यह है कि लुकअपप्रिंट सर्विसेज उनमें से कोई भी नहीं देख सकता है और मैं इसे पंजीकृत या इंस्टॉल नहीं कर सकता। .NET में आप ऑब्जेक्ट प्रिंटरसेटिंग में प्रिंटर नाम सेट कर सकते हैं। मैं जानना चाहता हूं, अगर कुछ भी इसी तरह की संभावना जावा में मौजूद है। यह आसान है। मुझे पीडीएफ फ़ाइल मिली है (जो पीडीएफबॉक्स को संभालती है) और प्रिंटर का नाम है और मैं चुपचाप एक्रोबैट खोलने के बिना इसे प्रिंट करना चाहता हूं। मैं सबसे सरल तरीका जानना चाहता हूं। – user1431544
भले ही यह नेटवर्क पर पंजीकृत है, यदि जावा ऐप चलाने वाले डोमेन उपयोगकर्ता के लिए प्रिंटर विंडो नियंत्रण कक्ष में दिखाई नहीं देता है, तो यह जावा प्रिंट के माध्यम से जावा पर दिखाई नहीं देगा। आपके पास नाम और सही पथ हो सकता है, लेकिन यदि यह सर्वर पर पंजीकृत नहीं है तो ऐप चालू है, यह नहीं मिलेगा। – JoshDM