2010-01-06 6 views
6

मैं सी # में एक विंडो आधारित अनुप्रयोग बनाना चाहता हूं ताकि हम इसे प्रत्येक सिस्टम में एप्लिकेशन इंस्टॉल किए बिना चला सकें। इसे उस एप्लिकेशन को डेटाबेस के माध्यम से कनेक्ट करने की आवश्यकता है।डेस्कटॉप (विंडो) एप्लिकेशन बनाएं जो इंस्टॉल किए बिना चलाया जा सके?

मैं इस एप्लिकेशन को बनाना चाहता हूं ताकि इसे सीधे पेंड्रिव के माध्यम से चलाया जा सके और डेटाबेस में भी लिख सकें।

मुझे पता है कि डेटाबेस के साथ कैसे काम करना है, हालांकि विंडो एप्लिकेशन के साथ ही इंस्टॉलर के साथ।

मैं कई खिड़की आवेदन बनाया है लेकिन के बाद क्लाइंट मशीन पर सभी रन तैनात सेटअप स्थापित कर रहा है। लेकिन अब मैं चाहता हूं कि क्लाइंट को तैनात सेटअप इंस्टॉल न करें। वह सीधे मेरे निष्पादन योग्य फ़ाइल

उत्तर

13

विंडोज़ में कुछ भी नहीं है जिसके लिए एप्लिकेशन को इंस्टॉल करने की आवश्यकता है। उस ने कहा, स्थापना का उद्देश्य है:

  • अंतिम उपयोगकर्ता के लिए चीजों को और अधिक सरल बनाएं।
  • आमतौर पर पथ जानकारी और अनइंस्टॉल जानकारी के लिए रजिस्ट्री सेटअप करें।
  • किसी भी प्रारंभिक जानकारी को शुरू करें जिसे सॉफ़्टवेयर को पहले चलाने से पहले इसकी आवश्यकता हो सकती है।

बस रजिस्ट्री का उपयोग करने से बचें और अपने आवेदन में स्थानीय रूप से फाइलों को सहेजना आम तौर पर आपके आवेदन को पोर्टेबल बनाने के लिए पर्याप्त है।

यह कहा गया, जब तक कि आप उपयोगकर्ता को अपने सॉफ़्टवेयर के भीतर डेटाबेस स्थान चुनने की अनुमति देते हैं, तो आपको ठीक होना चाहिए। उदाहरण के लिए, .ini फ़ाइल में पेन-ड्राइव पर जानकारी सहेजना, प्रत्येक कंप्यूटर को इन सेटिंग्स को पढ़ने के लिए प्लग करने की अनुमति देगा।

यदि आप प्रत्येक कंप्यूटर को डेटाबेस में एक अंतर कनेक्शन स्ट्रिंग की उम्मीद करते हैं, तो आप अपनी सेटिंग्स को %appdata% निर्देशिका में सहेज सकते हैं। जब उपयोगकर्ता बाद में पेंड्रिव को वापस प्लग करता है, तो उसकी सेटिंग्स अभी भी वहां रहेंगी, और कोई अन्य उपयोगकर्ता इन सेटिंग्स को नहीं देख पाएगा।

हालांकि, दूसरे दृष्टिकोण के नकारात्मक पक्ष यह है कि उपयोगकर्ता को "अनइंस्टॉल करने" का कोई तरीका नहीं है और %appdata% पर स्वचालित रूप से लिखी गई जगह को पुनर्प्राप्त करने का कोई तरीका नहीं है। हालांकि, अधिकांश निजी व्यावसायिक अनुप्रयोगों के लिए, यह चिंता का विषय नहीं है।


संपादित: तो आप अपना असली सवाल यह है कि एक इंस्टॉलर बिना एक आवेदन वितरित करने के लिए है, बस अपने आवेदन की रिलीज संस्करण बनाने, और आपके परियोजना के भीतर /bin/Release/ में लग रहे हो। इन फ़ाइलों को किसी अन्य स्थान पर कॉपी करें, किसी भी डीबग या अनइडेड फ़ाइलों को हटाएं, और सुनिश्चित करें कि आपके पास अपनी सभी निर्भरताएं क्रम में हैं।

+0

