Khi bạn double click vào 1 khóa, RegEdit sẽ pop up. Click vào thư mục mẹ (trong trường hợp này là ‘inKline Global’ và right-click vào nó và chọn ‘Export’ và lưu nó vào cùng thư mục với các file khác (chỉ trong trường hợp bạn quên nơi để file và giờ phải tìm lại, cuối cùng, nó phải aswell). Chạy file registry vừa export ‘something.reg’ và thử chạy lại chương trình. Lặp lại những bước trên nếu chương trình vẫn báo lỗi về các thiết lập registry, và export và thử từng cái một, như vậy sẽ không có các khóa registry không cần thiết. Giờ đến phần dễ rồi (nếu bạn biết 1 chút về file batch(.bat)). Bạn cần viết 1 file batch, để tự động hóa các tiến trình, để nó thêm và xóa các khóa registry. Đầu tiên, bạn cần nhập nội dung tất cả các file .REG vào 1 file .REG (sao cho thuận tiện). Bạn không cần thêm những dòng như thế này: ‘Windows Registry Editor Version 5.00’. Bạn chỉ cần làm thế ở đầu mỗi file (để Windows biết phải làm gì với nó). Lưu file khi hoàn thành. Tiếp theo, bạn phải save cùng file đó với 1 cái tên khác, như uninstall.bat hoặc remove.bat. Bây giờ, xóa tất cả những gì ở dưới các dòng ‘[registry key]’, như vậy bạn sẽ được thế này: [HKEY_CURRENT_USER\Software\KPD-Team] Thay cho: [HKEY_CURRENT_USER\Software\KPD-Team] [HKEY_CURRENT_USER]\Software\KPD-Team\API-Guide] @="API-Guide, created by the The KPD-Team 1998-2002" "Language"="english37.lng" "VeryFirstStart"=dword:00000001 "FirstStart"="3.7" "Version"="3.7.854" Khi xong rồi, bạn phải thêm 1 ký tự “-“ (dấu gạch ngang) sau mỗi ký tự “[“ (dấu mở ngoặc vuông) rồi bạn sẽ kết thúc với: [-HKEY_CURRENT_USER\Software\KPD-Team] Bây giờ thì sẵn sàng cho file batch. Để cho thuận tiện, để tất cả các file trong 1 folder đặt tên là ‘Files’ và chạy Notepad. Tạo 1 file mới đặt tên là ‘Run.bat’. Trong file đó, điều duy nhất bạn cần bây giờ là đoạn mã sau (rất đơn giản): @echo off echo Portable API Guide. Made By DBZFYAM echo. echo Registering program. After closing the program, press any key to remove echo the program's traces. When you close this screen, some traces will be left echo on the current pc! REGEDIT /S Files\registry.reg echo. echo Starting program echo. Files\API-Guide.exe PAUSE echo. echo. echo Removing traces REGEDIT /S Files\remove.reg echo Finished removing traces! Press any key to close this window. echo. pause Bây giờ bạn hãy sửa những chỗ có màu thành tên file của bạn. Đừng quên thêm các dòng ‘PAUSE’, chúng tạm dừng các file batch cho đến khi chương trình portable bị đóng lại (để một số khóa registry bị lock, có nghĩa là chúng sẽ không thể bị xóa). Sau khi người dùng đóng chương trình và ấn 1 phím bất kỳ, file batch sẽ tiếp tục. Nó sẽ xóa các khóa registry đã thêm vào, và khi người dùng ấn 1 phím tiếp, nó sẽ đóng file batch. Đôi lúc mọi thứ sẽ phức tạp hơn 1 chút như với chương trình portable Feed Demon của tôi chẳng hạn, nó yêu cầu thư mục người dùng phải ở 1 thư mục chỉ định (trong trường hợp này là ‘C:\Documents and Settings\USER\Local Settings\Application Data\FeedDemon\v1’). Khi đó bạn phải viết 1 file batch để copy cả thư mục vào đĩa cứng và khi đóng chương trình, copy thư mục đó trở lại ổ cứng USB của bạn và xóa thư mục đó trên đĩa cứng. Dưới đây là 1 ví dụ (Tôi vừa thêm các chú thích vào file batch. Bạn cũng có thể làm được. Hãy gõ ‘:: ’ Và chú thích của bạn, nó sẽ bị phớt lờ khi file batch được thực thi): @echo off :: CONFIGURATION set PROGPATH=%CD%\FeedData set DATAFOLDER=%USERPROFILE%\Local Settings\Application data\FeedDemon\v1 set BACKUP=xcopy /s /c /d /e /h /i /r /k /y :: COPY FILES TO TEMPORARY FOLDER if exist "%DATAFOLDER%" RMDIR "%USERPROFILE%\Local Settings\Application Data\FeedDemon\" /S /Q %BACKUP% "%PROGPATH%" "%DATAFOLDER%" echo. echo. echo Starting program When finished, press SPACE to update the files. echo When you close this screen, the changed/updated feeds/settings will be lost! echo. echo. FeedDemon.exe PAUSE :: BACKUP FILES AND REMOVE TEMPORARY FILES echo. echo. %BACKUP% “%DATAFOLDER%” “%PROGPATH%” RMDIR “%USERPROFILE%”\LOCAL SETTINGS\APPLICATION DATA\FeedDemon\” /S /Q echo. echo. Echo Update Finished! Echo. PAUSE Là nó đấy . Bây giờ zip hoặc rar nó lại và Upload lên đâu đó. Phương pháp này đơn giản nhưng hiệu quả. Nhớ rằng nó không hiệu quả với tất cả các chương trình (nhất là các chương trình cần drivers như 1 số chương trình ghi CD và một số chương trình lớn như một số chương trình của hãng Adobe. Vài ví dụ cuối (.bat và .reg): http://rapidshare.de/files/36372876/Batch Files.zip . Hy vọng bạn sẽ học được điều gì đấy . Nếu có câu hỏi nào, hãy liên hệ với tôi. Hẹn gặp lại, DBZ FYAM http://www.naruto-uzumaki.com Bài này dành tặng cho bạn của tôi tại : http://www.projectw.org Tái bút: lệnh echo. trong file batch(.bat) có thể dùng để in ra 1 dòng trắng. Tái bút lại: Luôn luôn test chương trình Portable trên máy của bạn, trong VMware và nếu có thể là trên 1 máy khác trước khi phát hành nó. Dịch bởi freewarez (www.chongthamnhung.com ) [TUT] Portablizing! Chán quá ngồi viết tut chơi. Bài này dựa trên kinh nghiệm bản thân, có gì sai sót các bác góp ý cho. ^^ 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