2
當您編譯項目時,是否有Visual Studio爲您聲明的所有預定義定義的列表?Visual Studio 2012定義的完整列表
很明顯,DEBUG或RELEASE很明顯,但有其他定義會自動聲明,例如創建控制檯應用程序或窗口應用程序時,或者生成的程序集將是DLL或exe文件。
是否有包含它們的列表?
當您編譯項目時,是否有Visual Studio爲您聲明的所有預定義定義的列表?Visual Studio 2012定義的完整列表
很明顯,DEBUG或RELEASE很明顯,但有其他定義會自動聲明,例如創建控制檯應用程序或窗口應用程序時,或者生成的程序集將是DLL或exe文件。
是否有包含它們的列表?
這只是在.NET framework .target文件中設置的一堆屬性。爲了確定你需要什麼 - 你可以追蹤調用目標鏈,看看究竟影響到一個或另一個輸出。 如果你深入挖掘 - 你會發現有很大的列表,它也有條件限制 - 如果其他屬性設置爲特定值,則會定義一些屬性等。 你想要對這樣的列表做什麼?你想只是爲了學習還是你有具體的任務?
基本上我想知道我的應用程序正在編譯爲控制檯應用程序還是Windows應用程序。我想知道是否有一個定義。 –
我認爲你可以依賴$(OutputType): $(OutputType)=='exe'用於控制檯應用程序 $(OutputType)=='winexe'用於windows應用程序。 您可以檢查Microsoft.Common.targets以獲取更多值(第171行及以下) –