校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃

主頁 > 知識庫 > asp.net 專業源代碼打包工具

asp.net 專業源代碼打包工具

熱門標簽:陜西人工外呼系統哪家好 地圖標注多個行程 廈門商鋪地圖標注 上海楊浦怎么申請申請400電話 銅川小型外呼系統運營商 浙江外呼系統怎么安裝 海外地圖標注門市標 山西防封卡電銷卡套餐 云南外呼電銷機器人系統

不過,有些人做事比較馬虎,經常就是直接將VS生成的解決方案目錄直接打包,這樣就會包含大量垃圾文件,諸如:obj目錄下的所有文件,而且有時bin目錄還有二個目錄,PDB文件有二份,甚至連xxx.vshost.exe文件也有二份!更讓人無語的是,有些人用SVN這種源代碼管理軟件,每個目錄還有個.svn目錄!

這種做法顯然很容易將一個不大的項目搞成一個比較大的壓縮包,這種壓縮包一旦做好,上傳也慢,人家下載也慢,還會浪費許多服務器資源,下載到這種壓縮包,只能讓人無語了。沒辦法,有些人就是很懶,而且那些壓縮軟件也不懂這是個源代碼目錄,反正是見文件就壓縮!雖然很悲劇,但悲劇卻一直在重復上演!現實就是這樣,估計有些人已經麻木了!

我是個追求完美的人,自然是不希望讓悲劇在我這里重復上演。我不希望浪費我的上傳時間,不希望浪費服務器的硬盤資源,不希望浪費服務器的帶寬,也不希望浪費所有網友的下載時間,更不希望有人會因此而罵我。因此我每次做出來的壓縮包是不包含那些垃圾文件的。我是如何做的呢?很簡單啊,不要把一些垃圾文件打包進去不就好了嗎?還要怎樣?

不過,我也很理解一些懶人,每次打包前去把這些文件找出來,刪除它們,也是有些麻煩。當然了,我也不愿意每次都做這種機械的事情,我也想偷懶。

嗯,既然打包前刪除這些垃圾文件是件機械的事情,那么能不能搞個程序去做呢,我是程序員啊。

終于有一天,我也受不了了,尤其是我平時喜歡寫點小東西,每天改了之后要備份,也要用壓縮包,但我不想浪費硬盤空間啊。在一次一次地被那些壓縮軟件折磨后,我還是選擇自己來設計一個工具來專門解決這個問題。不就是個壓縮的事情不好解決嘛,那我就自己做吧,反正現在的壓縮類庫是一大把,不過,我最終還是選擇了Windows自帶的FCI/FDI接口,它能直接生成cab格式的壓縮包,且現在流行的各種壓縮軟件都能支持它。選擇它還有其它原因:1.我早在使用C#之前就已經使用過它了,有現成的包裝庫(C語言版的,速度還不錯),2.由于是Windows自帶的接口,因此不需要引入額外的組件,工具可以保持較小的體積, 3.cab算法的壓縮率還不錯,比zip要好(與rar相當,比7z差點)。

今天,我將向大家推薦一個我幾乎天天在用的工具。它能很完美的解決以上問題,它還有其它功能,我也非常喜歡它。下面,我就來介紹此工具。

記住哦,這個工具的名字叫:FishCabTool

工具介紹

來看看我的工具吧,總共由4個文件組成:

雖然是4個文件,但依然很小,離300K還有些距離哦。下面來依次介紹這4個文件的用途:

1. FishCabToolHelp.chm,它是一個幫助文件,介紹了工具的特色功能,操作方式,以及其它說明:

2. FishCabTool.exe,它是這個工具的主程序了,是一個WinForm程序,運行界面如下:

通常,并不需要直接運行它,而是從資源管理器的上下文菜單中啟動它,操作方式與現今流行的壓縮軟件一樣,如下圖。

3. FishCabToolExt.dll,它是一個Windows資源管理器的插件,可以讓我的工具也能像一些壓縮軟件一樣,直接在Windows資源管理器的右鍵菜單中操作,如下圖:

