SLN
SLN
Visual Studio開發套裝進入.net時代后,使用解決方案文件(後綴為sln的文件)表示一個項目組,他通常包含一個項目中所有的工程文件信息。了解sln文件格式,可以手動修改錯誤的sln文件,也可以對解析sln文件有幫助。
目錄
以下就Visual Studio .Net 2003的sln文件說明其格式。
sln文件是一個文本文件,雖然它沒有用最流行的XML文件表示,但數據結構卻類似於XML文件,基本上也是由節組成,一個節由標記和End加標記來限定,比如說工程信息的標記為Project,那麼他們由Project和EndProject來限定。每個節可以有自己的屬性,並且節內部可以再嵌套子節。子節的名稱由標記加section表示,然後在名稱的後面加上一個小括弧,其中記錄這個子節的意義,比如表示工程依賴關係的子節就是ProjectSection(ProjectDependencies)。子節也可以有屬性,但是子節的屬性都是由一個等式表示。
一個sln文件通常由三部分組成:
1. 文件版本
2. 工程信息
3. 全局設置
以下是一個sln文件用文本程序打開后的代碼(VS2005):
Microsoft Visual Studio Solution File, Format Version 9.00
# Visual Studio 2005
Project
("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "projectname", "projectname.vcproj",
"{022ABD74-231B-433C-9212-C3256ADB7AEB}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Win32 = Debug|Win32
Release|Win32 = Release|Win32
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{022ABD74-231B-433C-9212-C3256ADB7AEB}.Debug|Win32.ActiveCfg = Debug|Win32
{022ABD74-231B-433C-9212-C3256ADB7AEB}.Debug|Win32.Build.0 = Debug|Win32
{022ABD74-231B-433C-9212-C3256ADB7AEB}.Release|Win32.ActiveCfg = Release|Win32
{022ABD74-231B-433C-9212-C3256ADB7AEB}.Release|Win32.Build.0 = Release|Win32
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
EndGlobal
通常SLN文件不向下兼容,但是通過更改前兩行的版本信息,可以使用支持同.NET Framework的低版本Visual Studio打開(如通過更改Visual Studio 2012創建的.NET 4.0項目 SLN文件,可以通過修改SLN來支持Visual Studio 2010 打開)