[VS] 建置後的事件!

最近產品剛好有一個特殊的需求,就是專案建置好後,要把專案建置出來的東西搬到特定目錄下,

讓另一支程式去該目錄底下,呼叫我們建置好的dll,

先前我自己寫了一個cmd檔,每次建置完成後再手動去執行該cmd,

該cmd就會幫我把dll搬到我要的路徑底下,但是這樣好麻煩啊,每次都還要手動執行,

有時候換人建置時對方還會忘記這個動作,導致系統異常,

前輩就跟我說VS本身很像有提供建置前後的事件,可以幫我做類似的事情,

立刻來試試看,

首先先在專案開一個資料夾,叫做AfterCompile,然後把我們的cmd放進來,

接著在專案檔上方右鍵點選「屬性」,此刻會顯示以下畫面(記得切到建置事件這個頁籤),

接著在建置後事件輸入「call "$(ProjectDir)AfterComiple\xxx.cmd"」,

此時只要建置完成後,VS就會幫我們執行該cmd檔了,

要注意的是若是cmd會等待使用者輸入選項時,建置會失敗,

ex:XCOPY 指令沒設定好的話,會出現「指定了目標檔案名稱或目標目錄名稱(F = 檔案,D = 目錄)?」

這樣理論上正常,系統會想確認我們要輸出成檔案或目錄,但是對VS來說這樣是異常的,所以就會變成建置失敗,

所以設定上時還要再注意一下,請他不要提示唷!