- हाँ। उदाहरण के लिए, आप InnoSetup जैसे कुछ सेटअप बिल्डर का उपयोग कर सकते हैं। व्यक्तिगत रूप से, हालांकि, मैं अपने ग्राहकों को एक ज़िप फ़ाइल देना पसंद करता हूं, जिसे वे जहां चाहें वहां से निकाल सकते हैं। निष्पादन योग्य जार अपने आप सब कुछ संभालने में सक्षम होना चाहिए (मुझे यह पसंद है जहां सॉफ़्टवेयर स्थापित करने की कोई आवश्यकता नहीं है, बस अनपैक करें और चलाएं)।
- यदि यह हार्डकोडेड है, तो हाँ (लेकिन, हार्डकोडेड से आपका क्या तात्पर्य है) ? फाइल करने के लिए पथ? आईपी पता?)। आपको पथ और अन्य बाहरी चीजों के लिए गुणों या कॉन्फ़िगरेशन फ़ाइलों का उपयोग करना चाहिए जिन पर आपका सॉफ़्टवेयर निर्भर करता है। सॉफ्टवेयर को उन फाइलों से पढ़ना चाहिए। स्टार्टअप पर ऐसी फ़ाइल (फाइलों) की उपस्थिति के लिए जाँच करें - यदि अनुपलब्ध है, तो उपयोगकर्ता को एक विंडो दिखाई जानी चाहिए जिसमें कॉन्फ़िगरेशन दर्ज किया जा सकता है।
जहाँ तक आपके कोड के साथ MySQL को परिनियोजित करने का प्रश्न है - उसके लिए एक सर्वर का उपयोग करने पर विचार करें, ताकि आपके उपयोगकर्ता MySQL को स्थापित करने के लिए बाध्य न हों, इसके बजाय वे इसे नेट पर कनेक्ट करें। यदि आपको केवल स्थानीय रूप से डेटा संग्रहीत करने के लिए डेटाबेस की आवश्यकता है, तो SQLite या इसी तरह के फ़ाइल-आधारित db इंजन का उपयोग क्यों नहीं कर रहे हैं?
उपरोक्त उत्तर सिर्फ सुझाव हैं और मेरे सोचने के तरीके को कम-से-कम दर्शाते हैं। मुझे अधिक अनुभव वाले किसी व्यक्ति से सुनकर खुशी होगी। फिर भी, मुझे आशा है कि उत्तर थोड़ी मदद करेंगे :)