華彩軟件站-綠色軟件下載站!

和平精英太垃圾:如何制作綠色軟件

綠色軟件的制作,簡稱軟件的"綠化",綠色軟件的制作實際上就是我們自己完成安裝程序的工作。沒有什么固定的方法,基本上是猜測加上試驗,不同類別的綠色軟件分別有不同的制作策略。 拿到一個新的軟件,想要制成綠色軟件的話,我一般遵循如下步驟:
  

引用:
一、 判斷。就是指猜測這個軟件能不能制成綠色軟件,從功能,從你對它的了解,如果你覺得這個軟件和系統的關系非常緊密,就不要繼續下去了,還是用原始的安裝程序最保險最方便,這樣的例子有directx9 ,IE6,Norton的反病毒軟件等等。這樣的判斷可以節省你的時間,當然你可以忽略這一步,嘗試制作綠色軟件,那么就轉到第2步。

  二、"綠化"。對于不同的軟件有不同的方法,沒有一定的規則,但是總的來說,就是理解軟件的安裝過程,轉換為綠色安裝,在這個過程中,可能需要嘗試多個方法,也可能最后由于軟件的復雜性或者某些特性,導致無法綠化。要有失敗的思想準備,具體的綠化方法隨后講述。

  三、測試。"綠化"后的測試最好到你個全新安裝的操作系統中測試,而且如果你要在多個操作系統中使用這個軟件的話,還要在其他的操作系統中測試,有的軟件的文件隨著操作系統的不同而不同,這個時候你需要在不同的操作系統中進行"綠化"過程,最后綜合為一個完整的適應多個操作平臺的綠色軟件。 "綠化"方法,需要根據經驗選擇不同的"綠化"方法,也可能需要不斷嘗試不同的方法,直到成功為止。


按照先易后難的次序,具體的方法包括:

 
引用:
 
