原文鏈接:http://blog.sina.com.cn/s/blog_4a50d85b0100aw7u.html 上次我們說到的編譯成的dll文件與cs文件在同一目錄中,而不會(huì)放到虛擬目錄的bin目錄中,如何做才能夠把cs 文件編譯成dll且自動(dòng)放到虛擬目錄的bin文件夾中呢? 開始-------程序-------Microsoft Visual Studio.NET 2003-------Visual Studio.NET工具,點(diǎn)擊其中的“Visual Studio.NET2003命令提示”,就會(huì)進(jìn)入Microsoft Visual Studio.NET 2003命令提示窗口,然后我們用dos命令(cd)進(jìn)入要編譯成dll的cs文件所在的目錄,然后輸入命令: csc /out: bin\index.dll /t:library index.cs 回車,就會(huì)在bin目錄下生成與cs文件同名的dll文件 但是如果這個(gè)cs文件引用了bin目錄下的另外一個(gè)dll文件如comman.dll,則應(yīng)該這樣輸入命令: csc /out: bin\index.dll /r: bin\comman.dll /t:library index.cs 給出我自己的一個(gè)編譯實(shí)例: 首先進(jìn)入Microsoft Visual Studio.NET 2003命令提示窗口,在命令行下切換到c盤下(我把MouseGridView.cs放在C盤下面) 執(zhí)行 C:\>csc /out:MouseOver.dll /t:library MouseGridView.cs 在安裝了Microsoft.NET Framework的操作系統(tǒng)上,我們可以在Windows所在目錄下找到Microsoft.NET目錄。在這個(gè)目錄下面提供了C#的編譯器,CSC.EXE
運(yùn)行: csc /target:library /out:MyDLL.DLL MySwap.cs MyMaxCD.cs 完成后可在本目錄下面找到我們剛才生成的MyDLL.DLL文件
/target:library 編譯器選項(xiàng)通知編譯器輸出 DLL 文件而不是 EXE 文件。后跟文件名的 /out 編譯器選項(xiàng)用于指定 DLL 文件名。 如果/out后面不跟文件名編譯器使用第一個(gè)文件 (MySwap.cs) 作為 DLL 文件名。生成的文件為MySwap.DLL文件 OK!我們創(chuàng)建動(dòng)態(tài)鏈接庫文件的任務(wù)完成了,現(xiàn)在是我們享受勞動(dòng)成果的時(shí)候了,下面我將介紹如何使用我們所創(chuàng)建的動(dòng)態(tài)鏈接庫文件。</font> csc /target:library /out:F:\MyDLL.DLL D:\Home\MySwap.cs D:\Home\MyMaxCD.cs 動(dòng)態(tài)鏈接具有下列優(yōu)點(diǎn): 節(jié)省內(nèi)存和減少交換操作。很多進(jìn)程可以同時(shí)使用一個(gè) DLL,在內(nèi)存中共享該 DLL 的一個(gè)副本。相反,對(duì)于每個(gè)用靜態(tài)鏈接庫生成的應(yīng)用程序,Windows 必須在內(nèi)存中加載庫代碼的一個(gè)副本。 |
|