簡體   English   中英

Visual Studio:用於檢查配置類型(exe / dll)的宏

[英]Visual Studio: Macro for checking configuration type (exe/dll)

我可以用一個宏來檢查visual studio中的當前配置類型嗎? 根據當前設置,我想要包含main或dllmain函數:

#IFDEF CONFIGURATION_TYPE_EXE

     int main(int argc, char **argv)
     {
       ...
     }
#ELSEIF CONFIGURATION_TYPE_DLL


    BOOL APIENTRY DllMain( HANDLE hModule, DWORD  ul_reason_for_call, LPVOID lpReserved)
    {
        return TRUE;
    }

#ENDIF

如果它是dll,那么_WINDLL將被定義為繼承值。 您可以在此處找到它:配置屬性 - > C / C ++ - >預處理器 - >預處理器定義。

#ifdef _WINDLL
BOOL WINAPI DllMain(HINSTANCE hinstDLL, DWORD fdwReason, LPVOID lpvReserved)
{ ... }
#else
int main(int argc, char** argv)
{ ... }
#endif

如果它是DLL項目,則將定義_USRDLL (請參閱配置屬性\\預處理器\\預處理器定義)。

但請注意,因為列表由向導填充,如果項目是作為其他項目創建的,則不會自動更新,然后將其配置為DLL。 此外,如果要構建要與DLL鏈接的lib,則必須小心。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM