如果我啓動RAD Studio命令提示符並在項目目錄中運行MSBuild如何找到Delphi搜索路徑?
msbuild /t:Rebuild
,的MSBuild將顯示完整的命令行來調用dcc32,包括所有的路徑設置。
哪一種魔力確實的MSBuild使用到搜索路徑的基礎上,IDE設置(存儲在註冊表中)和項目文件(其中包含像$佔位符(DCC_UnitSearchPath)?
的RAD Studio命令提示只設置了MSBuild的.Net環境,所以還有其他的東西在幕後工作嗎?
如果我啓動RAD Studio命令提示符並在項目目錄中運行MSBuild如何找到Delphi搜索路徑?
msbuild /t:Rebuild
,的MSBuild將顯示完整的命令行來調用dcc32,包括所有的路徑設置。
哪一種魔力確實的MSBuild使用到搜索路徑的基礎上,IDE設置(存儲在註冊表中)和項目文件(其中包含像$佔位符(DCC_UnitSearchPath)?
的RAD Studio命令提示只設置了MSBuild的.Net環境,所以還有其他的東西在幕後工作嗎?
如果檢查項目文件,你會注意到它包含CodeGear.Delphi.Targets,其中包含CodeGear.Common.Targets,其中又包含EnvOptions.proj。 EnvOptions.proj由IDE更新以包含來自注冊表的路徑。
你是否已經走過了這個項目的包含體?你應該能夠預測它被計算的位置(即,哪個任務)並使用反射器進行反向工程。請記住,MSBuild只是[非常古怪]文本。
或者您可以打開詳細的日誌記錄並發現哪個任務以這種方式計算它。
或者你可以使用procmon中要監視的REGKEYS被探測等
或者你可以等待巴里一起去,給一個明確的答案:P
對不起,我無法找到EnvOptions.proj(或目錄),它是作爲參考$(APPDATA)\的CodeGear \ $(BDSAppDataBaseDir)\ 6.0 \ EnvOptions.proj – mjn 2009-11-30 17:32:41
看在C:\ Documents和Settings \ \ Application Data \ CodeGear \ BDS \ 6.0,如果您使用的是XP或C:\ Users \ \ AppData \ Roaming \ CodeGear \ BDS \ 6.0(如果您使用的是Vista或Windows 7)。 –
2009-11-30 17:35:20
謝謝!我的第一個搜索沒有包含隱藏文件夾:P – mjn 2009-11-30 17:50:46