📄 commandline.vb
字号:
' ' Visual Basic.Net Compiler' Copyright (C) 2004 - 2007 Rolf Bjarne Kvinge, RKvinge@novell.com' ' This library is free software; you can redistribute it and/or' modify it under the terms of the GNU Lesser General Public' License as published by the Free Software Foundation; either' version 2.1 of the License, or (at your option) any later version.' ' This library is distributed in the hope that it will be useful,' but WITHOUT ANY WARRANTY; without even the implied warranty of' MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU' Lesser General Public License for more details.' ' You should have received a copy of the GNU Lesser General Public' License along with this library; if not, write to the Free Software' Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA' Imports Microsoft.VisualBasic.StringsImports Microsoft.VisualBasic' Visual Basic .NET Compiler Options' - OUTPUT FILE -'/out:<file> Specifies the output file name.'/target:exe Create a console application (default). (Short form: /t)'/target:winexe Create a Windows application.'/target:library Create a library assembly.'/target:module Create a module that can be added to an assembly.' - INPUT FILES -'/addmodule:<file> Reference metadata from the specified module.'/recurse:<wildcard> Include all files in the current directory and subdirectories according to the wildcard specifications.'/reference:<file_list> Reference metadata from the specified assembly. (Short form: /r)' - RESOURCES -'/linkresource:<resinfo> Links the specified file as an external assembly resource. resinfo:<file>[,<name>[,public|private]] (Short form: /linkres)'/resource:<resinfo> Adds the specified file as an embedded assembly resource. resinfo:<file>[,<name>[,public|private]] (Short form: /res)'/win32icon:<file> Specifies a Win32 icon file (.ico) for the default Win32 resources.'/win32resource:<file> Specifies a Win32 resource file (.res).' - CODE GENERATION -'/optimize[+|-] Enable optimizations.'/removeintchecks[+|-] Remove integer checks. Default off.'/debug[+|-] Emit debugging information.'/debug:full Emit full debugging information (default).'/debug:pdbonly Emit PDB file only.' - ERRORS AND WARNINGS -'/nowarn Disable warnings.'/warnaserror[+|-] Treat warnings as errors.' - LANGUAGE -'/define:<symbol_list> Declare global conditional compilation symbol(s). symbol_list:name=value,... (Short form: /d)'/imports:<import_list> Declare global Imports for namespaces in referenced metadata files. import_list:namespace,...'/optionexplicit[+|-] Require explicit declaration of variables.'/optionstrict[+|-] Enforce strict language semantics.'/rootnamespace:<string> Specifies the root Namespace for all type declarations.'/optioncompare:binary Specifies binary-style string comparisons. This is the default.'/optioncompare:text Specifies text-style string comparisons.' - MISCELLANEOUS -'/help Display this usage message. (Short form: /?)'/nologo Do not display compiler copyright banner.'/quiet Quiet output mode.'/verbose Display verbose messages.' - ADVANCED -'/baseaddress:<number> The base address for a library or module (hex).'/bugreport:<file> Create bug report file.'/codepage:<number> Specifies the codepage to use when opening source files.'/delaysign[+|-] Delay-sign the assembly using only the public portion of the strong name key.'/keycontainer:<string> Specifies a strong name key container.'/keyfile:<file> Specifies a strong name key file.'/libpath:<path_list> List of directories to search for metadata references. (Semi-colon delimited.)'/main:<class> Specifies the Public Class or Module that contains Sub Main. It can also be a Public Class that inherits from System.Windows.Forms.Form. (Short form: /m)'/netcf Target the .NET Compact Framework.'/sdkpath:<path> Location of the .NET Framework SDK directory (mscorlib.dll).'/utf8output[+|-] Emit compiler output in UTF8 character encoding.' @<file> Insert command-line settings from a text file.''' <summary>''' ''' </summary>Public Class CommandLine Private Shared PATTERNCHARS As Char() = New Char() {"*"c, "?"c} ''' <summary> ''' There can be many response files, including response files called ''' from a response file. Keep a list of them all to know when a ''' response file already has been parsed, to avoid stack problems ''' (and a response file shouldn't be included twice anyway) ''' </summary> Private m_lstResponseFiles As New Specialized.StringCollection ''' <summary> ''' All files specified ''' </summary>s ''' <remarks></remarks> Private m_lstFileNames As CodeFiles ''' <summary> ''' A list of all the arguments parsed. ''' </summary> ''' <remarks></remarks> Private m_lstAllArgs As New Specialized.StringCollection ''' <summary> ''' The compiler used. ''' </summary> Private m_Compiler As Compiler ''' <summary> ''' The compiler used. ''' </summary> ReadOnly Property Compiler() As Compiler Get Return m_Compiler End Get End Property#If DEBUG Then Private m_bDumping As Boolean Private m_StopAfter As String#End If#Region "Properties" ' - OUTPUT FILE - ''' <summary> ''' /out:<file> Specifies the output file name. ''' </summary> Private m_strOut As String ''' <summary> ''' /target:exe Create a console application (default). (Short form: /t) ''' /target:winexe Create a Windows application. ''' /target:library Create a library assembly. ''' /target:module Create a module that can be added to an assembly. ''' </summary> Private m_strTarget As Targets ' - INPUT FILES - ''' <summary> ''' /addmodule:<file> Reference metadata from the specified module. ''' </summary> Private m_lstModules As New Specialized.StringCollection ''' <summary> ''' /recurse:<wildcard> Include all files in the current directory and subdirectories according to the wildcard specifications. ''' </summary> Private m_lstRecurse As New Specialized.StringCollection ''' <summary> ''' /reference:<file_list> Reference metadata from the specified assembly. (Short form: /r) ''' </summary> Private m_lstReferences As New Specialized.StringCollection ' - RESOURCES - ''' <summary> ''' /linkresource:<resinfo> Links the specified file as an external assembly resource. resinfo:<file>[,<name>[,public|private]] (Short form: /linkres) ''' </summary> Private m_lstLinkResources As Resources ''' <summary> ''' /resource:<resinfo> Adds the specified file as an embedded assembly resource. resinfo:<file>[,<name>[,public|private]] (Short form: /res) ''' </summary> Private m_lstResources As Resources ''' <summary> ''' /win32icon:<file> Specifies a Win32 icon file (.ico) for the default Win32 resources. ''' </summary> Private m_strWin32Icon As String ''' <summary> ''' /win32resource:<file> Specifies a Win32 resource file (.res). ''' </summary> Private m_strWin32Resource As String ' - CODE GENERATION - ''' <summary> ''' /optimize[+|-] Enable optimizations. ''' </summary> Private m_bOptimize As Boolean ''' <summary> ''' /removeintchecks[+|-] Remove integer checks. Default off. ''' </summary> Private m_bRemoveIntChecks As Boolean ''' <summary> ''' /debug[+|-] Emit debugging information. '''/debug:full Emit full debugging information (default). '''/debug:pdbonly Emit PDB file only. ''' According to #81054 vbc doesn't emit debug info unless /debug is specified. ''' </summary> Private m_eDebugInfo As DebugTypes = DebugTypes.None ' - ERRORS AND WARNINGS - ''' <summary> ''' /nowarn Disable warnings. ''' </summary> Private m_bNoWarn As Boolean ''' <summary> ''' /warnaserror[+|-] Treat warnings as errors. ''' </summary> Private m_bWarnAsError As Boolean ' - LANGUAGE - ''' <summary> ''' /define:<symbol_list> Declare global conditional compilation symbol(s). symbol_list:name=value,... (Short form: /d) ''' </summary> Private m_lstDefine As New Defines ''' <summary> ''' /imports:<import_list> Declare global Imports for namespaces in referenced metadata files. import_list:namespace,... ''' </summary> Private m_lstImports As ImportsStatement ''' <summary> ''' /optionexplicit[+|-] Require explicit declaration of variables. ''' </summary> Private m_eOptionExplicit As OptionExplicitTypes = OptionExplicitTypes.Off ''' <summary> ''' /optionstrict[+|-] Enforce strict language semantics. ''' </summary> Private m_eOptionStrict As OptionStrictTypes = OptionStrictTypes.Off ''' <summary> ''' /rootnamespace:<string> Specifies the root Namespace for all type declarations. ''' </summary> Private m_strRootNamespace As String ''' <summary> '''/optioncompare:binary Specifies binary-style string comparisons. This is the default. '''/optioncompare:text Specifies text-style string comparisons. ''' </summary> Private m_eOptionCompare As OptionCompareTypes = OptionCompareTypes.Binary ' - MISCELLANEOUS - ''' <summary> ''' /help Display this usage message. (Short form: /?) ''' </summary> Private m_bHelp As Boolean ''' <summary> ''' /nologo Do not display compiler copyright banner. ''' </summary> Private m_bNoLogo As Boolean ''' <summary> ''' /quiet Quiet output mode. ''' </summary> Private m_bQuiet As Boolean ''' <summary> ''' /verbose Display verbose messages. ''' </summary> Private m_bVerbose As Boolean ''' <summary> ''' /noconfig Disable the automatic inclusion of the vbnc.rsp response file. ''' </summary> Private m_bNoConfig As Boolean ''' <summary> ''' ''' </summary> ''' <remarks></remarks> Private m_NoVBRuntimeRef As Boolean ' - ADVANCED - ''' <summary> ''' /baseaddress:<number> The base address for a library or module (hex). ''' </summary> Private m_strBaseAddress As String ''' <summary> ''' /bugreport:<file> Create bug report file. ''' </summary> Private m_strBugReport As String ''' <summary> ''' /codepage:<number> Specifies the codepage to use when opening source files. ''' </summary> Private m_Encoding As System.Text.Encoding ''' <summary> ''' /delaysign[+|-] Delay-sign the assembly using only the public portion of the strong name key. ''' </summary> Private m_bDelaySign As Boolean ''' <summary> ''' /keycontainer:<string> Specifies a strong name key container. ''' </summary> Private m_strKeyContainer As String ''' <summary> ''' /keyfile:<file> Specifies a strong name key file. ''' </summary> Private m_strKeyFile As String ''' <summary> ''' /libpath:<path_list> List of directories to search for metadata references. (Semi-colon delimited.)' ''' </summary> Private m_lstLibPath As New Specialized.StringCollection ''' <summary> ''' /main:<class> Specifies tPublic Class ss or Module that contains Sub Main. It can also be a Public Class that inherits from System.Windows.Forms.Form. (Short form: /m) ''' </summary> Private m_strMain As String ''' <summary> ''' /netcf Target the .NET Compact Framework. ''' </summary> Private m_bNetCF As Boolean ''' <summary> ''' /sdkpath:<path> Location of the .NET Framework SDK directory (mscorlib.dll). ''' </summary> Private m_strSDKPath As String ''' <summary> ''' /utf8output[+|-] Emit compiler output in UTF8 character encoding. ''' </summary> Private m_bUTF8Output As Boolean ''' <summary> ''' /vbversion:[7|7.1|8] Which version of the VB language to target. 7 and 7.1 will emit v1.0 assemblies (not supported yet), and 8 will emit v2.0 assemblies. Default is latest (8). ''' </summary> ''' <remarks></remarks> Private m_VBVersion As VBVersions = VBVersions.V8 ' - OUTPUT FILE - ReadOnly Property VBVersion() As VBVersions Get Return m_VBVersion End Get End Property ''' <summary> ''' /out:<file> Specifies the output file name. ''' </summary> ReadOnly Property Out() As String Get Return m_strOut End Get End Property ''' <summary> ''' /target:exe Create a console application (default). (Short form: /t) ''' /target:winexe Create a Windows application. ''' /target:library Create a library assembly. ''' /target:module Create a module that can be added to an assembly. ''' </summary> ReadOnly Property Target() As Targets Get Return m_strTarget End Get End Property ' - INPUT FILES - ''' <summary> ''' /addmodule:<file> Reference metadata from the specified module. ''' </summary> ReadOnly Property Modules() As Specialized.StringCollection Get Return m_lstModules End Get End Property ''' <summary> ''' /recurse:<wildcard> Include all files in the current directory and subdirectories according to the wildcard specifications. ''' </summary> ReadOnly Property Recurse() As Specialized.StringCollection Get Return m_lstRecurse End Get End Property ''' <summary> ''' /reference:<file_list> Reference metadata from the specified assembly. (Short form: /r) ''' </summary> ReadOnly Property References() As Specialized.StringCollection Get Return m_lstReferences End Get End Property ' - RESOURCES - ''' <summary> ''' /linkresource:<resinfo> Links the specified file as an external assembly resource. resinfo:<file>[,<name>[,public|private]] (Short form: /linkres) ''' </summary> ReadOnly Property LinkResources() As Resources Get Return m_lstLinkResources End Get End Property ''' <summary>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -