Tạo bản Windows Vista PE chạy trên CDROM và USB
Microsoft Windows Pre-installation Environment
(Windows PE) 2.0 được Microsoft cung cấp kèm trên
đĩa cài đặt Windows Vista và chỉ có phần nhân
(kernel) của Windows Vista, với mục đích chính là
tạo môi trường khởi động máy (thay thế môi trường
DOS) trong chế độ đồ họa 32bit để tiến hành các
công việc như cài đặt Windows Vista, sửa lỗi và phục
hồi máy tính. Tuy nhiên, theo cấu hình mặc định
Vista PE rất khó sử dụng vì sau khi khởi động chỉ có cửa sổ tương tự
DOS để chạy vài chương trình dòng lịnh như: Bootsect, DiskPart,
Drvload, Oscdimg, PEImg, Wpeinit, ImageX.
Khi đóng cửa sổ này thì Windows PE sẽ tự động thoát.
Màn hình Windows PE 2.0 sau khi khởi động
Nếu muốn tìm hiểu Windows PE 2.0, bạn hãy tải bộ Windows
Automated Installation Kit (WAIK) tại địa chỉ
/>d-15f3-4284-9123-679830d629f2&DisplayLang=en hay
sau đó dùng WinISO giải nén file
vista_6000.16386.061101-2205-LRMAIK_EN.img rồi cài đặt MSXML
6.0 và Windows IAK.
WAIK sẽ giúp bạn tự tạo phiên bản Windows Vista PE đơn giản có thể
khởi động từ đĩa cứng/ CD/ DVD/ USB flash drive (UFD)/ Remote
Installation Services (RIS) server.
Để giúp Windows PE (PE 1.x với nhân của Windows XP/2003 và PE
2.0) dễ sử dụng hơn và tận dụng được ưu thế của môi trường này như
giao diện người dùng đồ họa, hỗ trợ mạng, thiết bị Plug and Play,
AT/NTFS/CDFS, có đầy đủ driver mới nhất của Windows Vista... Một
số lập trình viên trên thế giới đã viết ra chương trình miễn phí tên
WinBuilder có khả năng giúp mọi người tạo bộ Windows PE với giao
diện Desktop tương tự Windows phiên bản đầy đủ và có thể bổ sung
thêm ứng dụng tùy ý vào Windows PE. Bài viết này sẽ hướng dẫn các
bạn dùng WinBuilder để tạo bản Vista PE trên đĩa CDROM và USB
Flash driver.
Yêu cầu cần có khi tạo Vista PE
- Bộ cài đặt Windows Vista trên đĩa DVD hay đĩa cứng.
- Bộ VistaPE mẫu (bao gồm WinBuilder 052) tải tại địa chỉ
/>- Các ứng dụng miễn phí dạng portable (chạy không cần cài đặt) tải
tại các địa chỉ: /> /> /> />Các bước thực hiện
1. Giải nén file vistape005_en.rar để được thư mục Vistape có 2 thư
mục con Projects, Tools và 2 file WinBuilder.exe, WinBuilder.ini.
2. Chép bản Total Commander Portable vào thư mục
Vistape\Projects\VistaPE\App\File Tools\TC\.
3. Dùng Notepad mở file
Vistape\Projects\VistaPE\App\System\wul.script, tìm 2 dòng có đoạn
ký tự %LinkDir%\Pserv2.exe, sửa thành %LinkDir%\wul.exe (lỗi sai
tên file).
4. Dùng Notepad mở file
Vistape\Projects\VistaPE\App\System\BSExplorer\bs_start.ini (nội
dung là các dòng lịnh tạo menu Start), tìm 6 dòng có đoạn ký tự
\system32\system32\ sửa thành \system32\ (lỗi dư chữ \system32
trong file gốc).
5. Chạy file Vistape\WinBuilder.exe.
- Trong bảng Script, bạn phải đánh dấu chọn các mục: Make
directories, Copy files, Strip, Shell & Config, Fedora Inverse Cursors,
Common DLL, WSH Support, BS Explorer, Pserv, PENetCfg, Finalizing
> Chọn thêm mục RAMDisk và Create ISO nếu muốn tạo Vista PE trên
đĩa CD (bỏ chọn khi tạo trên USB Flash drive) > Nếu muốn chạy các
ứng dụng trong Vista PE thì có thể chọn thêm Total Commander Plus,
Advanced PCI Info Utility, sala's Password Renew, XP Key Readers >
Trong mục Total Commander Plus, bạn đánh dấu chọn mục Run from
ram nếu muốn chép toàn bộ thư mục TC vào RAM mỗi khi chạy Vista
PE > Trong mục Finalizing, bạn có thể chọn Pack Program.wim nếu
muốn nạp toàn bộ ứng dụng vào RAM (đòi hỏi bạn phải chọn mục
RAMDisk và VistaPE Wim Mount Plugin).
- Trong bảng Paths, bạn chỉ định đường dẫn đến bộ cài đặt Windows
Vista để WinBuilder sao chép các file nguồn.
- Bấm nút Run để tiến hành tạo bộ nguồn Vista PE trong thư mục
Vistape\Target\ và file Vistape\ISO\vista.iso. Nếu bạn không chọn
mục Pack Program.wim thì trong thư mục Vistape\Target\ sẽ có thư
mục Programs chứa tất cả thư mục của các ứng dụng đã chọn. Nếu
bạn chọn mục Pack Program.wim thì trong thư mục Vistape\Target\
sẽ có file Program.wim thay cho thư mục Programs.
6. Bạn dùng chương trình ghi đĩa để ghi file vista.iso lên CD và có thể
khởi động bằng đĩa này.
Màn hình của bản Vista PE tạo bằng WinBuilder
7. Làm cho USB Flash drive có thể khởi động theo định dạng boot của
Vista (khác với các hệ điều hành trước) bằng chương trình Diskpart
(của Windows Vista) để phân vùng và định dạng ổ đĩa USB như sau:
- Chạy Windows Vista hay Windows PE 2.0 > trong cửa sổ dòng lịnh
(CMD), bạn lần lượt gõ các dòng lịnh:
diskpart
list disk
select disk 1
clean
create partition primary size=
select partition 1
active
format fs=fat32
assign
exit
Chú ý: Disk 1 là ổ USB trong thí dụ này khi xem bằng lịnh “list disk”.
Nếu chỉ chia 1 phân vùng thì bỏ thông số “size=” trong dòng lịnh.
8. Chép tất cả file và thư mục con trong Vistape\Target\ lên USB Flash
drive (bao gồm 3 thư mục: Boot, Programs, Sources và 2 file
Bootmgr, Vistape.cd).
Chú ý: Nếu bạn chạy Vista PE trên USB thì trong WinBuilder đừng
chọn Run from ram và Pack Program.wim để tiết kiệm bộ nhớ.
9. Chép các chương trình Portable vào ổ USB để chạy sau khi khởi
động.
Trong bài sau, chúng tôi sẽ hướng dẫn bạn cách tùy biến Vista PE
theo ý mình như: thay đổi menu Start, bổ sung ứng dụng vào menu
Start, đóng gói ứng dụng để đưa vào USB...
Việc sử dụng Windows PE 2.0 không vi phạm bản quyền của Microsoft
nhưng nó có những hạn chế sau:
- Máy tính chạy Windows PE phải có tối thiểu 256MB RAM. - Không
thể truy cập máy chạy Windows PE từ máy tính khác trong mạng. Chỉ hỗ trợ giao thức TCP/IP. – Không hỗ trợ .NET Framework. – Tự
khởi động lại sau 72 giờ chạy liên tục (PE 1.x là 24 giờ). – Không hỗ
trợ Wireless 802.1x. – Chỉ có phần nhân mà không có các ứng dụng
cơ bản của Windows.
Tùy biến giao diện và bổ sung ứng dụng vào Windows Vista PE
Bài viết trên e-CHÍP 319 tuần trước đã hướng dẫn bạn dùng chương
trình WinBuilder tạo gói phần mềm Vista PE đơn giản để chạy trên
CDROM và USB Flash drive. Bài này sẽ hướng dẫn các bạn cách tùy
biến giao diện và bổ sung ứng dụng vào Vista PE.
Nguyên lý làm việc của WinBuilder
Cửa sổ WinBuilder là lớp vỏ giao tiếp với người dùng, giúp người dùng
nhanh chóng chọn lựa và xác lập thông số cho các ứng dụng cần
đóng gói chung với phần nhân của Windows Vista để tạo thành gói
phần mềm Vista PE hoàn chỉnh. Phần linh hồn của WinBuilder, quyết
định việc WinBuilder phải làm gì chính là những file text có tên mở
rộng .script và chủ yếu chúng ta sẽ làm việc với các file này.
Khi bạn tải file vistape005_en.rar về giải nén sẽ được thư mục
Vistape có 2 thư mục con Projects, Tools và 2 file WinBuilder.exe,
WinBuilder.ini.
Mở thư mục Projects\VistaPE\ sẽ có các thư mục quan trọng như sau:
- App: Nơi tập trung các ứng dụng, mỗi thư mục con có thể chứa 1
ứng dụng hay nhiều thư mục của các ứng dụng cùng loại cho dễ quản
lý. Mỗi ứng dụng sẽ có 1 file script chỉ định cho WinBuilder cách đóng
gói ứng dụng này và cách bổ sung shortcut của ứng dụng vào menu
Start, Desktop hay Quick Launch của Vista PE.
Trong thư mục này còn có thư mục System/BSExplorer, lưu ứng dụng
được dùng là giao diện mặc định (Shell) của Vista PE. Chúng ta sẽ
làm việc với các file .ini trong thư mục BSExplorer để tùy biến
desktop và menu Start.
- Build: Gồm thư mục System32 và các file script quy định tiến trình
đóng gói của WinBuilder.
- Raznoe: Gồm 2 thư mục Cursors và Dll và 2 file script quy định việc
đóng gói các file dll bổ sung cũng như đăng ký thông số vào Registry
của Vista PE.
Chú ý: Chúng ta sửa nội dung các file script, ini, inf bằng Notepad
của Windows.
Xác lập giao diện cơ bản
Do trong bộ Vista PE dùng BSExplorer làm shell nên file
Vistape\Projects\VistaPE\App\System\BSExplorer\bs_start.ini sẽ xác
định các mục cơ bản trong menu Start. File bs_desktop.ini xác lập
biểu tượng xuất hiện trên desktop. File bs_qlaunch.ini xác lập biểu
tượng xuất hiện trong thanh công cụ Quick Launch. File
bs_explorer.ini quy định cách hiển thị của desktop (màu nền, dòng
thông báo bản quyền, icon, thanh công cụ...). Bạn tham khảo file có
sẵn để biết cách viết lệnh và có thể dùng WinBuilder thêm các mục
mới vào các file ini này khi đóng gói, thông qua các file script của ứng
dụng bổ sung.
Bổ sung ứng dụng vào Vista PE
Bạn có thể bổ sung ứng dụng vào Vista PE bằng cách đơn giản là
chép các phần mềm dạng portable vào đĩa Vista PE rồi chạy chúng
sau khi khởi động Vista PE giống như chạy trong Windows bình
thường. Tuy nhiên, bạn cần chú ý là do Vista PE không có đầy đủ các
file thư viện động (DLL) như Windows thường nên bạn cần bổ sung
các file này vào Vista PE vì nếu thiếu thì vài ứng dụng portable không
chạy được.
Cách chuyên nghiệp hơn là dùng Winbuilder đóng gói các phần mềm
dạng portable vào Vista PE và tạo shortcut cho chúng trong menu
Start, trong desktop hay Quick Launch như sau:
1. Chép các phần mềm portable vào thư mục
Vistape\Projects\VistaPE\App\, mỗi phần mềm nên có 1 thư mục con.
Thí dụ: D:\winpe\vistape\Projects\VistaPE\App\Office\UniKey4\ là
thư mục cho chương trình Unikey
2. Trong thư mục D:\winpe\vistape\Projects\VistaPE\App\Office\, bạn
tạo file Unikey.script với nội dung tương tự như các file script của ứng
dụng sẵn có. Thí dụ dưới đây chỉ nêu ra những dòng mã cần thay đổi
cho phù hợp với từng ứng dụng:
[Main]
Title=UniKey v4 (tên hiển thị trong danh sách chọn thành phần đóng
gói của WinBuilder)
Description= (dòng ghi chú sẽ xuất hiện khi chọn ứng dụng trong
danh sách)
Selected=True (True: chọn mặc định trong danh sách liệt kê, False:
không chọn)
[Process]
Echo,Processing UniKey...
SET,"%DestDir%","Programs\UniKey4" (ghi chính xác tên thư mục
của ứng dụng)
SET,"%LinkDir%","y:\UniKey4"
DirCopy,"%ScriptDir%\UniKey4\*.*","%VistaTemp%\%DestDir%"
[BSLinks]
(1. Tạo biểu tượng để kích hoạt chương trình trên Desktop, có thể
xóa nếu không cần)
TXTAddLine,%BSD%,"<-ItemBegin->","Append"
TXTAddLine,%BSD%," ItemX=80","Append" (vị trí theo chiều dọc
tính từ cạnh trên)
TXTAddLine,%BSD%," ItemY=80","Append" (vị trí theo chiều ngang
tính từ cạnh trái)
TXTAddLine,%BSD%," Caption=UniKey","Append" (tên hiển thị bên
dưới biểu tượng)
TXTAddLine,%BSD%," ExeName=%LinkDir%\UniKey.exe","Append"
(ghi chính xác tên file chạy)
TXTAddLine,%BSD%," IconName=%LinkDir%\UniKey.exe","Append"
TXTAddLine,%BSD%," ExeDir=%LinkDir%","Append"
TXTAddLine,%BSD%," CmdParam=","Append" (thông số của chương
trình, nếu có)
TXTAddLine,%BSD%," ShowState=NORMAL","Append"
TXTAddLine,%BSD%,"<-ItemEnd->","Append"
(2. Tạo biểu tượng để kích hoạt chương trình trong thanh Quick
Launch, có thể xóa)
Giống như đoạn mã 1 nhưng đổi biến %BSD% thành %BSQ% và bỏ
2 dòng ItemX, ItemY
(3. Tạo biểu tượng để kích hoạt chương trình trong nhóm Office tools
của menu Start)
Giống như đoạn mã 2 nhưng đổi biến %BSQ% thành %BSS% và
thêm 3 dòng dưới đây
TXTAddLine,%BSS%," ShowInAutorun=YES","Append"
TXTAddLine,%BSS%," EnableInAutorun=YES","Append"
TXTAddLine,%BSS%," ParentItem=Office","Append" (ghi chính xác
MenuID của nhóm chương trình)
Chú ý:
- Các từ trong 2 dấu () là chú thích, không được ghi vào nội dung.
- Biến %BSD% trong đoạn code tạo biểu tượng trên desktop chưa
được quy định trong bộ WinBuilder gốc, bạn phải mở file
Vistape\Projects\VistaPE\script.project > thêm vào phần [Variables]
dòng %BSD%="%VistaTemp%\Program
Files\BSExplorer\bs_desktop.ini".
- Bạn tham khảo file Vistape\Projects\VistaPE\App\File
Tools\totalcmd.script để biết cách tạo tùy chọn chạy ứng dụng trong
RAM hay chạy trên đĩa.
3. Chạy Winbuilder, bạn sẽ thấy trong danh sách đóng gói có tên và
chú thích của ứng dụng mới bổ sung.
Bổ sung file thư viện động (DLL) vào Vista PE
- Để bổ sung các file thư viện động (DLL) cần thiết cho các chương
trình portable, bạn hãy chép chúng (bạn nên chép các file avifil32.dll,
ddraw.dll, glu32.dll, msacm32.dll, Mscomctl.ocx, msvfw32.dll,
oledlg.dll, opengl32.dll từ thư mục System32 của Windows XP) vào
thư mục Vistape\Projects\VistaPE\Raznoe\dll\.
- Bạn mở file Vistape\Projects\VistaPE\Raznoe\dll.script xóa 2 dòng
FileCopy,"%IWTemp%\Windows\System32\oledlg.dll","%VistaTemp
%\Windows\System32",
FileCopy,"%IWTemp%\Windows\System32\enus\oledlg.dll.mui","%VistaTemp%\Windows\System32\en-us" (2
dòng này chỉ dùng cho bản XP PE).
Màn hình Vista PE sau khi bổ sung ứng dụng Unikey
Các địa chỉ cần biết
- Tải Vista PE và ứng dụng bổ sung
BS explorer 1.6
( Bản
Vista PE + ứng dụng hỗ trợ tiếng Anh và Nga ( Bản Vista PE có ít ứng dụng
( Ngoài ra, bạn
có thể tải các bản XP PE về để tách lấy những ứng dụng bổ sung vào
Vista PE theo hướng dẫn trong bài này: PEBuilder
( UBCD
for Win ( Sherpya
Windows PE
( />- Website, Forum tham khảo thông tin về Vista PE
/> />