VS2012 - How to check during runtime if program runs with debugging or not? -


VS2012, C ++ project।

जब मैं प्रोग्राम निष्पादित करता हूँ तो मैं "आरंभ डिबगिंग" या " डीबगिंग के बिना आरंभ करें "।

क्या उस जानकारी को रन टाइम के दौरान पुनः प्राप्त करना संभव है?

मेरा लक्ष्य है एक log.txt फ़ाइल बनाना और मैं उस सूचना को उस पर लिखना चाहता हूं

VisualStudio _DEBUG और NDEBUG को एक के रूप में बनाता है परिभाषित करते हैं। आप इसे संकलन समय पर देख सकते हैं। और यह कहना गलत होगा कि आप इस तथ्य को रन टाइम पर देख रहे हैं। एक बार कोड को संकलित करने के बाद, आपके पास बिना किसी डिबगिंग प्रतीकों के साथ एक निष्पादन योग्य फाइल होगी। इसका मतलब है कि आप केवल एक संकलन समय में एक प्रकार का निर्माण जांचते हैं।

  #ifdef _DEBUG std :: cout & lt; & lt; "डीबग \ n"; #else std :: cout & lt; & lt; "रिलीज \ n"; #endif  

संपादित करें अपने मामले में आप बस IsDebuggerPresent () फ़ंक्शन कॉल कर सकते हैं (Windows.h को शामिल करने के लिए मत भूलना) चलाने के प्रकार का निर्धारण करने के लिए।


Comments