Работа с решением
Вернемся к
решению vb_ide_01, о котором говорилось
выше. Хотя мы еще не ввели ни одной
строки программного кода, VB .NET
автоматически создает в каталоге
решения несколько файлов и
подкаталогов (в этом нетрудно
убедиться при помощи Проводника
Windows). Ниже приведен полный список
содержимого каталога; в вашем
случае данные будут похожими, хотя
и не совпадающими полностью.
943 Assemblylnfo.vb
<DIR> bin
79 Modulel.vb
<DIR>
obj
1,354 vb_ide_01.sln
7,168 vb_ide_01.suo
3,008 vb_ide_01.vbproj
1.643 vb_ide_01.vbproj.user
6 File(s) 14,195
bytes
Прдкаталоги bin и
obj используются при компиляции, а
четыре файла образуют решение. В
каталоге bin хранится
откомпилированный код. В каталоге
obj находится подкаталог,
задействованный в процессе отладки.
Исходный текст программы хранится
в файле Modulel.vb. При просмотре файла в
текстовом редакторе вы увидите
следующий код:
Module Modulel
SubMain()
End Sub
End Module
Файл vb_ide_01.sln
аналогичен .vbp-файлу проекта в VB6. В
этом файле хранится вся служебная
информация, необходимая для
компиляции решения, в том числе
описание всех проектов и файлов
решения. Примерное содержимое
этого файла приведено ниже:
Microsoft Visual
Studio Solution File. Format Version 7.00
Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}")
= "vbjdejl", _
"vbjide_01\vb_ide_01.vbproj".
"{F40E94D3-09CA-4E17-90EA-7A514E991F93}"
EndProject
Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}")
= "vb_ide_02". _
"vb_ide_02\vbjde_02.vbproj",
"{926DC073-167F-49DO-8A30-AF27E27BA2B4}"
EndProject
Global
GlobalSection(SolutionConfiguration)
= preSolution ConfigName.0 = Debug ConfigName.l = Release
EndGlobalSection
GlobalSection(ProjectDependencies)
= postSolution EndGlobalSection GlobalSection(ProjectConfiguration)
= postSolution
{F40E9403-09CA-4E17-90EA-7A514E991F93}.Debug.ActiveCfg
= Debug|.NET {F40E94D3-09CA-4E17-9DEA-7A514E991F93}.Debug.Bui 1 d.0
= Debug|.NET {F40E94D3-09CA-4E17-9DEA-7A514E991F93}.Release.ActiveCfg
= Release].NET {F40E94D3-09CA-4E17-9DEA-7A514E991F93}.Release.Build.0
= Release].NET {926DC073-167F-49В0-8A30-AF27E27BA2B4}.Debug.ActiveCfg
= Debug|.NET {926DC073-167F-49D0-8A30-AF27E27BA2B4}.Debug.Build.0
= Debug|.NET {926DC073-167F-49D0-8A30-AF27E27BA2B4}.Release.ActiveCfg
= Release!.NET {926DC073-167F-49D0-8A30-AF27E27BA2B4}.Release.Build.0
= Release].NET EndGlobalSection
GlobalSection(ExtensibilityGlobals)
= postSolution EndGlobalSection
GlobalSection(ExtensibilityAddlns) = postSolution EndGlobalSection
EndGlobal
Файл vb_ide_01.vbproj
написан на языке XML В нем хранится
информация о проекте, в том числе
значения различных свойств. Для
изменения свойств проекта обычно
используется команда Properties меню
Project или контекстного меню,
вызванного щелчком правой кнопщй
мыши в окне решения.
Язык XML
занимает очень важное место в .NET.
Все объекты, создаваемые в .NET, по
возможности описываются (и даже
передаются в Web) на языке XML.
Ниже приведено
содержимое файла проекта в
текстовой форме. Обратите внимание
на частое повторение ключевого
слова Assembly — это ключевое слово
вместе с другими важными ключевыми
словами Imports и Namespaces
рассматривается в главе 4:
<VisualStudioProject>
<VisualBasic
ProjectType = "Local"
ProductVersion =
"7.0.9254"
SchemaVersion =
"1.0"
ProjectGuid = "{E24CC2EA-3E48-4C6E-8F92-ODE603B335D6}"
>
<Build>
<Sett1ngs
Applicationlcon =
""
AssemblyKeyContainerName
= ""
AssemblyName =
"vb_ide_01"
AssemblyOhginatorKeyFile
= ""
AssemblyOriginatorKeyMode
= "None"
DefaultClientScript
= "JScript"
DefaultHTMLPageLayout
= "Grid"
DefaultTargetSchema
= "IE50"
DelaySlgn = "false"
OutputType = "Exe"
OptionCompare =
"Binary"
OptionExplicit =
"On"
OptionStrlct =
"Off"
RootNamespace =
"vb_ide_01"
StartupObject = "vb_ide_01.Modulel"
>
<Config
Name = "Debug"
BaseAddress = "285212672"
ConfigurationOverrideFile=
""
DeflneConstants =
""
DefineDebug = "true"
DefineTrace = "true"
DebugSymbols =
"true"
IncrementalBuild =
"true"
Optimize = "false"
OutputPath = "bin\"
RegisterForComlnterop
= "false"
RemovelntegerChecks
= "false"
TreatWarningsAsErrors
= "false"
WarningLevel =
"1" /> <Config
Name = "Release"
BaseAddress - "285212672"
ConfigurationOverrideFile
= ""
DefineConstants =
""
DeflneDebug - "false"
DefineTrace = "true"
DebugSymbols =
"false"
IncrementalBuild
="false"
Optimize = "false"
OutputPath = "bin\"
RegisterForComlnterop
= "false"
RemovelntegerChecks
= "false"
TreatWarningsAsErrors
= "false"
WarningLevel = "1"
/>
</Settings>
<References> <Reference
AssemblyName = "System"
/>
Reference
Name = "System.
Data"
AssemblyName = "System. Data"
/>
<Reference
Name = "System.
XML"
AssemblyName =
"System. Xml"
/>
</References>
<Imports>
<Import Namespace = "Microsoft. VisualBasic" />
<Import Namespace = "System" />
<Import Namespace = "System. Col lections" />
<Import Namespace = "System. Data" />
<Import Namespace = "System. Diagnostics" />
</Imports> -</Build>
<Files>
<Include>
<File
RelPath = "Assemblylnfo.vb"
SubType = "Code" . BuildAction = "Compile" />
<File
RelPath = "Modulel.vb"
SubType = "Code" BuildAction = "Compile"
/>
</Include> </Files>
</VisualBasic>
</Vi sualStudi
oProject>
Двоичный файл
vb_ide_01.suo содержит пользовательскую
инфьрмацию уровня решения — в
частности, сведения об
установленных точках прерывания и
открытых документах. Если удалить
этот файл, все пользовательские
настройки будут потеряны, но
решение останется работоспособным.
В файле vbproj.user хранятся аналогичные
параметры уровня проекта (как и
когда проект запускается, следует
ли при компиляции создавать
отладочную версию и т. д.). Этот файл
тоже написан на языке XML:
<VisualStudioProject> <VisualBasic>
<Build>
<Settings ReferencePath = "" >
<Config
Name = "Debug"
EnableASPDebugging = "false"
EnableASPXDebugging = "false"
EnableUnmanagedDebugging = "false"
EnableSQLServerDebugging = "false"
StartAction = "Project"
StartArguments = ""
StartPage = ""
StartProgram = ""
StartURL =
""
StartWorkingDirectory = ""
StartWithIE = "false"
/>
<Config
Name = "Release"
EnableASPDebugging ="false"
EnableASPXDebugging = "false"
EnableUnmanagedDebugging = "false"
EnableSQLServerDebugging = "false"
StartAction = "Project"
StartArguments = ""
StartPage = ""
StartProgram = ""
StartURL =
""
StartWorkingDirectory = ""
StartWithlE = "false"
/>
</Settings>
</Build>
<OtherProjectSetti
ngs
CopyProjectDestinationFolder = ""
CopyProjectUncPath = ""
CopyProjectOption = "0"
ProjectView = "ProjectFiles"
/>
</VisualBasic>
</VisualStudioProject>