Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 11 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
11
Dung lượng
758,71 KB
Nội dung
Phần I: Các công cụ cần thiết và … để portablize: Tôi sẽ đề cập đến các công cụ đang dùng trong quá trình portablize 1 phần mềm. Nếu bạn thích có thể tìm và down chúng về, hoặc lựa chọn một số tools mà bạn cho là hữu ích. (Theo tôi thì tools càng nhiều càng tốt, thừa còn hơn thiếu ) 1. WINRAR. WinRAR là tool đầu tiên, vô cùng cần thiết để đóng gói và nén các soft có dụng lượng nhỏ, rất quen thuộc và dễ sử dụng. File thực thi (*.exe) được tạo bằng WinRAR đơn giản mà tiện lợi (dưới dạng single exe file) 2. AutoPlay Media Studio: Không có gì để nói ngoài 2 chữ tuyệt vời. Ngoài mục đích chính là tạo file autorun cho các đĩa CD, AMS còn được sử dụng rộng rãi trong việc tạo AIO và Portable Software. Công cụ này được sử dụng để đóng gói những phần mềm có dung lượng lớn và thực thi một vài chức năng khá hay ho. Tôi có viết một tut về soft này rồi thì phải. 3. Deepfreeze. Bạn sẽ hỏi DF có vai trò gì trong quá trình portablize? Có vẻ như DF chả liên quan gì tới việc portable cả. Thế nhưng, thử nghĩ xem, sau khi bạn cài đặt 1 soft nào đó, đăng ký thành công (Full software). Bạn quyết định tạo phiên bản Portable. Thế là bạn gỡ nó ra sau khi đã copy một bản sao ra đâu đó. Tưởng chừng như Add/Remove Programs có thể xóa sổ nó khỏi máy của bạn nhưng… ơ, thông tin đăng ký của nó lưu ở chỗ quái nào thế nhỉ ? Bạn đã thử lục tìm những ngóc ngách có thể (thậm chí cả cái mạng nhện Registry khó xơi) ^^. DeepFreeze sẽ làm giùm bạn. Chỉ bằng một lần reboot, máy của bạn lại y như lúc trước. Với bản sao đã có, bạn có thể tiến hành một số thử nghiệm rùi. Tóm lại một câu, DF có vai trò quan trọng trong quá trình test phiên bản portable của một soft nào đó. Tất nhiên nếu bạn có đủ kiến thức + thời gian để clean máy tính của mình hay có nhiều hơn 1 máy tính hoặc vài tester thì thui, khỏi cần DF nữa. 4. AutoIT. Hmm, nói đến AutoIT hay AutoHotkey bạn sẽ bực mình vì vừa phải cài lại windows vì mấy con virus coded bời AutoIT chết tiệt. Thực ra nó đâu có tội tình gì đâu, hehe. Trong một vài trường hợp bạn sẽ nghĩ đến việc dùng AutoIT để nó làm một số việc rẩt nhanh chóng. Tôi đã từng dùng nó để đăng ký cho soft portablized, rất nhanh và hữu dụng. Bạn lại nói rằng bạn dùng BKAV hay một anti-virus software nào đó clean toàn bộ AutoIT scripts. Tôi không quan tâm đến chuyện đó, đó là vấn đề của bạn, KAV của tôi chả bao giờ làm như thế xD. 5. Petools, Procdump, Filemon, Regmon, Regview…. Đây là một số tool nhỏ mà các Cr@cker vẫn dùng để làm việc-mà-ai-cũng-biết-là-việc- gì-đó . Tác dụng chính của chúng là quản lý các process, các khóa registry đang được gọi tới và một số tác dụng khác. Đao về chạy thử nhé (hình như trong AIO zone có đấy, zô đi). 6. Regsvr32 ? Trông quen nhỉ. Vào command gõ lệnh này xem Code: Regsvr32 /? Xong chưa nhỉ ? Nếu hiểu rồi thì tiếp tục nhé. Cái này vô cùng hữu dụng trong việc đăng ký các thư viện động (*.dll, *.ocx) với bà chủ nhà Windows đấy . Ví dụ nhé: Bạn đã chép thư mục chương trình của soft A ra Desktop (tạm gọi là thư mục A trên Destop), gỡ bỏ toàn bộ những gì liên quan đến soft A (làm thế nào thì đừng hỏi tôi). Chạy thử file .exe trong A. Huh, chả thấy hiện tượng gì xảy ra. Xem xét xung quanh, thấy có một số file chả biết nó có tác dụng gì nhưng có đuôi *.dll, *.ocx. Có thể làm gì với bọn này nhỉ. Vào command đăng ký chỗ ở cho bọn nó xem, trời lạnh thế này mà đứng ngoài đường thế chịu sao thấu . Sau khi … xong, chạy thử chương trình. Nó đã ngoan ngoãn làm việc chưa nào . Chú ý: Không phải chương trình nào cũng thế này đâu nhé, ví dụ thôi . Vấn đề là chả nhẽ lúc nào cũng phải vào command dể reg file dll, ocx, như thế thì phiền chết. Làm theo chỉ dẫn sau để khi cần đăng ký phòng trọ cho em nào chỉ cần Alô cái là bà chị Windows sắp chỗ liền: Chạy Regedit (chạy như thế nào thì đừng hỏi) Tìm tới khóa HKEY_CLASSES_ROOT\*\Shell Tạo các key như hình: Nhập giá trị như sau: Các giá trị tương ứng: Code: Command Prompt : cmd /k Edit with Notepad: notepad.exe %1 UNINSTALL DLL/OCX: "regsvr32.exe" "%1" /u Sau khi nhập xong, thoát khỏi regedit và thử click phải chuột (right click) vào một file nào đó (file chứ không phải thư mục nhé – không nhất thiết là dll hay ocx). Menu chuột phải sẽ như sau: 1 : Mở cửa sổ lệnh DOS với thư mục hiện thời là thư mục chứa file đang chọn 2 : Đăng ký phòng cho các em dll, ocx 3 : Chỉnh sửa file đang chọn bằng notepad 4 : Sau khi chửi nhau với chị Windows, chọn cái này để xách vali ra khỏi nhà trọ Okie, thế là xong Regsvr32. 7. Notepad. Sử dụng để làm gì nhỉ?. Tạo file *.bat và viết linh tinh trong lúc chán đời hehe. Bạn có thể chọn một trình soạn thảo văn bản nào đó khác cũng được nhưng tôi chọn Notepad vì với notepad, các em đi với notepad chỉ là plain text (dịch là không mặc gì cả nhé ) hahaha. 8. Một chút hiểu biết về DOS và file bat, tiền bối của bà chị Windows yêu quái của chúng ta đấy. Ỷ thế được cưng chiều ả Windows chả coi bố già DOS ra cái quái gì cả, . Nhưng thôi, tính ả thế, biết làm thế nào được . Biết chút ít về bat và lập trình bat (ăn cơm hàng ngày bằng bát, làm gì chả biết, nhỉ? ) sẽ giúp bạn trong việc tạo single exe file với software phiên bản portable. 9. Còn cái gì nữa không nhỉ, hiện giờ chỉ nhớ thế thôi. Đang làm gì đấy, thử portable cái gì đó hả . Đừng làm thế, hãy kiếm tool đi đã chứ … Nhưng mà bài này chả có link để download gì cả, đúng không?. Bạn có một thứ mà tôi đang định đề cập đến cơ mà, đó là a brain, hehe. Vào UDS, Google và search đi nào, không khó đâu mà. Khi nào search mãi rồi mà không ra hãy pm cho tôi, sãn sàng chia sẻ cho bạn những gì tôi có (but not evrything of course). Hình như tôi viết hơi dài, nếu có gì khó hiểu thì pm lại nhé. Có gì viết nấy mà ^^. Tut này không hướng dẫn bạn Portablize cái gì đâu nhé. hiiiii. . Tut finised!!! To be continued… (if you want more) Chicknsoup(UDS) Nào, tiếp tục phần 2: Một chút chung chung, đại loại là để bạn có thể mày mò làm cái gì đấy nếu thích Phần 2: Extra tools and how to start. Tôi đưa phần extra tools này vào vì nó hơi khác với phần trên. Các tools dưới đây chủ yếu để tạo launcher (hay loader). Nếu để ý các portable của Portableapps.com hay… thì bạn sẽ thấy thường có 1 file chạy bên ngoài, đó là loader/launcher. Chưa kịp mày mò mấy cái này, bởi xài WinRAR + bat quen rùi 10. NSIS Dùng để tạo launcher. Tool này đặc biệt hữu dụng khi portablize các soft lưu cấu hình vào registry. Tôi còn ít kinh nghiệm về món này . Có lẽ lời khuyên của tôi dành cho bạn là nên tìm hiểu về NSIS, khá hay đấy 11. 7-ZIP Chức năng tương tự WinRAR, nhưng tôi thích WinRAR hơn. 12. Registry Rocker Tạo script để dùng cho NSIS, biết soft đó lưu thông tin vào khóa nào trong registry thì cũng tốt. 13. Reg-Rapper Quản lý các khóa trong registry mà soft gọi tới, sau khi ứng dụng kết thúc thì xóa mọi thông tin liên quan. Code: Registry Rapper is a template for allowing the use of programs that save their settings to the registry as portable applications. First it will check the registry for settings of the program and then save them if present. Then it will write the settings for the program to the registry, run the program and then rewrite the registry settings to a file for later use. It will then delete the settings from the registry; removing any trace of the program. Finally rewritting the original current local settings back to the registry. This program is a registry encapsulation program, which takes care of all the registry settings a program might need to run and make sure nothing is left behind on the host system. Allowing programs that were not created as portable (i.e saving their settings to .ini files within the program folder) to be used as portable. Cài đặt Reg-Rapper Code: 1. Tạo cấu trúc thư mục như sau: - Thư mục gốc (tên bất kì) *Thư mục gốc ở đây chỉ thư mục chứa RegRap.exe - Thư mục chứa ứng dụng (APPS) (Tên bất kỳ, chứa các files liên quan đến ứng dụng) - Thư mục cấu hình (Tên : SETTINGS) 2. Chép các file liên quan tới ứng dụng vào "Thư mục chứa ứng dụng” 3. Chép file RegRap.exe vào “Thư mục gốc” 4. Chép RegRap.ini vào thư mục "SETTINGS" 5. Nhập thông tin cho file RegRap.ini file: [DIRSETTINGS] PROGRAMDIRECTORY=(The "Thư mục chứa ứng dụng") [PROGSETTINGS] DEVNAME=(Tác giả ứng dụng) APPNAME=(Tên chương trình) EXECUTABLE=(Tên file thực thi, *không có .exe) Nếu đã có file settings.reg trong thư mục SETTINGS, nhập vào: [REGSETTINGS] REGFILE=(Tên file .reg) Ví dụ về 1 file RegRap.ini Quote: [DIRSETTINGS] PROGRAMDIRECTORY=IPScan [PROGSETTINGS] DEVNAME=Angryziber APPNAME=Angry IP Scan EXECUTABLE=ipscan [REGSETTINGS] REGFILE=Settings\Settings.reg MANREGKEY=HKEY_CURRENT_USER\Software\Angryziber\ Lưu file. Tìm thông tin liên quan tới khóa registry 1. Cài đặt chương trình vào ổ đĩa. Nếu chương trình không cần cài đặt, sang bước 2 2. Sử dụng Sysinternal's Registry Monitor hoặc RegShot ( http://standalone.atspace.org/index.html or http://www.portablefreeware.com/) để quan sát sự thay đổi của các khóa registry. 3. Vào regedit và tìm tới khóa thêm vào bởi ứng dụng vừa cài. 4. Chọn Copy Keyname 5. Paste vào trong RegRap.ini: [REGSETTINGS] MANREGKEY= 14. Unilauncher. Launcher cho nhiều ứng dụng khác nhau. 15. Sandboxie Cái này không rõ lắm. Ví dụ: bạn chạy một ứng dụng thông qua sandboxie, các file được gọi tới sẽ được sandboxie lưu tâm đến và lưu vào một cái gọi là Sandbox, hơi khó hiểu Thông tin thêm xem ở đây: Code: http://www.sandboxie.com/index.php Download extra tools here : Code: http://www.box.net/public/u9z4b4cbou … Okie, còn tools nào nữa thì chịu, chưa biết tới , ai có thì post lên cho mọi người tìm hiều. Có cần tut dành riêng cho từng tool không nhỉ How do we start ? Bạn đã tìm ra một chương trình khá thú vị, và muốn portablize nó. Vấn đề là bạn chưa biết bắt đầu từ đâu. 1. Cài đặt chương trình (tất nhiên đây phải là bước đầu tiên để tiếp cận ứng dụng ). Xem xét các file liên quan trong thư mục cài đặt (file readme.txt, readme.html… thậm chí cả uninstall.dat nữa – nếu may mắn bạn có thể tìm được một vài điều thú vị trong đó ). Chạy thử chương trình, không quan tâm đến việc nó là trial hay evaluation (vì không phải bạn đang tập cr@ck). Chạy Filemon, Regmon, PETools hay …. để xem chương trình gọi đến các file, khóa registry nào…Thông thường dính đến registry là phức tạp rùi đấy, điều này phụ thuộc kinh nghiệm của bạn. Chỉnh sửa registry và dẫn đến việc bà chị Windows nổi giận không thèm làm việc nữa là chuyện bình thường (đau đầu mà ). Biện pháp tốt nhất là sao lưu và sao lưu. 2. Đăng ký chương trình. Nếu có file cr@cked ngon thì xài luôn, vì như thế quá trình portablize của bạn sẽ đơn giản hơn rất nhiều. Sau khi đăng kí thì tìm xem thông tin đăng ký được lưu ở chỗ nào. Nếu trong registry, export khóa đó ra để dùng sau này. Chú ý với khóa HKEY_USERS thì sẽ rắc rối hơn các khóa khác. Tuy nhiên có thể đổi HKEY_USERS thành HKEY_CURRENT_USER, có thể work trong một số trường hợp (nếu bạn không may mắn thì …) 3. Sau khi quan sát chán rùi thì tiến hành thử nghiệm nào. Copy thư mục chương trình ra đâu đó (ổ D chẳng hạn). Khởi động lại máy tính. Tại sao lại khởi động lại máy tính? Nhớ lại lúc trước tớ chẳng bảo bạn dùng DeepFreeze là gì (chú ý là chỉ đóng băng ổ C – với giả định ổ C là ổ chứa Windows) 4. Sau khi reboot thì vào bản sao thư mục và thử chạy file thực thi (*.exe) xem sao. Nếu mọi thứ tốt cả, chương trình làm việc bình thường, không có gì phàn nàn cả thì bạn đã portablize thành công rùi đấy . Còn nếu nó vẫn trơ trơ ra, chỉ thấy con chuột chuyển sang wait … và chả có gì hơn thế xảy ra >_<. Sigh, cần phải mò tiếp. Dựa vào những gì bạn có ở bước 1 (có thể nhiều hoặc ít) để xem có file/khóa registry nào đó liên quan đến việc khởi tạo chương trình hay không. Thông thường thì đó sẽ là một hoặc một vài file thư viện động (*.dll, *.ocx). Tôi không biết phải nói thế nào, tuy nhiên trong nhiều trường hợp thì thử là cũng đâu phải là một phương pháp tồi khi mà bạn chưa có manh mối gì nhiều, hehe. Bước 4 này có thể có nhiều biến đổi. Chúc may mắn để có thể tới các bước sau. 5. Ồ, bạn đã khiến cho chương trình hoạt động mà không cần cài đặt? Quá tốt. Vấn đề là dù nó đã chạy rồi, nhưng vẫn chỉ là Trial/Evaluation (bước này không đề cập tới việc portablize Cr@cked, Freeware hay corporate edition…). Chắc chắn rằng bạn không thích thế. Bạn có số serial của soft và nếu bạn cho rằng mình có thể nhập serial mỗi lần sử dụng thì tut chấm hết ở đây. Nếu không, hãy đọc tiếp. a. Soft lưu thông tin đăng ký vào file (có thể là file.dat hoặc file.ini…) Cái này đơn giản và dễ dàng như việc bạn sử dụng một cr@cked edition. b. Soft lưu thông tin đăng ký vào Registry Với dạng này, mấu chốt là phải tìm được chính sác thông tin đăng ký ở khóa nào. Với 2 khóa HKLM và HKCU thì chỉ việc export key ra file.reg và merge chúng khi chạy portable soft là okie. Với khóa HKEY_USERS: Sau khi export, đổi tên HKEY_USERS thành HKEY_CURRENT_USER. Chú ý: Không phải trường hợp nào làm thế cũng có tác dụng Tips: File bat có thể được ứng dụng trong việc đăng ký các soft portable. Code của một file bat đơn giản để check việc đăng ký thông qua sự tồn tại của một file nào đó như sau. (Tôi vẫn dùng cách này khá hiệu quả ) Code: ;Giả sử như bạn muốn sử dụng file check.txt để check xem soft đã sử dụng lần nào chưa trên máy tính A. ;chép file check.txt vào thư mục Temp của Windows Copy [path]\check.txt c:\Windows\Temp ;Kiểm tra sự tồn tại của file checked.txt, nếu có (nghĩa là soft portable này đã sử dụng ít nhất 1 lần trên máy A) thực thi lệnh C, nếu không, thực thi lênh K. IF exist C:\Windows\System32\checked.txt ( Lệnh C ) else ( Lệnh K ) ; ;Lệnh C có thể là chuỗi lệnh (file bat khác) ;Hoặc đơn giản là thực thi chương trình và xóa file check.txt ;Lệnh K tương tự, có chức năng như sau ;- Sao chép file check.txt từ thư mục Temp vào thư mục System32 lấy tên là checked.txt ;- Chạy file đăng ký soft (file .reg hoặc file exe coded in AutoIT…) ;- Chạy chương trình chính. Trên đây là một mẫu đơn giản của một file .bat kiểm tra và đăng ký soft sau khi portablized. (lưu ý: sử dụng với máy có một User, với máy có nhiều user thì xóa file checked.txt trong system32 đi và chạy là oki. Biện pháp khác, tối ưu hơn đó là kiểm tra qua thư mục C:\Document and Settings\%User Name% ) 6. Sau khi đăng kí thành công, dùng WinRAR, 7-zip, AMS để đóng gói sản phẩm lại và up lên chỗ-nào-đó. 7. Nếu muốn chắc chắn hơn trước khi chia sẻ nó cho mọi người thì tốt nhất là mang ra ngoài hàng net hoặc nhờ một số người dùng thử bản portable của bạn (có lúc nào đó bạn quên không đóng DeepFreeze chẳng hạn ^^. Cái DF này cũng phiền lắm T.T). Time to distribute it!!! Chú ý: Tut này nhằm mục đích cuối cùng là tạo portable version trong 1 file thực thi duy nhất (single exe file) không dùng launcher, vì thế nó có thể hơi linh tinh một chút ^^. Chẳng hạn như các soft portable trên portableapps.com, chủ yếu họ dùng launcher, tớ thì không biết làm launcher (có thể sau này cũng biết) . Phần 2: Extra tools and how to start. Tôi đưa phần extra tools này vào vì nó hơi khác với phần trên. Các tools dưới đây chủ yếu để tạo launcher (hay loader). Nếu để ý các portable của Portableapps.com. được chính sác thông tin đăng ký ở khóa nào. Với 2 khóa HKLM và HKCU thì chỉ việc export key ra file.reg và merge chúng khi chạy portable soft là okie. Với khóa HKEY_USERS: Sau khi export, đổi. nấy mà ^^. Tut này không hướng dẫn bạn Portablize cái gì đâu nhé. hiiiii. . Tut finised!!! To be continued… (if you want more) Chicknsoup(UDS) Nào, tiếp tục phần 2: Một chút chung chung,