為了不影響操作體驗,這個插件采用ATL的方式實現,因此速度還是很不錯的。說到速度,再給個具體的數據吧:當年在開發這個工具時,是在一臺(02年的)老機器上進行的,由于機器配置較差,所以性能相當敏感。測試時我選擇Windows/System32文件夾下的所有文件,右擊鼠標并測量菜單出現的時間,WinRar V2.6花了27秒,7z V4.x花了差不多8秒,我的工具還不到3秒。所以,不要擔心這個插件的會影響您的機器性能。

說明:FishCabToolExt.dll采用Unicode方式編寫,所以理論上即使不是簡體中文的Windows下也能正常顯示漢字。

4. FishCabLibU.dll,它是一個包裝層,用于封裝Windows的FCI/FDI接口,因為這二個接口是基于C的,且接口較為復雜,我也只好用C來封裝了,并以標準的導出函數提供給其它編程語言調用。導出的API函數如下圖:

在寫這篇博客時,看到當年給這些API取的名字,我也郁悶了:這些名字也太亂了吧。哎,2004年咱的命名規范還真差勁啊。

FCI/FDI是Windows的文件壓縮接口/文件解壓縮接口的簡稱。它提供了操作CAB壓縮包的具體實現算法,該接口涉及一大堆C風格的回調函數。
微軟提供的關于此接口的SDK文檔:點擊此處下載(微軟的網站上找不到了,遺憾中)

我封裝的接口是一種簡化版本,各個API函數已經是簡單的數據類型,因此使用起來會比較容易,且提供Unicode和非Unicode二套API,如果您也對cab格式感興趣,并希望使用我的FishCabLibU.dll,請回復,我可以提供C#版本的包裝類。
功能介紹
正如本文前面的幫助文件截圖所示,這個小工具有以下功能:

1. 專為備份源代碼而設計,可以選擇性地排除源代碼目錄中一些不需要備份的文件。
如:obj目錄及.pdb和其它源代碼版本控制信息之類的“垃圾”文件。
具體哪些文件不需要在壓縮時加入壓縮包,程序提供如下的設置界面來控制

2. 操作方式和現今流行的壓縮軟件一致,直接在資源管理器的右鍵菜單中操作。
前面在介紹FishCabToolExt.dll時已有說明,這里再次引用那二張圖片:

3. 生成的壓縮包采用cab的壓縮格式,兼容現今流行的各類壓縮軟件。
cab格式其實早就存在了,至少也有15年以上歷史。此文件格式由微軟開發,且在微軟的很多安裝包中都在使用這種格式。由于歷史悠久,且文件格式公開,因此現今流行的各類壓縮軟件都支持它。
注意:WinRar對cab的支持不夠好,如果cab采用UTF-8編碼方式創建包內文件名,在WinRar中將會看到亂碼。而7z就沒有問題,當然了,我的工具也能正確地解包。

4. 壓縮包的文件名包含當天的操作日期,便于版本管理及日后查找。
前面說到我平時喜歡在業余時間寫點小工具或者小項目,自然就會面對源代碼的版本管理問題。但我卻不想為此而安裝一個龐大的源代碼管理軟件,感覺完全沒有必要。通常就是直接把項目目錄打包,然后在文件名上添加當天日期。正是由于這個原因,這個工具會自動根據目錄名稱以及當天日期,生成一個合適的壓縮包文件名。可以參見前面程序的主界面截圖。說明:按F12可以去掉文件名中的日期部分。

5. 更靈活的備份選擇,可以將多個目錄及多個分區中的某些目錄或文件壓縮到一個壓縮包中。
我的工具還可以將來自于不同磁盤分區的文件打包在一個壓縮文件中。操作方法也很簡單:直接將需要壓縮的文件或者文件夾拖動主窗口中即可,如下圖:

程序生成的壓縮包用7z打開的界面如下:

6. 可以方便地獲取一個目錄或文件的完整路徑名。
FishCabToolExt.dll中還有一個我經常用到的功能就是:當您在右擊一個文件或者文件夾時,可以非常方便地獲取它的所在全路徑。效果圖前面有,請參考前文。

