आप शर्तों अप मिश्रण है। "विंडोज कंसोल" एक "cmd.exe" नहीं है, लेकिन विशेष "सेवा" जो "conhost.exe" के साथ Win7 के उदाहरण के लिए कार्यान्वित किया गया है।
जब आप किसी भी कंसोल एप्लिकेशन (सीएमडी, पावरहेल, या अपने स्वयं के ऐप से कोई फर्क नहीं पड़ता) विंडोज़ इसे विशेष वातावरण में शुरू करता है, जिसमें दृश्य कंसोल विंडो हो सकती है। लेकिन यह हमेशा आंतरिक विंडोज कंसोल है।
लेकिन! कंसोल अनुकरणकर्ता इस खिड़की को पकड़ सकते हैं, असली कंसोल छुपा सकते हैं और अपनी खुद की नकली सतह प्रदर्शित कर सकते हैं। उदाहरण के लिए, आप विशेष स्विच के साथ ConEmu शुरू कर सकते हैं (एसयू पर वर्णित, टिप्पणी में लिंक) और इसके द्वारा किया गया।
डिफ़ॉल्ट टर्मिनल प्रतिस्थापन
ConEmu Default Terminal
नामक एक सुविधा है। यदि आप इस सुविधा को सक्षम करते हैं तो आप ConEmu टर्मिनल में विजुअल स्टूडियो से अपना एप्लिकेशन शुरू कर देंगे। विचार स्रोत अनुप्रयोग में CreateProcess को हुक कर रहा है (explorer.exe
, vcexpress.exe
और इसी तरह, सेटिंग में |
के साथ उन्हें सीमित करें)। project wiki में उस सुविधा के बारे में और पढ़ें।
आप मौजूदा ConEmu इंस्टेंस का उपयोग करने या अपने एप्लिकेशन के लिए नई विंडो चलाने के लिए चुन सकते हैं। और आपके आवेदन के बाद Conemu कंसोल पर Press Enter or Esc to close console...
संदेश दिखा सकता है (Always
रेडियो)। आउटपुट देखने के लिए अब अपने प्रोग्राम के अंत में readline
जोड़ने की आवश्यकता नहीं है।
आपके आवेदन कोड
बदलने क्योंकि यह अपने स्वयं के कार्यक्रम है, आप उदाहरण के लिए, जोड़ने के लिए, अपने main
समारोह
सी ++ उदाहरण के मुखिया के लाइनों निम्नलिखित सकता है
#ifdef _DEBUG
if (IsDebuggerPresent())
{
STARTUPINFO si = {sizeof(si)}; PROCESS_INFORMATION pi = {};
if (CreateProcess(NULL,
_T("\"C:\\Program Files\\ConEmu\\ConEmu\\ConEmuC.exe\" /AUTOATTACH"),
NULL, NULL, FALSE, NORMAL_PRIORITY_CLASS, NULL, NULL, &si, &pi))
{ CloseHandle(pi.hProcess); CloseHandle(pi.hThread); }
}
#endif
सी # उदाहरण
#if DEBUG
ProcessStartInfo pi = new ProcessStartInfo(@"C:\Program Files\ConEmu\ConEmu\ConEmuC.exe", "/AUTOATTACH");
pi.CreateNoWindow = false;
pi.UseShellExecute = false;
Console.WriteLine("Press Enter after attach succeeded");
Process.Start(pi);
Console.ReadLine();
#endif
SuperUser पर इसी प्रकार के क्यू http://superuser.com/q/445394/139371 – Maximus
काम ठीक नीचे इस सवाल का जवाब में दी गई विधियों में, हालांकि, मैं चाहता हूँ दृश्य स्टूडियो एक तीसरी पार्टी को चुनने के लिए कंसोल में निर्मित समर्थन किया था सभी कंसोल अनुप्रयोग आउटपुट प्रदर्शित करने के लिए एमुलेटर। (अभी भी यह सुनिश्चित नहीं है कि मुझे यहां मेरी शब्दावली मिल रही है, @Maximus! :-)) –
हाँ, ConEmu ... – Anubis