最近產品剛好有一個特殊的需求,就是專案建置好後,要把專案建置出來的東西搬到特定目錄下,
讓另一支程式去該目錄底下,呼叫我們建置好的dll,
先前我自己寫了一個cmd檔,每次建置完成後再手動去執行該cmd,
該cmd就會幫我把dll搬到我要的路徑底下,但是這樣好麻煩啊,每次都還要手動執行,
有時候換人建置時對方還會忘記這個動作,導致系統異常,
前輩就跟我說VS本身很像有提供建置前後的事件,可以幫我做類似的事情,
立刻來試試看,
首先先在專案開一個資料夾,叫做AfterCompile,然後把我們的cmd放進來,
接著在專案檔上方右鍵點選「屬性」,此刻會顯示以下畫面(記得切到建置事件這個頁籤),
接著在建置後事件輸入「call "$(ProjectDir)AfterComiple\xxx.cmd"」,
此時只要建置完成後,VS就會幫我們執行該cmd檔了,
要注意的是若是cmd會等待使用者輸入選項時,建置會失敗,
ex:XCOPY 指令沒設定好的話,會出現「指定了目標檔案名稱或目標目錄名稱(F = 檔案,D = 目錄)?」
這樣理論上正常,系統會想確認我們要輸出成檔案或目錄,但是對VS來說這樣是異常的,所以就會變成建置失敗,
所以設定上時還要再注意一下,請他不要提示唷!