@Will Eddins: thx Eddin, अगर मुझे गलत नहीं समझा, तो क्या आप इसका कहना चाहते हैं। विंडो अनुप्रयोग के विकास के अपने पारंपरिक तरीके से आगे बढ़ें और क्लाइंट को आपके द्वारा उल्लिखित बिन फ़ोल्डर में बनाए गए एक्सई फ़ाइल को संभालें। ? –

+0

बिल्कुल। फ़ाइलों को फ्लैश ड्राइव पर कॉपी करें, सुनिश्चित करें कि वे किसी अन्य कंप्यूटर पर काम करते हैं (कि आप एक डीएलएल नहीं खो रहे हैं), और वितरित करें। –

+0

@Will Eddins Thx, व्यावहारिक रूप से इसे लागू करने के बाद इस प्रश्न को स्वीकार करने के लिए वापस आ जाएगा। मैं यह सुनिश्चित कर दूंगा कि फ्रेमवर्क और अन्य आवश्यक फाइलें –

0

पर क्लिक तुम सिर्फ एक डेटाबेस से कनेक्ट करना चाहते हैं के आधार पर अपना अनुप्रयोग का उपयोग कर सकते हैं, तो आप की जरूरत संस्थापक के किसी भी प्रकार के बिना EXE में ऐसा कर सकते हैं। यह कैसे किया जाता है यह इस बात पर निर्भर करेगा कि यह किस डेटाबेस पर है, और आप इसे कैसे कनेक्ट कर रहे हैं, लेकिन आम तौर पर वह आइटम जिसे EXE में एन्कोडिंग की आवश्यकता होती है (या एक आउटबोर्ड एक्सएमएल फ़ाइल जिसमें EXE पढ़ सकता है) कनेक्शन स्ट्रिंग है। यह कनेक्शन स्ट्रिंग शायद इंस्टॉलर का प्रबंधन कर रहा है।

सी # में अपना पहला विंडोज़ अनुप्रयोग के निर्माण पर एक अच्छा ट्यूटोरियल यहां पाया जा सकता: http://msdn.microsoft.com/en-us/library/360kwx3z.aspx

+0

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

+0

के माध्यम से डेटा दर्ज कर सके तो एक बनाएं। यदि आप विजुअल स्टूडियो या विजुअल स्टूडियो एक्सप्रेस का उपयोग कर रहे हैं, तो फ़ाइल/नए संवाद से "विंडोज़ एप्लिकेशन" का चयन करें। –

+0

यहां प्रारंभ करें: http://msdn.microsoft.com/en-us/library/360kwx3z.aspx –

0

तुम कहाँ पता नहीं है और कैसे खिड़की प्रपत्र आवेदन शुरू करने के लिए या कैसे डेटाबेस से कनेक्ट करने के लिए या तो, वहाँ बहुत सारे ट्यूटोरियल हैं और आप कर सकते हैं गूगल बहुत आसानी से इसके लिए;)

यहाँ कुछ उदाहरण हैं:

जीयूआई संबंधित:

Tutorial: Working with Windows Forms - Part I

GUI Windows Forms « C#/CSharp Tutorial

Windows Forms tutorial with C#

डेटाबेस से संबंधित:

Creating a database connection

0

स्थापना का सरलतम रूप; अगर/else का उपयोग करें; जब एप्लिकेशन शुरू होता है, तो यह कुछ रजिस्ट्री कुंजी की जांच करेगा (कहें, स्थापना = किया गया), यदि पंजीकरण कुंजी का मान = "किया गया" है, तो दूसरा भाग चलाएं, जिसका अर्थ है ऐप चलाएं। यदि इसकी "अधिसूचना" है, तो सभी प्रारंभिक सेटिंग्स सेट करें और फिर ऐप चलाएं। एक छद्म निम्नानुसार जाएगा:

if(HasValidRegistryKeys()) //Check if initial settings are already there 
{ 
    Runnable=true; 
} 
else 
{ 
//Not installed, lets setup app settings 
//Assume that the application is running for the first time. 
try 
{ 
    SetupRegistry(); //Set installation=done 
    SetupDatabase(); 
    //Setup more things. 
    Runnable=true; 
} 
catch() 
{Runnable=false;} 

} 

//Run the app 
if(Runnable) 
{ 
    RunApp(); 
} 
else 
{ 
    MessageBox.Show("Some error"); 
} 
संबंधित मुद्दे