7. 可以方便地從任何目錄打開命令行窗口。
我比較喜歡用Windows Server 2003,可是每當以命令行方式執行一些任務時,都要打開【運行】窗口,輸入【cmd】后,再切換路徑,太麻煩了。 FishCabToolExt.dll中有個功能就可以很輕松地解決這個繁瑣的過程。您只需要在Windows資源管理器中右擊目錄,或者在目錄窗口的空白處右擊鼠標,點擊菜單【從這里打開命令行窗口】就可以了,此時,您會發現,命令行窗口的當前目錄就是您需要的目錄。效果圖前面有,請參考前文。
壓縮效果
為了證明我的工具對于源代碼目錄壓縮的效果是有明顯改善的,現在我來將我的工具與7-Zip做個比較 。
首先,我要說明一下,7-Zip是目前全球最棒的壓縮軟件,它有著最高的壓縮率。
但它唯一遺憾的是就是 不能自動在壓縮時過濾不必要的垃圾文件(相對于源代碼來說),因此最終產生的壓縮包并不是最小的。

首先,我打開VS2008,創建一個ConsoleApplication,然后不修改任何設置,并寫了如下代碼:

復制代碼 代碼如下:

namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("Hello Fish.");
}
}
}

再來編譯吧,我將這個項目按debug, release方式都編譯了一次。

然后,我請出我安裝的7-Zip V9.2把這個項目目錄做了個壓縮包。然后,我又用我的工具也做了個壓縮包。二個包的大小如下:

有圖有真相,我就不多解釋了。
補充說明
默認的參數是按照C#項目及SVN版本控制軟件而設置的,如有其它的備份要求,請重新設置參數。
默認的參數并沒有采用最好的壓縮質量,如果你需要較高的壓縮質量,那么請自行調整。
運行本程序需要 .net Frarmework 2.0
由于FishCabToolExt.dll是個ATL COM,由32位的VC++6編譯器編譯,因此這個插件只能在32位的Windows中運行。
不過,FishCabTool.exe是個采用C#編寫的WinForm程序,且要求以32位方式運行,因此如果在64位的Windows中,那么只能從開始菜單中啟用本程序。
此時,程序仍能正常運行,只是不能從資源管理器的右鍵菜單中啟動。


如何干凈的卸載本工具

我寫的是一個我認為有用的小工具,而非流氓軟件。如果您認為它沒有任何優點,請按如下方法卸載它。

由于FishCabToolExt.dll是個Windows資源管理器的插件,它一旦被加載,就不能立即卸載了。具體方法請參考下文:

FishCabTool的安裝程序可以非常干凈地將FishCabTool從你的電腦上刪除(包括所有文件及注冊表項)。
如需卸載,請關閉全部資源管理器窗口(建議注銷后重新登錄),然后直接打開“控制面板”中的“添加或刪除程序”,選擇刪除FishCabTool即可。
注意:由于FishCabTool有一部分作為資源管理器的插件會被自動加載,所以在卸載時一定要保證關閉全部資源管理器窗口(包括桌面進程)。


上傳代碼到博客園
由于博客園的后臺操作界面只支持三種格式的壓縮包:zip, rar, 7z ,所以如果您打算用這個工具打包您的代碼并上傳到博客園時,請修改文件名,在后面加上 .7z
例如:我的博客【客戶端的異步操作】就提供一些示例代碼,我用工具打包后,生成的文件名是【AsyncClient_20111023.cab】,然后我將文件名修改為【AsyncClient_20111023.cab.7z】,就可以上傳了。
可以放心的是:7-Zip 是可以識別這種改名后的文件。

由于現在知道CAB格式的人越來越少,可能還有些網站也不能支持直接上傳,那么可按這種方式修改一下擴展名。

在此,我發出一個倡議:從現在起,如果您要與他人分享您的示例代碼,那么請在打包時,不要包含不必要的垃圾文件。
因為那些垃圾文件會:浪費您的上傳時間,浪費服務器的硬盤資源,浪費服務器的帶寬,浪費所有網友的下載時間。
舉手之勞,利人利已。

