日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 运维知识 > windows >内容正文

windows

Windows优化大师的一点研究

發(fā)布時間:2024/9/20 windows 61 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Windows优化大师的一点研究 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
以英文版v7.80.8.218來研究,這個應(yīng)該是目前最新的公開發(fā)布的版本了。

??? 安裝程序是最新的Inno Setup 5.2.2制作的安裝程序,Inno Setup是用Delphi 2編譯的,因此與Delphi做的應(yīng)用軟件是很配的,就如用C++做的程序喜歡用NSIS打包一樣。Inno Setup 5.2.2也是目前發(fā)布的最新版本了,最近的幾次更新,Inno Setup也是一直在改進對于Vista系統(tǒng)的支持。Inno Setup還有一個優(yōu)點,就是可以設(shè)置壓縮方式為lzma/ultra,這樣可以生成最小的安裝包,節(jié)約用戶的下載時間。

??? 接下來就開始解剖安裝程序,請出Universal Extractor這個工具(當(dāng)然直接用命令行工具innounp.exe也可以),解包完成,來看看解出來的文件。

??? Setup.e32?真正的安裝執(zhí)行文件,作用相當(dāng)于Installshield的Engine了
??? flist.bin?? 看起來像是script.bin的索引文件
??? script.bin?腳本編譯后的二進制文件,重點來看看這個文件

??? 看到安裝開始就刪除了不少的中文的快捷方式,可能是方便那些測試人員,免得他們一會裝中文版,一會裝英文版,開始菜單和桌面上出現(xiàn)一堆重復(fù)的快捷方式。然后我看到了有一個網(wǎng)址:http://login.wopti.net/install.php?Ver=7.80.8.218.5,相信是用來記錄聯(lián)網(wǎng)用戶的軟件安裝情況的以便統(tǒng)計分析。接下來就是往系統(tǒng)復(fù)制文件了,其中{sys}\Iosubsys\Smartvsd.vxd是只有在Win9x下才會安裝,{app}\WoptiDefrag.dll是在非Win9x和非Vista下才會安裝,{app}\WoptiDefragVista.dll是在Vista下才會安裝。{tmp}\WoptiInfo.dll其實原本叫SendInfoDLL的,其作用就是發(fā)出一個HTTP Request到之前我提到的那個網(wǎng)址。(因為這是一個Delphi編譯的DLL,并且引用了WinInet這個單元)

??? {sys}\Iosubsys\Smartvsd.vxd是支持SMART IOCTL接口的虛擬設(shè)備驅(qū)動程序,因為Windows被設(shè)計為應(yīng)用程序不能直接訪問底層硬件,因此需要從設(shè)備驅(qū)動中獲取相關(guān)硬件信息。Win9x可以直接使用Smartvsd.vxd即可訪問硬盤信息;Windows NT及以后的操作系統(tǒng),管理員是可以管理硬件設(shè)備的,因此可以用ATA/APAPI的IDENTIFY DEVICE來取得所需信息,但是考慮到用戶權(quán)限不一定是管理員,所以在WinNT/2K/XP下非管理員用戶可以用SCSI后門的方式讀取IDE硬盤信息(Vista下面這招就不靈了)。

??? {app}下的所有執(zhí)行文件和DLL都做了數(shù)字簽名,這應(yīng)該是國際化的需要吧,畢竟國外更看重這一點。簽名是用的WoSign(深圳沃通)的證書,好像也不便宜,1年要1000多。不知為什么,WoptiDefragVista.dll沒有版本信息,WoptiUpdate.exe的描述竟然是中文,天吶,不會沒有專門做英文版的升級程序吧,看起來像是如此。版本信息里的公司有的是SSN,有的是Wopti,版權(quán)信息也是不一致,有的產(chǎn)品名稱里還是中文名稱。且有的[語言]是中文,有的[語言]是英文,這說明一點,發(fā)布出去的產(chǎn)品的文件并不是全在同一臺機器上編譯的。

??? LIGHTMAP.PNG應(yīng)該是作為Texture,與D3DX81ab.dll一起來完成圖形顯示(DirectX)性能的檢測。

??? UpdateServer.ini是一個配置文件,定義了升級服務(wù)器地址,看得出這樣可以支持以后加入多臺升級服務(wù)器以滿足用戶數(shù)增長后的升級需求。

??? PortsList.inf這個定義文件定義了常見服務(wù)的端口使用情況,可以不斷補充新的定義。

