2012-02-18 15 views
7

पर लॉन्च 4j का उपयोग कर जावा एप्लिकेशन पिन करना मैं वर्तमान में विंडोज 7 टास्कबार में जावा एप्लिकेशन पिन करने की कोशिश कर रहा हूं। एप्लिकेशन Launch4j के साथ लॉन्च किया गया है। प्रोग्राम आइकन सही तरीके से प्रदर्शित होता है लेकिन टास्कबार पर आइकन पर राइट-क्लिक करने से केवल "विंडो बंद करें" प्रविष्टि के साथ एक संदर्भ-मेनू दिखाता है। टास्कबार में एप्लिकेशन पिन करने के लिए कोई मेनू प्रविष्टि नहीं। EXE फ़ाइल को टास्कबार में खींचना ठीक से काम नहीं कर रहा है। टास्कबार में इस नए लॉन्चर पर क्लिक करते समय टास्कबार में दूसरा आइकन स्पॉन होता है।विंडोज 7 टास्कबार

मैं इन दो सवालों समस्या को हल करने के लिए समाधान के निर्देशों का पालन किया है, लेकिन यह मदद नहीं की:

दूसरा सवाल से JNA सामान/समाधान संकलन और कोई अपवाद फेंक नहीं है। मैं इसे सेट करने के बाद ऐप आईडी पढ़ सकता हूं। लेकिन मैं अभी भी टास्कबार पर एप्लिकेशन पिन नहीं कर सकता। निर्माण प्रणाली के रूप में

https://github.com/kayahr/launch4jtest

आवेदन का उपयोग करता है Maven:

मैं एक छोटे से परीक्षण जो समस्या को दर्शाता है Github पर आवेदन बनाया है। बस mvn package चलाएं और आपको लक्ष्य निर्देशिका में एक ज़िप फ़ाइल मिलेगी जिसमें EXE फ़ाइल और jna.jar शामिल है जो इस ऐप आईडी को सेट करने के लिए आवश्यक है। इस ज़िप को कुछ निर्देशिका में निकालें, EXE को डबल-क्लिक करें और एप्लिकेशन को टास्कबार पर पिन करने का प्रयास करें और आपको समस्या दिखाई देगी।

तो इस एप्लिकेशन के साथ क्या गलत है?

+0

मैंने सफलतापूर्वक यह किया है लेकिन Launch4J का उपयोग करके बनाए गए निष्पादन योग्य के लिए मेवेन के माध्यम से नहीं। आपको एक आइकन शॉर्टकट बनाने की आवश्यकता है जो AppUserModelID जानकारी एम्बेड करता है। InnoSetup [प्रतीक] अनुभाग के तहत ऐसे आइकन शॉर्टकट बना सकता है। जेएनए के माध्यम से AppUserModelID को आवंटित एप्लिकेशन नाम की आपूर्ति करें। – ecle

+0

देखें http://stackoverflow.com/questions/5646813/how-to-make-exe-file-for-izpack-installer-jar-file और http://stackoverflow.com/questions/5438651/launch4j-nsis- और-डुप्लिकेट-पिन-विंडोज -7-टास्कबार-आइकनों – ecle

+0

@eee समस्या यह है: मुझे इस इंस्टॉलर को लिनक्स पर बनाने की आवश्यकता है क्योंकि मेरे पास बिल्ड समय के दौरान विंडोज बॉक्स तक कोई पहुंच नहीं है। एनएसआईएस के लिए एक प्लगइन है लेकिन यह केवल विंडोज़ पर चलता है क्योंकि यह सीधे कुछ विंडोज एपीआई कॉल को कॉल करता है। और यहां तक ​​कि यदि मैं इन शॉर्टकट को संशोधित करने का प्रबंधन करता हूं: तब भी होता है जब उपयोगकर्ता EXE को सीधे प्रारंभ करता है या EXE फ़ाइल से कस्टम शॉर्टकट बनाता है? फिर भी यह काम नहीं करता है। – kayahr

उत्तर

4

एनबी। कयाहर के अनुरोध के अनुसार मूल रूप से मुख्य पोस्ट में कुछ टिप्पणियों को दोबारा लिखा गया :)

आपको एक आइकन शॉर्टकट बनाने की आवश्यकता है जो AppUserModelID जानकारी एम्बेड करता है। InnoSetup [Icons] अनुभाग के तहत ऐसे आइकन शॉर्टकट बना सकता है। जेएनए के माध्यम से AppUserModelID को आवंटित एप्लिकेशन नाम की आपूर्ति करें। सुझाए गए लिंक को पढ़ने के लिए:

How to make .exe file for izpack installer .jar file

Launch4j, NSIS, and duplicate pinned Windows 7 taskbar icons

  1. यह काम करता है जब खींचने और पिन किए गए आइकन बनाने के लिए विंडोज 7 टास्कबार में EXE फ़ाइल (नहीं उसका आइकन शॉर्टकट) छोड़ने;
  2. यह EXE फ़ाइल चलाते समय काम करता है और बाद में पिन किए गए आइकन बनाने के लिए "टास्कबार पर पिन" विकल्प मेनू चुनता है। यदि आप AppUserModelID सेट नहीं करते हैं, तो यह संभव नहीं है; यहां तक ​​कि यह आपके अजीब आइकन के बजाय टास्कबार पर javaw.exe "आइकन" जैसा अजीब व्यवहार करेगा क्योंकि Launch4J javaw का उपयोग करके निष्पादन योग्य जार को कॉल करता है।exe (दोहराया पिन किए गए प्रतीक)

, लिनक्स के तहत Windows- आधारित संस्थापक बिल्डर को चलाने के लिए एक गाइड के रूप में इस संदर्भ लें:

http://katastrophos.net/andre/blog/2009/03/16/setting-up-the-inno-setup-compiler-on-debian/

हाँ, के रूप में kayahr से उल्लेख किया है, यह विंडोज 7 सुविधा केवल होगा काम करें जब एम्बेडेड AppUserModelID के साथ उसका आइकन शॉर्टकट बरकरार रहता है (यानी इसे हटाया/हटाया नहीं गया है)।

+0

यह ध्यान दिया जाना चाहिए कि यह विधि केवल तभी काम करती है जब शॉर्टकट किसी विशिष्ट स्थान पर उपलब्ध हो! स्टार्ट मेनू। मैं पुष्टि कर सकता हूं कि यह काम नहीं करता है यदि आपके पास इंस्टॉलर प्रोग्राम फ़ाइलों में शॉर्टकट बनाते हैं (अगला '.exe')। मैं यह समझने की कोशिश कर रहा था कि एक्सई से शुरू होने पर मैं पिन करने में असमर्थ क्यों था (मैं केवल शॉर्टकट को शॉर्टकट खींचकर पिन कर सकता था, एक्सई से शुरू करने के बाद पिन पिन शॉर्टकट के साथ समूह नहीं था)। यह उल्लेखनीय है कि मैं एक गैर-प्रशासक उपयोगकर्ता खाता चला रहा हूं और यह संबंधित अनुमतियां हो सकती है। – predi

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