1
我有一個惡性腳本,做一個完整的構建和部署到我們的開發環境。部署C#.Net Win exe及其使用的DLL涉及將它們移動到網絡位置,我們的測試人員和其他開發人員在其中運行它們。
<copy todir="${dest.dir}" overwrite="true" failonerror="false" >
<fileset basedir="${source.dir}" >
<include name="**/*" />
</fileset>
</copy>
眼下,腳本調用的複製任務,以覆蓋=「真」,但如果有人正在運行的應用,報告
無法複製「source.dll」這個失敗'dest.dll'。訪問路徑'dest.dll'被拒絕。
「dest.dll」是主要EXE的依賴項之一,與它一起復制。現在,我有兩個資源之一:我要麼找出誰開放並要求他們退出,要麼發送電子郵件給我們的系統工程師,他們會做一些巫術來刪除鎖定的文件。無論如何,我可以將一些我自己的巫術納入NAnt腳本,所以文件複製總是成功?
問題在於,它只適用於本地機器上的進程。我不認爲UnlockFile能夠從另一個盒子上的另一個用戶解鎖文件。 – Dov 2009-08-17 19:36:57