我有很多使用安裝程序交付給客戶的visual studio項目。安裝完成後,所有項目和解決方案文件應該是最新安裝的Visual Studio版本。有沒有什麼辦法可以快速轉換很多項目?以編程方式升級Visual Studio解決方案和項目文件
我嘗試以下操作:
1)解析文件和更換喜歡ToolsVersion
等,這是快,但不可靠的,應該改變每一個新的Visual Studio裏面說到市場(每年從現在不同性質據我所知)
2)使用devenv的升級功能,可靠的,但速度很慢:
string[] files = Directory.GetFiles(@"c:\MyTmp", "*.sln", SearchOption.AllDirectories);
foreach (string file in files)
{
Process process = new Process();
process.StartInfo.FileName = pathToTheLatestVS;
process.StartInfo.Arguments = "/Upgrade \"" + file + "\"";
process.Start();
process.WaitForExit();
}
3)嘗試創建VS的一個隱藏的實例和操縱從那裏解決方案描述here,但沒有運氣。
那麼有可能以快速可靠的方式將許多項目/解決方案文件升級到特定的Visual Studio版本?
您可以使用兩個選項的組合。預先爲現有版本的Visual Studio準備項目文件,並安裝已準備好的文件。對於將來的版本,您可以使用第二種方法。 –
@AlexButenko這不是一個選項,因爲有很多項目正在改變,我們確實支持來自VS 2005的客戶,所以我們必須保持5倍的項目文件。我的第二種方法是慢得令人無法接受的。 – VladL
對我來說,它應該是一個選項,因爲基本上你所做的只是處理源代碼控制問題。您只需將客戶端安裝鏈接到某個版本的源代碼管理/生產blob,然後從那裏提取相關的解決方案和項目文件即可。 – rism