1 解壓縮。這是最簡單的一種方法,就是指嘗試能不能直接解開軟件的壓縮包。用Winzip和Winrar試一試,看看能不能直接打開壓縮的安裝文件,如果不能打開,那么就換別的方法。如果可以,那么恭喜,這個軟件多半是屬于綠色安裝的軟件(有個別例外,如EmEditor),把壓縮包中的文件直接解壓到目標路徑,然后測試軟件的功能是否正常,如果功能正常,那么"綠化"就成功了,如果使用不正常,那么就換別的方法。這一類軟件的特點是安裝程序的工作完全可以由軟件自身來完成。

  2安裝然后卸載。也是比較容易的方法,完全是體力勞動,就是指直接安裝這個軟件,然后把程序復制出來,最后卸載安裝程序。如果這個軟件的安裝程序的作用僅僅是復制文件和生成快捷鍵等工作,那么就屬于綠色安裝,可以使用這個方法。最后測試軟件的功能是否正常,如果功能正常,那么"綠化"就成功了,如果使用不正常,那么就換別的方法。

  3 反編譯安裝程序。這個方法需要動腦筋,就是根據安裝程序所用的制作工具,選擇相應的反編譯程序,然后閱讀反編譯出的安裝腳本,制作綠色軟件。目前的軟件大多使用專門的安裝工具制作,如InstallShield,Wise,Inno Setup,Windows Installer,NSIS(Nullsoft),Installer VISE,其中Windows Installer格式的安裝文件(就是MSI,MST為后綴的文件),可以通過微軟的免費工具Orca打開查看,InstallShield格式的安裝文件也有很多免費的工具可以解壓縮和查看腳本。當然專門的安裝工具很多,有許多安裝程序沒有相應的反編譯程序,這種時候,就無法使用這個方法了。

  4 觀察反安裝程序和log文件。現在的軟件安裝完成后絕大多數都帶有卸載方法。卸載是安裝的逆過程,如果知道怎么卸載,那么也可以推測出如何安裝。由專門的安裝工具制作的反安裝程序,一般都是根據某一個文件中的信息來卸載的,可以用一個純文本的編輯器打開這個文件。個別情況下這個文件完全不包含可讀信息,就只好換用其他方法了。具體過程就是先采用方法2,然后理解反安裝過程,最后根據反安裝的信息制作綠色軟件。

  5 比較系統快照。當前面的方法都失敗的時候,可以試一試這個方法。具體思路就是首先在安裝軟件之前,把系統的狀態記錄下來,主要包括注冊表和系統目錄的所有的文件狀態。然后就是安裝軟件。安裝完成后,再一次記錄系統狀態。最后就是比較前后兩個系統狀態的不同,而得知安裝程序所做的工作。這個工作一般由專門的軟件完成,如免費工具Regshot(帖子最后有下載),免費工具inctrl5(帖子最后有下載),微軟公司的sysdiff工具(帖子最后有下載),或者WinInstall LE(在Windows 2000 Sever 光盤的目錄VALUEADDRDPARTYMGMTWINSTLE中)。在多數時候,僅僅需要對比安裝前后注冊表的不同,這時候還有大量的注冊表工具可以選用。在得出系統差異后,把差異分解為兩個部分:文件部分和注冊表部分。文件部分指的是向系統目錄拷貝的文件,以及作為COM組件注冊的文件,還有與這些文件相關的注冊表部分。注冊表部分單單指其余的注冊表的變化。對于文件部分,可以進一步區分出必須要往系統目錄拷貝的文件(這種情況是少數)和可以放在軟件的安裝目錄的文件。對于注冊表部分,區分出由這個軟件的安裝程序本身所作出的注冊表操作和注冊COM組件時候的注冊表操作,拋棄其他程序(如資源管理器Explorer)的操作。根據所有這些,寫一個拷貝文件,注冊COM組件和導入注冊表的批處理文件,就可以完成綠色軟件的制作了。當注冊表文件中含有路徑信息的時候,可以手工修改注冊表文件或者把注冊表文件轉化為INF文件從而實現全自動的路徑處理。

  6 直接導出注冊表,尋找自注冊的COM組件。這個方法是上面的方法5的簡化版,現在軟件的配置大多寫在注冊表中的"HKEY_LOCLAL_MACHINESOFTWARE軟件公司名字"和"HKEY_CURRENT_USERSOFTWARE軟件公司名字"這2個鍵下面,直接對把這2個注冊表鍵導出到REG文件中。自注冊的COM組件都需要導出如下4個函數:DllCanUnloadNow,DllGetClassObject,DllRegisterServer, DllUnregisterServer,可以用vc自帶的depend.exe找出哪一個動態鏈接庫是自注冊的COM組件。最后寫一個批處理文件用regsvr32.exe注冊COM組件和用regedit.exe導入注冊表。 通過上面分析安裝程序的動作,把安裝程序的工作分解為復制文件,注冊COM組件,安裝服務驅動,注冊表配置等幾個部分,雖然注冊表配置可以覆蓋注冊COM組件,安裝服務驅動等操作步驟,但是把這些明顯分割出來有助于制作綠色安裝的軟件。對于需要更復雜的步驟來安裝的軟件,還是使用原來的安裝程序比較保險。


具體事例 :

winrar3.30 和Winzip9.0  

引用:
winrar3.30 和Winzip9.0,采用方法1,解壓縮。這個方法非常簡單,從天空軟件站下載Winzip90.exe和winrar330sc.exe,在一個安裝了Winrar的系統上,用鼠標右鍵選擇下載的文件,運行右鍵菜單中的用Winrar打開的命令,然后把文件解壓到我們的目標路徑,如E:   ools目錄,就可以了。然后分別對Winzip9和Winrar進行設置就可以了。運行winzip9目錄中的Winzip32.exe,進行winzip的設置。Winrar也是一樣,運行Winrar.exe,打開菜單選項-〉設置,彈出一個對話框,選擇標簽--集成,逐項對Winrar設置。當拷貝到U盤而到新的機器上運行時,需要重復這些設置過程。 這一類軟件的特點是安裝程序的工作完全可以由軟件自身來完成,從而完全拋開安裝程序,或者說安裝程序的工作也就是解壓縮。類似的軟件還有一些,最簡單的測試辦法就是看看Winrar能否直接打開壓縮的安裝程序。也可以采用方法2,過程基本上和方法1一樣。 方法2就不具體說明了,僅僅指出有許多程序屬于這個類別,如Myie2,GreenBrowser,qq,BPFTP Server,IDA_Pro_Standard_4.5.1.770,FinalData,EASYRECOVERY 6.03,騰遜公司的TM等。


flashget
  
