Visual Studio
使用C# 2013開發了一個小程式,在簡單的測試後就將程式交出去了,沒想到同事在安裝時發生問題,出現了如下的畫面:
看了目標電腦的作業系統,原來是Windows XP,發現Windows XP無法安裝.Net FrameWork 4.5,
所以在考量後,決定將原本的C#2013改用C#2008來重新建置,上網尋找了一下,
發現鄭子璉大有寫了一篇VB2008與VB2012共同編輯原始碼的文章,真是受用無窮,感謝~
https://tlcheng.wordpress.com/2013/03/02/vs-vb2008-與-vb2012-共同編輯原始碼/
C#2013的處理方式跟VB2012的處理方式差不多, 茲將自己處理的過程記錄如下(或許不見得完全相同,但應能有個方向):
1.方案檔:
a.將 方案.sln 拷貝成 方案.v9.sln
b.修改方案檔 方案.v9.sln
修改方案中2-6列
原本是:
Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio 2013
VisualStudioVersion = 12.0.40629.0
MinimumVisualStudioVersion = 10.0.40219.1
Project("GUID1") = "方案", "專案目錄\專案.csproj", "GUID2"
改成如下:
Microsoft Visual Studio Solution File, Format Version 10.00
# Visual Studio 2008
VisualStudioVersion = 12.0.40629.0
MinimumVisualStudioVersion = 10.0.40219.1
Project("GUID1") = "方案", "專案目錄\專案.v9.csproj", "GUID2"
2.專案檔
a. 將 專案.vbproj 拷貝成 專案.v9.vbproj
b. 專案.v9.vbproj 的第 2 行變更。
原本是:
<Project ToolsVersion="12.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
改成如下:
<Project ToolsVersion="3.5" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
此時應就可使用Visual Studio 2008開啟 方案.v9.sln
按下F5進行程式偵錯執行,卻出現如下錯誤!
不知是不是因為當初寫程式時有將System.Threading的命名空間放進來?還是原本Visual Studio 2013就會放進來??
在看過程式後,把該行Using System.Threading.Task拿掉後,所有錯誤的訊息就不見了,只剩兩個黃色驚嘆號,我不以為意就再按下F5,結果出現....
跟專案有關,就點了專案屬性來看,如下圖:
原來是目標Framework沒有設定,就選定.Net Framework 3.5
按[是]變更後,看了一下Visual Studio的錯誤清單,有個Microsoft.CSharp的組件找不到,如下圖:
然後直覺的去參考中將Microsoft.CSharp拿掉,警告就都沒有了,再按F5偵錯,竟然錯誤還是相同:
正煩惱要怎麼解決時,突然發現下圖紅框中的App.Config,隨手點開一看:
哈...原來是這個檔案造成的,把App.Config刪除後,再按F5偵錯執行,嘿嘿,總算可以執行了~~
所以以後就可以用Visual Studio 2008來開啟 方案.v9.sln 這個檔案來進行建置或是其他的修改了~~
至於Visual Studio 2013呢?還是一樣可以開啟原本 方案.sln 這個檔案進行處理(雖然少掉了App.Config,但我的程式還可以執行,應該是沒有使用到.Net Framework4以上的東西吧~)