2011-03-30 18 views
5

मुझे दो परियोजनाएं मिली हैं: एक नेट 4.0 कंसोल एप्लिकेशन और एक Asp.Net 4.0 वेबसाइट (वे एक ही समाधान में हैं)। अब मैं वेब एप्लिकेशन में कंसोल एप्लिकेशन (its.exe) शामिल करना चाहता हूं, क्योंकि जब उपयोगकर्ता किसी निश्चित बटन पर क्लिक करता है तो मुझे इसे सर्वर पर चलाने की आवश्यकता होती है।एक अन्य प्रोजेक्ट कंसोल एप्लिकेशन को एक Asp.Net वेबसाइट में कैसे शामिल किया जाए?

अब मैं इसे इस तरह से शामिल करना चाहता हूं कि जब भी मैं समाधान को पुन: संकलित करता हूं तो कंसोल एप्लिकेशन अपडेट हो जाएगा, इसलिए यह अद्यतित रहता है।

तो ... मैं अपने वेब ऐप में अपना .exe कैसे शामिल कर सकता हूं?

Ps। संदर्भित काम नहीं करता: enter image description here

+0

मैं एक घटना बिल्ड पश्चात कि .exe फ़ाइल और उसके आश्रित फाइलों के साथ एक इलाज काम करता है के साथ मेरा उत्तर नवीनीकृत किया है। –

उत्तर

6

तुम सिर्फ वेबसाइट परियोजना के लिए एक "परियोजना संदर्भ" के रूप में जोड़ने का प्रयास किया है? वेबसाइट प्रोजेक्ट पर राइट क्लिक करें, "संदर्भ जोड़ें ..." चुनें और "प्रोजेक्ट्स" टैब पर स्विच करें।

यहां एक त्वरित परीक्षण से पता चला कि कंसोल ऐप प्रोजेक्ट (.exe) का आउटपुट जब मैंने समाधान बनाया था तो वेबसाइट के/bin फ़ोल्डर में कॉपी किया गया था।

तब आप यह सुनिश्चित करने के लिए अपने मानक परिनियोजन तंत्र का उपयोग करने में सक्षम होना चाहिए कि यह अन्य पुस्तकालयों के साथ ही सर्वर पर प्रतिलिपि बनाई गई है।


क्षमा याचना, तुम सही हो, यह केवल एक वेब applciation साथ, एक वेबसाइट परियोजना के साथ काम नहीं करता।

इस मामले में, आपको अपने कंसोल ऐप पर "पोस्ट बिल्ड" ईवेंट का उपयोग वेबसाइट के फ़ोल्डर में कॉपी करने के लिए करना होगा।

समाधान एक्सप्लोरर में कंसोल ऐप प्रोजेक्ट पर राइट क्लिक करें और "गुण" चुनें या जब आपके पास प्रोजेक्ट से फ़ाइल है, तो "प्रोजेक्ट" मेनू का उपयोग करें।

xcopy "$(TargetDir)$(TargetFileName)" "c:\users\[UserName]\Documents\Visual Studio 2010\Websites\[ProjectName]\bin\" /D /S /I /Y 

आप PDB और config फाइल के रूप में अच्छी तरह से तो जैसे कुछ शामिल करना चाहते हैं:

फिर "घटनाक्रम बिल्ड" टैब पर, "पोस्ट-निर्माण घटना कमांड लाइन" की तरह कुछ करने के लिए अद्यतन निम्नलिखित बेहतर होगा:

xcopy "$(TargetDir)$(TargetName).*" "c:\users\[UserName]\Documents\Visual Studio 2010\Websites\[ProjectName]\bin\" /D /S /I /Y 
+1

नहीं, यह काम नहीं करता है क्योंकि यह कहता है कि 'एक परियोजना को संदर्भित करने के लिए' डीएल 'एक्सटेंशन में बनाना चाहिए।' –

+0

@Kees - आह, क्षमा करें, हाँ, "वेब एप्लिकेशन" की बजाय किसी वेबसाइट की खुशी। –

+0

कमाल ... पूरी तरह से काम करता है !! –

0

यदि आप ब्राउज़ टैब का उपयोग करते हैं तो एक्सई विकल्प उपलब्ध है।

+0

आप शायद उस मामले में एक सामान्य निर्देशिका का उपयोग करने के लिए डीबग और रिलीज बिल्ड की आउटपुट निर्देशिका बदलना चाहते हैं, जो यह जानना मुश्किल है कि क्या आपने डीबग या रिलीज बिल्ड किया था, अन्यथा आपको उस व्यक्ति का उपयोग करने में बंद कर दिया जाएगा जिसे आप पहले ब्राउज़ करते थे - यह ध्यान नहीं देगा कि आपने उदाहरण के लिए रिलीज बिल्ड किया होगा। –

1

Output Type

परियोजना आप संदर्भ के लिए कोशिश कर रहे हैं पर, आप वर्ग पुस्तकालय के लिए उत्पादन प्रकार बदलने के लिए सुनिश्चित करें। इसे ठीक करना चाहिए।

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

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