引用:
flashget是大家用得比較多的一個軟件,可以多線程下載并且下載管理的功能也很方便,從天空軟件站sky.com下載flashget1.60a國際版,運行一下,然后取消安裝。從上可以看出flashget1.60a國際版是使用Wise制作的安裝程序,從網上下載wungui程序,非常容易的把安裝程序解壓縮到一個目錄中,觀察Maindir目錄,其中有兩個DLL文件Jccatch.dll和fgiebar.dll,進一步察看這兩個動態庫文件的導出函數,可以知道這兩個DLL文件都是自注冊的COM組件,寫一個批處理文件install.bat來注冊這兩個DLL: REGSVR32 JCCATCH.DLL /s REGSVR32 fgiebar.dll /s 經過測試,功能正常,并且可以從瀏覽器IE中用鼠標的右鍵菜單激活flashget,功能完全,下面考慮卸載過程。

  運行Regedit.exe,發現flashget在注冊表中的路徑是[HKEY_CURRENT_USERSoftwareJetCarJetCar],寫一個注冊表文件unflashget.reg刪除這個路徑,如下:

  REGEDIT4 ; flashget [-HKEY_CURRENT_USERSoftwareJetCarJetCar] 同時寫一個批處理文件uninstall.bat來卸載這兩個DLL文件并導入unflashget.reg: Regedit unflashget.reg /s REGSVR32 JCCATCH.DLL /s /U REGSVR32 fgiebar.dll /s /U 隨后就是刪除一些我們用不到的文件,比如language目錄的絕大多數歐洲的語言文件,這時候這個綠色版本就做好了。把制作好的綠色的flashget拷貝到U盤上,需要用的時候,直接執行里面的install.bat文件就可以了(注意,要在flashget的目錄運行批處理文件),不需要任何文件拷貝。 我看到有人提到用優化大師提取falshget的注冊表,然后直接導入注冊表來制作綠色的flashget,這樣做是不行的,從我前面的步驟來看,注冊2個DLL文件必然在注冊表中引入了絕對路徑,那么如果直接提取注冊表的話,就必須根據當前的路徑來修改注冊表中的路徑,否則的話制作的綠色版的flashget只能在固定的目錄運行。在制作flashget綠色版的時候,我同時使用了方法3和方法6,使用方法3的目的就是避免安裝程序對系統作的修改,這樣可以直接在當前系統進行測試,而不需要到另外一個沒有安裝過flashget的系統測試。 Emeditor是方法1的一個反例。Emeditor可以從開發商主頁//www.emurasoft.com/下載,是一個簡單好用的文本編輯器,支持多種配置,自定義顏色、字體、工具欄、快捷鍵設置,可以調整行距,避免中文排列過于緊密,具有選擇文本列塊的功能(按ALT 鍵拖動鼠標),并允許無限撤消、重做,總之功能多多,使用方便,是替代記事本的最佳編輯器。 下載emed404epx.exe后,發現用Winrar可以打開,解壓后,運行Emeditor,發現丟失了預定義的多種文本格式的語法配置,看來這樣做不行,只好采用方法5了。請隨我一步步進行,步驟如下:

  1 掃描系統,制訂系統快照。這里我僅僅記錄當前系統的注冊表(因為我認為Emeditor不會向系統目錄拷貝文件,如果判斷錯誤,就會導致"綠化"失敗),運行ART(Advanced Registery Tracer),掃描一遍注冊表。不要關閉ART。

  2 安裝Emeditor。隨便安裝到哪里,反正一會就卸載。安裝好后,如果需要的話,更改配置,或者配置新的文件類型,例如我就增加了NFO文件類型,設定和NFO文件相關聯的字符集,這樣可以用Emeditor直接察看NFO文件,不需要專門的察看工具了。

  3記錄系統變化。再一次掃描系統,給系統作快照,從ART里面再一次掃描注冊表,然后選擇菜單命令Registry-〉compare here或者直接用鍵盤F10,點擊那個save to redo file的按鈕,存儲為Emeditor.reg文件,關閉ART。

  4 復制并卸載。復制安裝好的Emeditor目錄到其他路徑,然后卸載Emeditor程序。

  5 分析。打開剛剛導出的Emeditor.reg文件,這是一個巨大的reg文件,單單是REG文件就有1兆多,不過不用擔心。閱讀注冊表后,刪除和emeditor無關的注冊表項后,如僅僅和資源管理器相關的注冊表部分,發現剩下的注冊表文件可以分成3個部分。一部分在位于注冊表的這個路徑[HKEY_LOCAL_MACHINESOFTWAREEmSoft],里面大部分不涉及路徑,只有一項記錄了Emeditor的路徑,就是"ModulePath"="h:EmEditor4";還有一大部分在注冊表的這個路徑下面[HKEY_CURRENT_USERSoftwareEmSoftEmEditor v3],里面有很多項都涉及了Emeditor的路徑,如"Tmpl"="h:EmEditor4   emplate.xml";還有就是和Emeditor和txt文件后綴向關聯的注冊表設置,把Emeditor設置為IE中缺省的源代碼察看工具的注冊表設置以及注冊COM組件EMEDSHL.DLL的注冊表部分(和InProcServer32相關的就是)。

  6 "綠化"。
  1) 把位于注冊表路徑路徑[HKEY_LOCAL_MACHINESOFTWAREEmSoft]的內容存儲到emeditor_HKLM.reg文件中,把位于注冊表路徑[HKEY_CURRENT_USERSoftwareEmSoftEmEditor v3]的內容存儲到emeditor_HKCU.reg文件中,把剩下的內容首先除掉COM組件EMEDSHL.DLL的相關部分,然后存儲到emeditor_assoc.reg文件中。
  2) 把emeditor_HKLM.reg文件和emeditor_HKCU.reg文件中涉及到路徑的注冊表內容抽取出來,存儲到emeditorConf.reg文件。

  3) 把emeditor_assoc.reg文件和emeditorConf.reg文件用INF的語法轉換為INF文件,或者用一個免費小工具reg2inf.exe自動轉換,然后把轉換得到的emeditor_assoc.inf文件和emeditorConf.inf文件中的路徑h:EmEditor4全部用%01%代替。下面是emeditorConf.inf文件的內容:
  [Version] Signature="CHICAGO"
  [DefaultInstall] AddReg=EmeditorConf_AddReg

  hklm,"SOFTWAREEmSoftEmEditor v3Common","ModulePath",,"%01%"
  hkcu,"SoftwareEmSoftEmEditor v3ConfigC++","Tmpl",,"%01%   emplate.cpp"
  hkcu,"SoftwareEmSoftEmEditor v3ConfigCSS","Tmpl",,"%01%   emplate.css"
  hkcu,"SoftwareEmSoftEmEditor v3ConfigHTML","Tmpl",,"%01%   emplate.htm"
  hkcu,"SoftwareEmSoftEmEditor v3ConfigJava","Tmpl",,"%01%   emplate.java"
  hkcu,"SoftwareEmSoftEmEditor v3Configjavascript","Tmpl",,"%01%   emplate.js"
  hkcu,"SoftwareEmSoftEmEditor v3ConfigJSP","Tmpl",,"%01%   emplate.jsp"
  hkcu,"SoftwareEmSoftEmEditor v3ConfigPerl","Tmpl",,"%01%   emplate.pl"
  hkcu,"SoftwareEmSoftEmEditor v3ConfigPHP","Tmpl",,"%01%   emplate.php"
  hkcu,"SoftwareEmSoftEmEditor v3ConfigPython","Tmpl",,"%01%   emplate.py"
  hkcu,"SoftwareEmSoftEmEditor v3ConfigRuby","Tmpl",,"%01%   emplate.rb"
  hkcu,"SoftwareEmSoftEmEditor v3ConfigTeX","Tmpl",,"%01%   emplate.tex"
  hkcu,"SoftwareEmSoftEmEditor v3ConfigVBScript","Tmpl",,"%01%   emplate.vbs"
  hkcu,"SoftwareEmSoftEmEditor v3ConfigVBScript for EmEditor","Tmpl",,"%01%   emplate.vbee"
  hkcu,"SoftwareEmSoftEmEditor v3ConfigWindows Script","Tmpl",,"%01%   emplate.wsf"
  hkcu,"SoftwareEmSoftEmEditor v3ConfigXML","Tmpl",,"%01%   emplate.xml"
  ** 寫一個批處理文件install.bat,內容如下:
  regedit emeditor_HKLM.reg
  regedit emeditor_HKCU.reg
  RUNDLL32.EXE SETUPAPI.DLL,InstallHinfSection DefaultInstall 128 .emeditorConf.inf
  regsvr32 EMEDSHL.DLL

  RUNDLL32.EXE SETUPAPI.DLL,InstallHinfSection DefaultInstall 128 .emeditor_assoc.inf '

  4) 把install.bat,emeditorConf.inf,emeditor_assoc.inf,emeditor_HKLM.reg,emeditor_HKCU.reg5個文件存儲到Emeditor的目錄,刪除其余的注冊表文件。


Photoshop 綠色版 

引用:
由于各人愛好不同、對 Photoshop 的功能需求也不同,有人喜歡精簡,有人喜歡完整,甚至連幫助文件也包含在內,有人喜歡 ImageReady,有人根本不用 ImageReady......如果能按自己的實際需要,度身定做一個完全屬于自己的 Photoshop 綠色版多好啊。

Photoshop 雖然復雜,但只要抓住關鍵,掌握方法,自做一個綠色版本是很容易的事,下面,跟我來:

1、選擇好版本;

2、運行安裝程序,選擇自定義安裝,按你自己的需要定制好自己的 PHOTOSHOP;

3、安裝完成后,將整個 PHOTOSHOP 安裝目錄復制出來,并改名為"PHOTOSHOP GREEN";

4、在"PHOTOSHOP GREEN"目錄中新建一個目錄"備份文件",將"Program filesCommon filesAdobe"整個目錄復制到"PHOTOSHOP GREEN"的"備份文件"目錄中;

5、備份注冊信息:

(1)如果你 PHOTOSHOP 是 6.01,那么就不用備份了,因為注冊信息已經被保留到安裝目錄里;

(2)如果你 PHOTOSHOP 是 7.01,請將注冊表中的如下分支導出來并保存到"PHOTOSHOP GREEN"目錄中備用:

