新聞中心
言歸正傳,搞過一回命令行編譯C#,這回咱們回來玩玩IDE,這一篇主要向大家講一下VS項目的可定制能力,它并非是微軟創(chuàng)造出來的一個專門給.NET和Win32編程新手用的玩物,而是一個真正非常優(yōu)秀的可擴展的IDE產(chǎn)品。你可以用它來管理項目和項目依賴關(guān)系,可以跟源碼管理工具集成,編譯執(zhí)行也不限于微軟內(nèi)置的集中開發(fā)語言,你甚至可以用它來開發(fā)Java。

成都創(chuàng)新互聯(lián)服務(wù)項目包括廣陵網(wǎng)站建設(shè)、廣陵網(wǎng)站制作、廣陵網(wǎng)頁制作以及廣陵網(wǎng)絡(luò)營銷策劃等。多年來,我們專注于互聯(lián)網(wǎng)行業(yè),利用自身積累的技術(shù)優(yōu)勢、行業(yè)經(jīng)驗、深度合作伙伴關(guān)系等,向廣大中小型企業(yè)、政府機構(gòu)等提供互聯(lián)網(wǎng)行業(yè)的解決方案,廣陵網(wǎng)站推廣取得了明顯的社會效益與經(jīng)濟效益。目前,我們服務(wù)的客戶以成都為中心已經(jīng)輻射到廣陵省份的部分城市,未來相信會繼續(xù)擴大服務(wù)區(qū)域并繼續(xù)獲得客戶的支持與信任!
這篇文章將會通過一個簡單例子,來演示如何用VS來編譯ilasm,這個應(yīng)該也還是有些實際用處的,也方便喜歡研究ilasm的朋友。
首先第一步,我們建立一個C++空項目(沒錯,是C++空項目,對VS而言,VC++是一種自定義項目,它最接近我們的需求)。
接下來我們右鍵點這個新建的項目,選擇“工具生成順序”,然后把那一堆C++工具全都選掉,只留下自定義生成工具就行了。
好 這樣我們的項目就編譯不了C++了。
接下來是重點,重新在VS中打開項目文件,然后右鍵點擊“自定義生成規(guī)則”
然后我們新建一個規(guī)則文件,用來編譯il文件。
新建一個規(guī)則文件之后新建規(guī)則,到這都很容易,就不用細說了。
新建規(guī)則稍微有些復(fù)雜了,首先我們來參考一下ILASM的文檔:http://msdn.microsoft.com/zh-cn/library/496e4ekx(VS.80).aspx
我這里只是為了演示,沒有把太多的ilasm編譯選項做成屬性
填好后一路確定就行了。可以在項目中改變自定義屬性來切換exe和dll:
附上MSIL的helloworld以供大家驗證:
- // HelloWorld.il
- // This is our first IL program!
- .assembly extern mscorlib {
- }
- .assembly HelloWorld {
- .ver 1:0:1:0
- }
- .module HelloWorld.exe
- .method privatescope static void Main() cil managed {
- .maxstack 1
- .entrypoint
- ldstr "Hello World"
- call void [mscorlib]System.Console::WriteLine(string)
- ret
- }
附上整個項目壓縮包:
http://files.cnblogs.com/winter-cn/ilasm.rar
鏈接:http://www.cnblogs.com/winter-cn/archive/2010/07/07/1772567.html
名稱欄目:VisualStudio你不能只是用來拖拖控件
網(wǎng)站網(wǎng)址:http://fisionsoft.com.cn/article/cdcpopd.html


咨詢
建站咨詢
