|
下面我以VB.NET做示例講解一下:
從proj我們可以獲取以下有用信息
Settings小節(jié)中有很多配置選項(xiàng),對(duì)應(yīng)一些編譯器選項(xiàng)
<References>小節(jié)中是項(xiàng)目的引用,第3方類庫最好用絕對(duì)路徑
<Imports>小節(jié)中是要導(dǎo)入的一些命名空間
<Files>小節(jié)中有項(xiàng)目的所有文件,選取 BuildAction = "Compile"的文件
用vbc測試了一下,很容易,注意以下幾項(xiàng):
rootnamespace
reference
target
imports
加上bugreport可以將所有的源文件代碼和bug報(bào)告輸出。不錯(cuò)
給你一端編譯示例:
vbc /r:System.dll /r:System.Data.dll /r:System.Drawing.dll /r:System.Web.dll /r:System.Xml.dll /r:bin/Microsoft.ApplicationBlocks.Data.dll /r:bin/ExportTechnologies.WebControls.RTE.dll /imports:Microsoft.VisualBasic /imports:System /imports:System.Collections /imports:System.Configuration /imports:System.Data /imports:System.Drawing /imports:System.Web /imports:System.Web.UI /imports:System.Web.UI.HtmlControls /imports:System.Web.UI.WebControls /imports:MMS /rootnamespace:MMS /t:library /out:Truly.MMS.dll /bugreport:bug.log AssemblyInfo.vb Global.asax.vb HDAdd.ASPx.vb HDticketLogAdd.ASPx.vb MIS.vb PageBase.vb Utils.vb
如果沒有proj文件,那么可以用下面的命令獲?。?BR>dir /b *.vb > filelist.txt
csc的使用方法就靠你自己去琢磨了。這樣編譯出來的跟vs是有1點(diǎn)區(qū)別的,因?yàn)槲覀兒芏噙x項(xiàng)沒有配置,但是經(jīng)過測試,基本可以正常工作的。
-------------------------------------------------------------------------------------------------------
使用 C# 2.0 命令行編譯器
http://msdn.microsoft.com/zh-cn/library/ms379563(vs.80).ASPx#mainSection
摘要:本文分析了使用 C# 命令行編譯器 csc.exe 生成應(yīng)用程序的過程。同時(shí),還將向讀者介紹很多為 C# 2.0 獨(dú)有的編譯器選項(xiàng),例如,extended/reference 標(biāo)志和強(qiáng)名稱支持。閱讀完本文的內(nèi)容之后,您將能夠輕松地在沒有向?qū)У沫h(huán)境中生成單文件程序集和多文件程序集。
適用于:
Microsoft Visual C# 2.0
注 本文假定您熟悉 C# 編程語言和 .NET Framework 的結(jié)構(gòu)。體驗(yàn)一下使用命令行工具的感覺還將證明很有幫助。
下載 CSCSample.msi 文件。
scsc.exe 帶來的樂趣
幾乎沒有人會(huì)否認(rèn)集成開發(fā)環(huán)境 (IDE)(例如,Visual Studio 2005 和 Visual C# Express 2005)所提供的能使編程工作變得相當(dāng)簡單的諸多功能。但是,實(shí)際上 IDE 自己通常不能提供對(duì)基礎(chǔ)編譯器的所有方面的訪問。例如,Visual Studio 2005 不支持生成多文件程序集。
此外,了解在命令行編譯代碼的過程,對(duì)于具有以下特征的用戶可能有用:
希望揭開 IDE 處理源代碼文件的方法的秘密。
希望利用 .NET 生成實(shí)用工具,例如,nant 或 msbuild。
沒有集成開發(fā)環(huán)境,例如,Visual Studio(但實(shí)際上具有免費(fèi)提供的 .NET Framework SDK)。
正在基于 Unix的系統(tǒng)(在該系統(tǒng)中,命令行是必須使用的工具)上使用 .NET Framework,并且希望更好地了解 Mono 和/或 Portable .NET ECMA 兼容 C# 編譯器。
正在研究當(dāng)前未集成到 Visual Studio 中的備選 .NET 編程語言。
只是希望擴(kuò)展他們的 C# 編程語言知識(shí)。
如果您屬于上面所述的這些用戶,那么就忠實(shí)于自己的選擇并繼續(xù)讀下去吧。
C# 編譯器選項(xiàng)概覽
C# 編譯器 csc.exe 提供了大量用于對(duì)創(chuàng)建 .NET 程序集的方式進(jìn)行控制的選項(xiàng)。站在一個(gè)較高層次來看,命令行選項(xiàng)屬于下列八個(gè)類別之一(表 1)。
表 1. csc.exe 提供的標(biāo)記的類別
C# 編譯器類別 | 定義 |
---|---|
輸出文件 | 用于控制所生成的程序集的格式、可選的 XML 文檔文件和強(qiáng)名稱信息的選項(xiàng)。 |
輸入文件 | 使用戶可以指定輸入文件和引用的程序集的選項(xiàng)。 |
資源 | 用于將任何必需的資源(例如,圖標(biāo)和字符串表)嵌入到程序集中的選項(xiàng)。 |
代碼生成 | 這些選項(xiàng)控制調(diào)試符號(hào)的生成。 |
錯(cuò)誤和警告 | 控制編譯器處理源代碼錯(cuò)誤/警告的方式。 |
語言 | 啟用/禁用 C# 語言功能(例如,不安全代碼)以及條件編譯符號(hào)的定義。 |
雜項(xiàng) | 該類別的最有趣的選項(xiàng)使您可以指定 csc.exe 響應(yīng)文件。 |
高級(jí) | 該類別指定一些更加深?yuàn)W并且通常不太重要的編譯器選項(xiàng)。 |
注 1.0 和 1.1 版本的 C# 編譯器中存在的 /incremental 標(biāo)志現(xiàn)在已過時(shí)。
在閱讀本文的過程中,您將了解每個(gè)編譯器類別中存在的核心 標(biāo)志(最重要的詞是核心)。對(duì)于大多數(shù)開發(fā)方案,可以安全地忽略 C# 編譯器的很多高級(jí)選項(xiàng)。如果您需要有關(guān)本文未予討論的 csc.exe 功能的詳細(xì)信息,請(qǐng)盡管放心,您可以參閱 Microsoft Visual Studio 2005 文檔幫助系統(tǒng)(只須從“Search”選項(xiàng)卡中搜索“csc.exe”并深入查閱)。
注 MSDN 文檔也會(huì)對(duì)您也很所幫助,因?yàn)樗枋隽巳绾卧?Visual Studio(如果可用)內(nèi)部設(shè)置 csc.exe 的特定選項(xiàng)。
配置環(huán)境變量
在使用任何 .NET SDK 命令行工具(包括 C# 編譯器)之前,需要配置開發(fā)計(jì)算機(jī)以識(shí)別它們的存在。最簡單的方法是使用 Start | All Programs | Visual Studio 2005 | Visual Studio Tools 菜單選項(xiàng),啟動(dòng)預(yù)配置的 Visual Studio 命令提示。這一特定的控制臺(tái)能夠自動(dòng)初始化必要的環(huán)境變量,而無須您執(zhí)行任何操作。(Visual Studio .NET 2003 用戶需要啟動(dòng)他們各自的命令提示)。
注 如果您沒有 Visual Studio,但是已經(jīng)安裝了 .NET Framework SDK,則可以從 Start | All Programs | Microsoft .NET Framework SDK 2.0 菜單選項(xiàng)啟動(dòng)預(yù)配置的命令提示。
如果您希望從任意的 命令提示使用 .NET 命令行工具,則需要手動(dòng)更新計(jì)算機(jī)的 Path 變量。做法是,請(qǐng)右鍵單擊桌面上的 My Computer 圖標(biāo)并選擇 Properties 菜單選項(xiàng)。從出現(xiàn)的對(duì)話框中,單擊位于 Advanced 選項(xiàng)卡下面的 Environment Variables 按鈕。從出現(xiàn)的對(duì)話框中,在 System 變量列表框中的當(dāng)前 Path 變量的結(jié)尾添加以下目錄清單(請(qǐng)注意,必須用分號(hào)分隔各個(gè)條目):
C:/Windows/Microsoft.NET/Framework/v2.0.40607C:/Program Files/Microsoft Visual Studio 8/SDK/v2.0/Bin
注 上面的列表指向我的當(dāng)前 .NET 2.0 測試版的路徑。您的路徑可能因 Visual Studio 和/或 .NET SDK 的安裝和版本的不同而略有不同,因此請(qǐng)確保執(zhí)行完整性檢查。
在更新 Path 變量之后,請(qǐng)立即關(guān)閉所有對(duì)話框和當(dāng)前打開的任何 Console 窗口,以便提交設(shè)置。您現(xiàn)在應(yīng)當(dāng)能夠從任何命令提示執(zhí)行 csc.exe 和其他 .NET 工具了。要進(jìn)行測試,請(qǐng)輸入以下命令:
csc -?ildasm -?
如果您看到有大量信息顯示出來,那么您就可以繼續(xù)了。

命令行基礎(chǔ)知識(shí)
已經(jīng)能夠熟練地在命令行工作的用戶在使用 csc.exe 時(shí)不會(huì)有任何問題,因而可以跳到下一節(jié)。但是,如果您使用命令行的次數(shù)很有限,那么請(qǐng)讓我說明一些基本的詳細(xì)信息,以便進(jìn)行必要的準(zhǔn)備。
首先,可以使用反斜杠或單個(gè)短劃線指定 csc.exe 的選項(xiàng)。其次,在 / 或 - 以及隨后的標(biāo)志之間具有額外的空格是非法 的。因此,“-help”是完全正確,而“- help”就行不通了。為了加以說明,讓我們使用 help 標(biāo)志檢查完整的命令行選項(xiàng)集:
csc 主站蜘蛛池模板: 性色的免费视频 | 99免费视频 | 欧美激情五月 | 日韩精品在线一区二区 | 日日操夜夜操天天操 | 自拍偷拍视频网 | 91麻豆精品一区二区三区 | 成人中文字幕在线 | 日韩爱爱网站 | 欧美午夜一区二区三区免费大片 | 欧美在线一二三 | 精久久久 | 中文字幕第一页在线 | 91精品国产91久久久久久最新 | 四虎影视免费观看 | 亚洲国产欧美日韩 | 毛片一区二区三区 | 一级大片免费 | 久久国产精品一区二区 | 国产视频一区二区 | 一级特黄a大片 | 成人午夜激情 | 婷婷色婷婷 | 亚洲精品无| 国产日韩欧美在线观看 | 激情av | 久久久久国产精品一区二区 | 精品久久久久久久久久久久久久 | 成人在线影视 | 黄色一级片aaa | 一区二区三区四区在线播放 | 国产在线观看一区二区 | 婷婷久久久久 | 国产午夜精品久久久久 | 亚洲国产一区二区视频 | 国产精品7777777 | 久久久国产精品一区 | 羞羞的视频网站 | 国产亚洲欧美另类一区二区三区 | 国产一区二区精品在线 | 中文字幕一区二区三区四区 |