[HKEY_LOCAL_MACHINESoftwareAdobePhotoshop.0Registration]

(3)如果你 PHOTOSHOP 是 8.01,請將注冊表中的如下分支導出來并保存到"PHOTOSHOP GREEN"目錄中備用:

[HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionUninstall{EFB21DE7-8C19-4A88-BB28-A766E16493BC}]

6、到此,你的 PHOTOSHOP 綠色版已經制作完畢,今后,你只要按原路徑恢復備份文件,并導入注冊文件,綠色版就能正常使用了。


如果你連這樣都感到麻煩的話,還有更簡單的方法:

1、先按你自己的需要安裝一個 PHOTOSHOP;

2、把相同版本的里的"已綠化文件.exe"拷貝到里面,那么,你的 PHOTOSHOP 也是綠色版了。



軟件綠化技巧1:注冊表文件通用法


引用:
在使用綠色軟件前,經常要導入注冊表內容。


WINDOWS98 和 WINDOWS2000/XP 的注冊表文件有些不同:

WINDOWS98 的表頭是"REGEDIT4",ANSI 編碼;
WINDOWS2000/XP 的表頭是"Windows Registry Editor Version 5.00",UNICODE 編碼;

WINDOWS98系統導出的注冊表文件,拿到WINDOWS2000/XP里可以正常導入,但是WINDOWS2000/XP系統里導出的注冊表文件拿到WINDOWS98系統里卻不能正常導入。

如何使INDOWS2000/XP系統里導出的注冊表文件也能在WINDOWS98系統里正常使用呢?方法是:

一、用WINDOWS2000/XP里自帶的記事本,把注冊文件打開;

二、把表頭"Windows Registry Editor Version 5.00"改為"REGEDIT4";

三、把文件另存為一個新文件,編碼改為"ANSI";


最簡單的綠色軟件制作法 

引用:
這里談的綠色軟件都是廣義的,也就是解壓后就能使用的,不用安裝。其實無論什么綠色軟件,只要你運行過,就會在注冊表里留下記錄。 記得以前在網上看過一篇用“Windows優化大師制作綠色軟件”,用這種方法簡直就是多此一舉,不僅麻煩,而且現在Windows優化大師都采用自己的壓縮算法,用這種方法根本行不通。其實你直接將想制作軟件的安裝文件夾拷貝出來,復制到另外一臺未安裝該軟件的電腦上,若能正常運行,那你就制作成了一個綠色軟件。以金山詞霸2005為例:我將它安裝在D盤,將D:Program FilesKingsoftPowerWord 2005這個文件夾復制出來,放到另外一臺未安裝金山詞霸的電腦上,它能運行,OK,制作綠色版金山詞霸2005成功(有些人可能說,我沒有兩臺電腦,其實裝個VmWare,或者是Virtual PC就行了)。 有些軟件是無法用這種方法制作的,如Realplayer10,它在安裝的過程中將其復制到多個文件夾,如c:windows,c:windowssystem32等,這樣你就只能用反安裝的方法來制作,這個有很多軟件如:QQ,Skype,UltroISO,PPLive等等

相關文章

    無相關信息

最新評論

返回頂部