2012-04-02 28 views
5

मेरे पास एक डुनिट प्रोजेक्ट है जो कंसोल के रूप में संकलित नहीं होगा अगर मैं कुछ इकाइयों को जोड़ता हूं।
प्रोजेक्ट (डीपीआर) विज़ार्ड द्वारा बनाया गया है और CONSOLE_TESTRUNNER परिभाषित किया गया है।कंपाइलर कंसोल आउटपुट का उत्पादन नहीं कर सकता

{$IFDEF CONSOLE_TESTRUNNER} 
{$APPTYPE CONSOLE} 
{$ENDIF} 

begin 
    Application.Initialize; 
    if IsConsole then // <-- IsConsole is set to False. 
    with TextTestRunner.RunRegisteredTests do 
     Free 
    else 
    GUITestRunner.RunRegisteredTests; 
end. 

इकाइयां जो इसे विफल बनाती हैं उनमें कुछ वीसीएल घटक शामिल हैं लेकिन उन पर कोई परीक्षण नहीं चल रहा है।
मैंने लिंकर विकल्प सेट करने का भी प्रयास किया है लेकिन इससे कोई फर्क नहीं पड़ता।
क्या किसी को भी इसी तरह का मुद्दा अनुभव हुआ?
बस स्पष्टीकरण के लिए: यह प्रोजेक्ट Win32 2010 में Win32 है।

उत्तर

5

यह कोड मेरे लिए ठीक काम करता है। मैं दो कारणों के बारे में सोच सकता हूं कि डेल्फी कंसोल ऐप क्यों नहीं बना रहा है:

  1. CONSOLE_TESTRUNNER परिभाषित नहीं किया गया है।
  2. आपके पास अपने प्रोजेक्ट के कोड में कहीं {$APPTYPE GUI} है।

मुझे विश्वास है कि ऊपर 2 आइटम आपकी समस्या का कारण है।

+3

धन्यवाद यह APPTYPE था। Arrghhh। –