??? ActiveXImmunity.ini (ActiveX插件免疫數(shù)據(jù)庫) 這個文件是收集的插件的CLSID,讓用戶可以有選擇的免疫插件以防中招。

??? SelfRegChg.ini這個文件是原來存放自定義優(yōu)化設(shè)置,默認帶2個設(shè)置,一個是支持Win2000使用超過137G大硬盤,另一個是取消磁盤容量警告的設(shè)置,應(yīng)該是讓用戶將自己特殊的優(yōu)化設(shè)置定義后在軟件中應(yīng)用。

??? Empty.ico 是用來隱藏快捷方式上的箭頭的透明圖標(biāo)。

??? WoptiHWDetect.sys 就是原來的gwiopm.sys,是用來在NT下做I/O端口操作的服務(wù)程序。

??? WoptiHelp.chm 幫助文件,是用Help & Manual(專業(yè)的幫助制作工具,雖然安裝程序不到30M,可比起Adobe RoboHelp來說算是苗條多了)制作的,里面沒有一副圖片,所以幫助文件才100多K。
??? Big5.dat, Devs.Dat, JEDEC.dat, MonV.Dat 開始我還以為是什么加密格式,后來仔細一看,文件開頭的兩個字節(jié)"78 DA"(最大壓縮率), "78 9C"不是標(biāo)準(zhǔn)的ZLib壓縮格式的標(biāo)志嗎,顯然這里的壓縮也起到了一定的加密效果(因為沒有文件頭,所以壓縮工具都不能打開文件)。這些Dat文件會在運行后需要時自動解壓為同名的.tmp臨時文件。MonV.Dat解壓生成MonV.tmp后,又迅速的被刪除了。
??? Devs.tmp (芯片檢測數(shù)據(jù)庫) 臨時文件,打開是一個文本文件,里面是設(shè)備ID與名稱的對照表。
??? JEDEC.tmp (SPD 廠商數(shù)據(jù)庫) 臨時文件?
??? [ 注:JEDEC = Joint Electron Device Engineering Council (電子元件工業(yè)聯(lián)合會) ]
??? Big5.dat 應(yīng)該是注冊驗證需要的東西吧。
??? MonV.Dat 不知道干什么用的,也是注冊驗證需要的東西?

??? Set.ini 運行后才會生成,里面是保存的用戶設(shè)置,看起來所有的外置工具都是存取的這個設(shè)置文件。

??? Wopti.log 運行后才會生成,是記錄的操作日志。

??? D3DX81ab.dll 這個文件被ASPack壓縮過,可其他的exe和dll都沒有被壓縮。

??? WoptiDefrag.dll和WoptiDefragVista.dll (磁盤整理組件) 都是用VC的MIDL編譯的,而且還是ActiveX控件。里面提供的是DefragControl Class。

??? WoptiCDRomContmenu.dll 也是可以注冊的COM文件,但是是用Delphi開發(fā)的。作用是Context Menu Handler,就是利用Windows提供的接口做外殼擴展,為所有文件類型的右鍵菜單上增加2個項目,分別是打開光驅(qū)和關(guān)閉光驅(qū)。但是我這里選中菜單時下面的狀態(tài)欄上會出現(xiàn)亂碼(不知道是不是Delphi不支持Unicode的原因)。regsvr32 WoptiCDRomContmenu.dll 執(zhí)行后則增加菜單,regsvr32 WoptiCDRomContmenu.dll /u 執(zhí)行后則移除菜單。核心代碼當(dāng)然是對winmm.dll的mciSendCommand, mciSendString的調(diào)用。

??? Woptiglobe.dll 是用Delphi 7開發(fā)的,三個導(dǎo)出函數(shù):WoptiChkFileIsOK,WoptiCtrlHomepage,WoptiSetMaxthon

??? WoptiP2P.dll (進程功能庫) 是用Delphi 7開發(fā)的,也是三個導(dǎo)出函數(shù):WomTerminateProFromName,WomTerminateProcess,GetPort2ProcessList

??? WoptiUtils.dll 是用VC7開發(fā)的,只有一個導(dǎo)出函數(shù):ClearTracksForVista

??? WoptiMem.exe (內(nèi)存整理) 是用Delphi 7開發(fā)的,可以看出整理內(nèi)存還是采用的請求大內(nèi)存迫使操作系統(tǒng)將不常用進程所占用的內(nèi)容轉(zhuǎn)移到虛擬內(nèi)存,以達到整理內(nèi)存碎片的作用。

