2012-09-14 60 views
2

當您編譯項目時,是否有Visual Studio爲您聲明的所有預定義定義的列表?Visual Studio 2012定義的完整列表

很明顯,DEBUG或RELEASE很明顯,但有其他定義會自動聲明,例如創建控制檯應用程序或窗口應用程序時,或者生成的程序集將是DLL或exe文件。

是否有包含它們的列表?

回答

0

這只是在.NET framework .target文件中設置的一堆屬性。爲了確定你需要什麼 - 你可以追蹤調用目標鏈,看看究竟影響到一個或另一個輸出。 如果你深入挖掘 - 你會發現有很大的列表,它也有條件限制 - 如果其他屬性設置爲特定值,則會定義一些屬性等。 你想要對這樣的列表做什麼?你想只是爲了學習還是你有具體的任務?

+0

基本上我想知道我的應用程序正在編譯爲控制檯應用程序還是Windows應用程序。我想知道是否有一個定義。 –

+0

我認爲你可以依賴$(OutputType): $(OutputType)=='exe'用於控制檯應用程序 $(OutputType)=='winexe'用於windows應用程序。 您可以檢查Microsoft.Common.targets以獲取更多值(第171行及以下) –