2009-01-08 46 views
5

我們使用32位和64位開發環境的混合。我們的一些類庫使用32位應用程序進行調試,因此我們擁有「開始外部程序」和「工作目錄」的調試設置。問題是設置需要不同 ,因爲32位應用程序安裝到在32位和64位調試環境中對啓動外部程序使用相同的調試設置

C:\ Program Files \ xxx(在32位開發環境中)或C:\ Program Files(x86)\ xxx(在64位開發環境)

有沒有一種方法可以使用某種類型的標記,如%PROGRAMFILES%或$(ProgramFiles),以便Visual Studio 2008知道在哪裏尋找外部程序?

除了將解決方案文件(保存調試信息)檢入源代碼控制之外,這不是一個主要問題...所以從源代碼倉庫獲取最新版本的解決方案可以保持與調試兩個程序文件位置之間的設置。

+0

你有沒有想出一個很好的解決方案呢? – Mario 2010-02-16 00:22:29

回答

2

正如BQ指出的,開始外部程序和工作目錄存儲在.user文件中。但是,對於任何與目錄名稱相關的設置,您都可以在.csproj和.user文件中使用$(Program Files)...唯一的技巧是您必須手動編輯文本中的相關.user或.csproj文件編輯。

如果用戶不在Visual Studio中編輯值,它將保持$(ProgramFiles)的值,​​並在32位和64位環境中正確擴展。

1

這些調試設置「啓動外部程序」和「工作目錄」存儲在ProjectName.csproj.user文件中,而不是解決方案(.sln)文件或項目(.csproj)文件中。通常情況下,.user文件不包含在源代碼管理中,因爲它們特定於正在進行調試的用戶環境。

您可以維護兩個單獨的.csproj.user文件(每個環境一個),並在打開解決方案之前交換到正確的版本。不理想,但總比沒有好。

相關問題