??? WoptiProcess.exe (進程管理器) 是用Delphi 7開發(fā)的,靜態(tài)鏈接了WoptiP2P.dll的GetPort2ProcessList函數(shù)。

??? WoptiUpdate.exe (在線升級) 是用Delphi 7開發(fā)的,升級信息地址是:http://liveupdate.wopti.net/updatefilelist.zip,奇怪的是定義了.zip后綴,返回的卻是文本文件。這個文件只有中文信息,應(yīng)該是放錯了版本。

??? WoptiUtilities.exe (主程序) 是用Delphi 7開發(fā)的,靜態(tài)鏈接了WoptiP2P.dll的GetPort2ProcessList函數(shù)。所用第三方控件大概如下:

Fast Memory Manager?優(yōu)秀的內(nèi)存管理程序,使用其帶來的額外好處是可以很容易發(fā)現(xiàn)程序中代碼引起的內(nèi)存泄漏
TRegExpr??Delphi下唯一有公開源代碼的正則表達式控件
SimpleTimer??輕量級的定時器,精度雖然與TTimer一樣,但是它是從TObject繼承下來的,而且多個實例可以共享同一句柄
MaxMem???內(nèi)存深度整理
MiTeC System Information Component? 系統(tǒng)信息檢測
CoolTrayIcon??托盤控件
ActivePorts??查看系統(tǒng)端口的使用情況
DhCheckFolder??可供選擇的系統(tǒng)目錄及磁盤查看控件
TMS Components??一套功能很全的界面功能控件
APNetscapeLabel??仿Netscape Communicator的性能對話框的標(biāo)簽的控件,作標(biāo)題欄用
mxOutlookBar Pro?左邊的欄目選擇組件
Virtual Treeview?功能強大的樹形控件,也可以當(dāng)作表格用
FlatStyle??按鈕,輸入框等平面風(fēng)格控件
Magenta Systems WMI and SMART Component? 通過WMI,SMART,SCSI獲取更詳細準(zhǔn)確的系統(tǒng)信息
IPInfo???利用IP Helper API獲取網(wǎng)絡(luò)配置以及適配器信息
DelphiX???DirectX的Delphi接口控件
ZLib???提供壓縮功能
Indy???網(wǎng)絡(luò)通訊控件
TeeChart??用來顯示餅圖等
md5,Blowfish,FGIntRSA,RC6 都是密碼學(xué)相關(guān)的算法實現(xiàn)單元,可以用到注冊驗證以及加密文件。

????有開發(fā)人員是用微軟拼音的,很容易就會把輸入框控件的ImeName自動設(shè)置成"中文 (簡體) - 微軟拼音"。

??? 可以肯定的是,注冊驗證一定是用到了RSA算法,沒有對主程序做加殼等保護處理,就是說不太可能被人分析代碼而寫出注冊機,但是被爆破還是難免的。曾經(jīng)的敵人名單:-Arongsoft.com.htm,Keygen.exe,wom60_Keygen.exe依然在代碼中定義著。

??? 界面:

??? 窗體的Tab鍵也沒有設(shè)置按順序跳轉(zhuǎn),ESC不能關(guān)閉對話框。APNetscapeLabel上實現(xiàn)的模擬標(biāo)題欄的功能有點小問題:當(dāng)在最大化雙擊恢復(fù)時會導(dǎo)致窗體位置被粘連。APNetscapeLabel沒有實現(xiàn)右鍵菜單,左上角的圖標(biāo)沒有實現(xiàn)雙擊事件關(guān)閉,這與普通的窗體行為不一致。

??? 下方的狀態(tài)欄是自畫Panel,實現(xiàn)了上下漸變效果。左邊的mxOutlookBar被修改了源代碼以實現(xiàn)項目與外部連成一體的效果以及圓角效果。VirtualStringTree被繼承實現(xiàn)TWomccVT。FlatButton修改成更加平面與實現(xiàn)圓角效果。


我自己根據(jù)其執(zhí)行文件,寫了一個界面的演示(Source include):
???
http://files.cnblogs.com/Icebird/WoptiUtilitiesDemo.rar

轉(zhuǎn)載于:https://www.cnblogs.com/Icebird/archive/2008/03/09/WoptiUtilitiesDemo.html

總結(jié)

以上是生活随笔為你收集整理的Windows优化大师的一点研究的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。