說明:工具可免費使用,沒有版權限制。

點擊此處下載安裝程序(2011-10-30更新)

您可能感興趣的文章:
  • asp.net下URL處理兩個小工具方法
  • Asp.Net權限管理系統 專用代碼生成工具(DDBuildTools) 1.1.0 下載
  • asp.net Google的translate工具翻譯 API
  • asp.net 半角全角轉化工具
  • asp.net 實現防迅雷等下載工具盜鏈
  • asp.net(c#)做一個網頁數據采集工具
  • IE 性能分析工具(asp.net環境)
  • asp.net防止刷新時重復提交(可禁用工具條刷新按鈕)
  • ASP.NET開發中經常用到10款工具軟件介紹

標簽:萊蕪 西雙版納 朔州 許昌 自貢 孝感 信陽 常州

巨人網絡通訊聲明:本文標題《asp.net 專業源代碼打包工具》,本文關鍵詞  asp.net,專業,源代碼,打包,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《asp.net 專業源代碼打包工具》相關的同類信息!
  • 本頁收集關于asp.net 專業源代碼打包工具的相關信息資訊供網民參考!
  • 推薦文章
    校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃
    欧美日韩国产高清一区二区三区| 91在线看国产| 国产成人综合精品三级| 欧美综合久久久| 亚洲欧美怡红院| 日本不卡123| 欧美色大人视频| 亚洲色大成网站www久久九九| 久久不见久久见免费视频1| 97久久精品人人做人人爽| 337p粉嫩大胆噜噜噜噜噜91av| 亚洲一区中文在线| 色综合欧美在线| 综合久久一区二区三区| 国产 欧美在线| 国产精品美女视频| 国产在线乱码一区二区三区| 91传媒视频在线播放| 欧美国产一区二区| 91啪九色porn原创视频在线观看| 中文字幕欧美三区| av激情综合网| 亚洲观看高清完整版在线观看| 精品视频一区 二区 三区| 亚洲成a人v欧美综合天堂下载| 欧美日韩一二三| 亚洲午夜精品17c| 91精品国产麻豆| 国产一区二区三区黄视频 | 国产主播一区二区三区| 国产午夜精品福利| 午夜精品久久久久久久久久| 韩国视频一区二区| 精品久久久久久久久久久久久久久久久 | 五月婷婷激情综合网| 久久精品一区二区三区不卡牛牛| 色婷婷综合久久久久中文 | 亚洲少妇30p| 久久蜜桃av一区精品变态类天堂 | 国产欧美一区二区三区网站| 欧美浪妇xxxx高跟鞋交| 白白色亚洲国产精品| 国产一区不卡在线| 麻豆国产精品视频| 视频一区二区欧美| 亚洲一区二区三区四区五区中文| 国产午夜亚洲精品羞羞网站| 日韩精品专区在线| 欧美高清视频一二三区| 欧美日韩日日夜夜| 欧美中文字幕一二三区视频| 99免费精品在线观看| 国产精品一区二区你懂的| 麻豆91免费观看| 日本不卡一区二区三区| 裸体歌舞表演一区二区| 精品一区二区在线看| 毛片av一区二区三区| 免费欧美日韩国产三级电影| 青青草97国产精品免费观看无弹窗版 | 综合分类小说区另类春色亚洲小说欧美 | 国产精品久久久久影视| 国产精品毛片久久久久久| 久久久久久久久久久电影| 国产风韵犹存在线视精品| 久久99精品一区二区三区三区| 蜜臀av亚洲一区中文字幕| 久久精品国产一区二区三区免费看| 日本成人超碰在线观看| 国产成人av网站| 91精品福利在线| 2021中文字幕一区亚洲| 亚洲国产成人午夜在线一区 | 久久久午夜精品| 欧美经典三级视频一区二区三区| 久久综合色播五月| 亚洲欧美日韩精品久久久久| 三级成人在线视频| 东方欧美亚洲色图在线| 91超碰这里只有精品国产| 久久久美女毛片| 亚洲成av人片在线观看| 成人免费毛片嘿嘿连载视频| 欧美天堂一区二区三区| 中文字幕国产一区二区| 国内精品国产三级国产a久久| 色婷婷综合久色| 国产精品国产a| 国产一区二区在线观看免费 | 欧美日韩一卡二卡三卡| 中文字幕av在线一区二区三区| 日本成人中文字幕在线视频| 91丨九色丨国产丨porny| 国产日韩成人精品| 国产一区二区三区在线观看免费 | 国产精品中文字幕欧美| 久久91精品国产91久久小草| 国内精品国产三级国产a久久| 国产麻豆精品95视频| 99国产精品视频免费观看| 在线亚洲免费视频| 国产喂奶挤奶一区二区三区 | 亚洲色图清纯唯美| 一区二区三区在线不卡| 日韩黄色片在线观看| 久久成人18免费观看| 91在线视频观看| 26uuu色噜噜精品一区二区| 欧美激情资源网| 亚洲韩国一区二区三区| 国内精品久久久久影院薰衣草 | 欧美亚洲尤物久久| 久久这里只精品最新地址| 一区二区久久久久| 播五月开心婷婷综合| 日韩精品一区二区三区在线| 亚洲国产一区二区三区青草影视| 精品一区二区日韩| 6080yy午夜一二三区久久| 日韩毛片精品高清免费| 国产成人免费视频网站| 欧美一区二区三区免费观看视频| 亚洲日本韩国一区| 成人不卡免费av| 亚洲国产精品99久久久久久久久| 老司机一区二区| 日韩精品一区二区三区三区免费| 亚洲一二三区视频在线观看| 99久久精品99国产精品| 亚洲日本va午夜在线影院| 成人精品鲁一区一区二区| 欧美极品另类videosde| 国产iv一区二区三区| 欧美国产一区在线| 99久久777色| 一级日本不卡的影视| 欧美日韩亚洲丝袜制服| 美女视频一区二区三区| 亚洲精品一线二线三线| 国产很黄免费观看久久| 国产精品欧美经典| 欧美无砖砖区免费| 另类小说色综合网站| 国产精品天美传媒| 欧美三级日韩三级国产三级| 亚洲图片一区二区| 久久久久久夜精品精品免费| 99re这里只有精品6| 日韩电影免费一区| 中文字幕不卡的av| 欧美精品vⅰdeose4hd| 国产福利一区二区三区视频在线 | 久久99国产精品久久| 国产亚洲欧洲997久久综合 | 樱桃视频在线观看一区| 51午夜精品国产| 欧美在线免费观看亚洲| 国产美女主播视频一区| 亚洲一区二区三区在线| 日韩欧美国产wwwww| 国模无码大尺度一区二区三区| 欧美又粗又大又爽| 国产原创一区二区三区| 亚洲欧洲精品天堂一级| 欧美日韩国产一二三| 国产自产高清不卡| 国产精品不卡一区| 日韩一区二区电影网| 色综合久久久久综合体| 亚洲女同ⅹxx女同tv| 久久影院午夜片一区| 91久久香蕉国产日韩欧美9色| 日本成人中文字幕在线视频| 国产蜜臀97一区二区三区| 欧美一区二区三区爱爱| 成人午夜激情视频| 国产一区二区导航在线播放| 亚洲国产欧美日韩另类综合| 精品成人在线观看| 91麻豆精品国产综合久久久久久| 成人性生交大片免费看视频在线| 亚洲.国产.中文慕字在线| 国产精品麻豆99久久久久久| 精品久久国产字幕高潮| 欧美日韩欧美一区二区| 97精品国产97久久久久久久久久久久 | 欧美丰满一区二区免费视频| 色婷婷激情综合| 91福利在线免费观看| 欧美三日本三级三级在线播放| 在线看国产一区| 久久久久久日产精品| 玉足女爽爽91| 韩国成人福利片在线播放| 成人性生交大片免费看中文 | 性久久久久久久| 精品一区二区免费| 99riav久久精品riav| 欧美乱熟臀69xxxxxx| 国产校园另类小说区|