2010-03-01 10 views
8

बस सोच रहा है कि कोई मुझे जावा में आने वाली किसी समस्या के साथ मेरी सहायता कर सकता है या नहीं।जावा: डिफॉल्ट मेल एप्लिकेशन खोलें और नया मेल बनाएं और फ़ील्ड करें और विषय फ़ील्ड

क्या कोड के एक अनुभाग का उत्पादन करने के लिए जावा के भीतर कार्यक्षमता है जो उपयोगकर्ता के पीसी पर डिफ़ॉल्ट ईमेल एप्लिकेशन खोल देगा? (मुझे लगता है कि लगभग एक फैंसी मेलटो लिंक की तरह ...)

यदि वहां है - क्या टू और विषय फ़ील्ड जैसे क्षेत्रों को पॉप्युलेट करना संभव है?

धन्यवाद, माइक।

उत्तर

18

डेस्कटॉप.मेल (यूआरआई मेलtoURI) आपका मित्र है!

जावाडोक:

, मेल उपयोगकर्ता डिफ़ॉल्ट मेल क्लाइंट के खिड़की रचना की शुरूआत एक mailto द्वारा निर्दिष्ट संदेश क्षेत्रों भरने: यूआरआई।

एक मेलto: यूआरआई "टू", "सीसी", "विषय", "बॉडी" इत्यादि सहित संदेश फ़ील्ड निर्दिष्ट कर सकता है। मेलो के लिए The mailto URL scheme (RFC 2368) देखें: यूआरआई विनिर्देश विवरण।

उदाहरण कोड:

Desktop desktop; 
if (Desktop.isDesktopSupported() 
    && (desktop = Desktop.getDesktop()).isSupported(Desktop.Action.MAIL)) { 
    URI mailto = new URI("mailto:[email protected]?subject=Hello%20World"); 
    desktop.mail(mailto); 
} else { 
    // TODO fallback to some Runtime.exec(..) voodoo? 
    throw new RuntimeException("desktop doesn't support mailto; mail is dead anyway ;)"); 
} 
+0

यह काम हर समय करता है? मैंने awt.Desktop.getDesktop() का उपयोग करने की कोशिश की है और पहले से ही यह काम नहीं करता है - यह भी देखें http://stackoverflow.com/questions/102325/not-supported-platforms-for-java-awt-desktop -getdesktop – blank

+0

आपकी मदद के लिए धन्यवाद sfussenegger! आपने एक कठिन समस्या (मेरे लिए) ध्वनि तुच्छ ध्वनि की आवाज उठाई। चीयर्स। :) – Mike

+2

voodoo – BalusC