# Notification.
Notification

Author Topic: เผยฟีเจอร์ใหม่ Windows 8 (ฮิ ฮิ ฮิ)  (Read 5136 times)

0 Members and 1 Guest are viewing this topic.

Offline ans58670

  • Webmaster
  • *****
  • Posts: 2040
    • View Profile


นำเอา Recovery Environment ของ Windows Developer Preview มาใช้...

ส่วนวิธีทำ...เร็วๆนี้ (ทำแบบเถื่อนมาก ขอบอกว่าต้องการให้มันคง METRO เอาไว้ให้เป็น Desktop Background แบบใช้ประโยชน์ได้) [emo02]

Offline ans58670

  • Webmaster
  • *****
  • Posts: 2040
    • View Profile
ช่วงนี้อาจไม่ค่อยได้เข้ามาสานต่อเรื่องนี้ได้อย่างต่อเนื่องเพราะงานค่อนข้างยุ่ง แต่ก็อย่างที่เกริ่นเอาไว้ว่า เป็นการทำแบบดิบเถื่อน เพราะต้องการนำมาใช้งานจริงๆ ไม่ได้มีเจตนาจะทำให้เป็น PE แบบเอนกประสงค์ แต่เห็น Webboard เหงาๆ ก็เลยหาอะไรมาให้เล่นแก้ขัด ซึ่งก็อาจจะพัฒนาปรับปรุงกันไปเอาเองตามความนิยมส่วนบุคคล

สิ่งที่จำเป็นต้องมีแน่ๆเพราะเป็นพื้นฐานขั้นต้น ได้แก่
    1. แผ่นติดตั้ง Windows Developer Preview เพราะเราต้องการนำเอา Windows Recovery Environment จากในนี้มาใช้
    2. BSExplorer 2 เพื่อให้มี Taskbar ปรากฏขึ้นมาใช้ร่วมกับ METRO (คือให้มี Taskbar บน METRO ของ Windows Recovery Environment ซึ่งจะทำให้ดูเหมือนว่ามี METRO เป็น Desktop Background) และใช้ตั้งค่า Screen Resolution
    3. Explorer++ เอาไว้ใช้งานแทน "My Computer"
    4. โปรแกรมแบบ Portable ที่ต้องการใช้ ในที่นี้จะเอา Hiren's Boot v.13 มาใส่ก็แล้วกัน (หลังจาก Version 13 มาก็มีแต่เอาไว้เก็บ ไม่ได้มีเอาไว้ใช้เลย) เพราะจะได้นำไปใช้งานได้ค่อนข้างหลากหลาย

ขั้นตอนที่ 1...เอา Windows Recovery Environment ออกมาจาก Windows Developer Preview...

สมมุติว่าใส่แผ่นติดตั้งหรือ Mount Image เป็น Drive T: ให้สร้าง Folder เปล่าขึ้นมาชื่อ Mount อยู่ใน Drive C: จะได้เป็น C:\Mount

เราจำเป็นต้องเอา Windows Recovery Environment หรือ WinRE ซึ่งมันอยู่ใน Install.wim ของ Windows Development Preview ดังนั้นให้เข้าไปใน
    T:\Sources\

แล้วให้ Copy เอา Install.wim ออกมาไว้ที่ C:\ (เอาไว้ที่อื่นก็ได้ แต่ตัวอย่างเล่นง่ายไว้ก่อน...ฮิ ฮิ ฮิ) จากนั้นให้เปิด Command Prompt แล้วพิมพ์
    DISM /Mount-Wim /WimFile:C:\Install.wim /Index:1 /MountDir:C:\Mount
    (Mount เอา Index ที่ 1 ของ Install.wim)

ต่อมาให้เข้าไปใน
    C:\Mount\Windows\System32\Recovery

เราจะเห็น WinRE อยู่ในนี้ ให้ Copy เอาออกมาไว้ที่ Drive D: (ที่อื่นก็ได้เหมือนกัน แต่ขี้เกียจอีกนั่นแหละ) เพียงเท่านี้เราก็จะได้ WinRE ของ Windows Developer Preview มาไว้ในกำมือเรา ฮ่า ฮ่า ฮ่า

ต่อมาเราก็คืนค่าให้ Install.wim โดยอันดับแรกต้องปิด C:\Mount เสียก่อน ไม่เช่นนั้นจะยุ่งในภายหลัง เสร็จแล้วใน Command Prompt ให้พิมพ์คำสั่ง
    DISM /Unmount-Wim /MountDir:C:\Mount /Discard
    (Unmount คืนค่าให้ Install.wim โดยให้ Install.wim คงค่าเดิมในตัวของมันเอาไว้)

ทีนี้ถ้าเราเอาแค่ WinRE ไปใช้ Boot ก็จะได้ออกมาเพียงแค่ประมาณนี้...







เป็นรายการอาหารเรียกน้ำย่อยก่อน...ต่อไปเราค่อยมาตั้งค่าพื้นฐานให้ WinRE กัน [emo02]

Offline ans58670

  • Webmaster
  • *****
  • Posts: 2040
    • View Profile
ขั้นตอนที่ 2...ตั้งค่าพื้นฐานให้ Windows Recovery Environment...

ต้องย่องมาตอนดึกๆแบบนี้แหละครับช่วงนี้ ตอนนี้เราจะมาตั้งค่าพื้นฐานให้ WinRE กัน ซึ่งได้แก่ค่าทั่วไปใน International ซึ่งคงต้องขอทบทวนกันนิดหนึ่งดังนี้
   1. Mount Folder ของเรายังอยู่ที่ C:\Mount
   2. เราเอา WinRE ไปไว้ที่ D:\

เราจะต้อง Mount เอา WinRE เพื่อที่จะนำไปใช้งานแบบ Offline โดยเปิด Command Prompt แล้วพิมพ์คำสั่ง
   DISM /Mount-Wim /WimFile:D:\WinRE.wim /Index:1 /MountDir:C:\Mount



จากนั้นเราเข้าไปดูกันซิว่าค่า International นั้นดั้งเดิมเป็นอย่างไร โดยการพิมพ์คำสั่ง
   DISM /Image:C:\Mount /Get-Intl



จะเห็นว่าค่าของมันเป็นอเมริกันเต็มตัว ดังนั้นเวลาเราใช้ WinRE ค่าต่างๆจะแสดงแบบอเมริกัน รวมทั้งแสดงเวลาของระบบเป็นเวลาของอเมริกาด้วย เราต้องเปลี่ยนค่าบางอย่างให้มันเป็นไทยเสียก่อน ตัวแรกคือ System Locale เผื่อเราใช้ Non-Unicode Program โดยพิมพ์คำสั่ง
   DISM /Image:C:\Mount /Set-SysLocale:th-TH



ค่าต่อไปคือ Default Time Zone ไม่อย่างนั้นมันจะแสดงเป็นเวลาของอเมริกา ให้ใช้คำสั่ง
   DISM /Image:C:\Mount /Set-TimeZone:"SE Asia Standard Time"



ลำดับต่อไปได้แก่ User Locale ให้เป็นไทยแบบไม่ต้องใช้ค่า GEOID โดยใช้คำสั่ง
   DISM /Image:C:\Mount /Set-UserLocale:th-TH



แค่นี้พอแล้ว เราก็ลองตรวจเช็คผลงานของเรา



หากจะใช้ Internet หรือ Graphic Card แม้แต่ Audio เราก็เพิ่ม Drivers เข้าไปได้ แต่อย่างที่บอกไว้แล้วว่า ทำไปใช้งานจริงๆ จึงไม่ได้ใส่พวกนี้เข้าไป ดังนั้นจึง Unmount และ Commit Wim แต่เพียงเท่านี้ก่อนด้วยคำสั่ง
   DISM /Unmount-Wim /MountDir:C:\Mount /Commit



ต้องขออภัยที่ขยับให้ได้ทีละหน่อยสองหน่อย แต่ที่ทำเป็นเรื่องพื้นๆที่ผู้สนใจสามารถนำไปพัฒนาต่อเองได้ ซึ่งคราวหน้าคงจะมาว่ากันต่อเรื่องการใส่ BSExplorer 2 ให้กับ WinRE นี้ [emo02]

Offline microsoft

  • Administrator
  • *****
  • Posts: 8651
    • View Profile
    • VarietyPC.Net
ขอบพระคุณมากครับ ตอนนี้กำลังเฝ้าติดตามอย่างละเอียดเลย

 [emo34]
การให้ที่ยิ่งใหญ่ คือ... การให้ต่อไป.... ไม่สิ้นสุด

Offline ans58670

  • Webmaster
  • *****
  • Posts: 2040
    • View Profile
ขั้นตอนที่ 3...เรียกใช้ BSExplorer2 เพื่อสร้าง Taskbar ตอนที่ 1...

Mount WinRE เพื่อนำ BSExplorer2 ไปใส่ ด้วยคำสั่งใน Command Prompt
    DISM /Mount-Wim /WimFile:D:\WinRE.wim /Index:1 /MountDir:C:\Mount


ใน WinRE ของ Windows Development Preview มีขนาดของ ScratchSpcae เพียงแค่ 32MB เท่านั้น


ดังนั้น เราจึงควรเพิ่มขนาดของมันเสียก่อน เพราะเราไม่รู้ว่าโปรแกรมต่างๆที่เราจะใส่เข้าไปให้นั้น เมื่อเปิดใช้งาน จะต้องใช้พื้นที่หรือ Temp ขนาดเท่าใด ดังนั้นจะตั้งค่าให้เป็น 512MB ก็แล้วกัน โดยใน Command Prompt ให้พิมพ์คำสั่ง
   DISM /Image:C:\Mount /Set-ScratchSpace:512


ที่นี้เราก็แตก BSExplorer2 ที่ Download มา (ให้ Link ไปแล้ว ถ้าหาไม่เจอให้ไปดูในกระทู้แรกดีๆ) จะได้ 10 Files ให้เอาทั้งหมดไปใส่ไว้ใน
   C:\Mount\Windows




จากนั้นเราก็ต้องเข้าไปแก้ให้เวลา Boot เจ้า WinRE แล้วให้เปิด BSExplorer ซึ่งโดยปกติแล้วเมื่อเข้า WinRE จะเรียกใช้ File ซึ่งอยู่ใน %SystemDrive%\System32\ ตามลำดับดังนี้
   1. WinPEShl.ini
   2. Startnet.cmd

ลองเปิดดูซิว่าค่าดั้งเดิมของแต่ละ file เป็นอย่างไร? อยากให้ศึกษามันดูให้ดี เพราะมันเป็นเหตุเป็นผลของมันอยู่ (ไม่ชอบให้ท่องจำ แต่อยากให้เข้าใจ จะได้เอาไปพัฒนาต่อยอดกันได้เอง เพราะต่อไปหากตัวเองต้องกลับไปอยู่กับไอ้ห้อยและไอ้โหนแล้วจะไม่มีใครมาคอยบอก)

1. WinPEShl.ini จะมีค่าเป็น
       [LaunchApp]
       AppPath=X:\sources\recovery\recenv.exe



   ซึ่งหมายถึงเมื่อ Boot เข้า WinRE แล้วจะไปเปิด Application ตามข้างบนนั้น นั่นก็คือ RecEnv.exe (Recovery Environment) ซึ่งก็คือไอ้โปรแกรมจอสีฟ้าๆอย่างที่เห็นในกระทู้ที่ 2 นั่นแหละ ดังนั้นเราจะต้องแก้คำสั่งในนี้ แต่ทั้งนี้ทั้งนั้น เราจะต้องมาทำความเข้าใจพฤติกรรมของคำสั่งในนี้กันก่อน

   ใน WinPEShl.ini จะสามารแบ่งออกได้เป็น 2 Section
   ก) LaunchApp : ซึ่งได้แก่ Section ที่เราเห็นอยู่ในตัว Original โดยมีรูปแบบคำสั่งเป็น
      [LaunchApp]
      AppPath={Full path และ File ที่ต้องการเรียกใช้}

      ซึ่งจะมีได้เพียงแค่คำสั่งเดียวเท่านั้น
   ข) LaunchApps : ซึ่งได้แก่ Section ที่สามารถใส่คำสั่งได้หลายคำสั่ง โดยมีรูปแบบคำสั่งเป็น
      [LaunchApps]
      {Full path และ File ที่ 1 ซึ่งต้องการเรียกใช้}, -Option1 -Option2
      {Full path และ File ที่ 2 ซึ่งต้องการเรียกใช้}, -Option1 -Option2


   ซึ่งทั้งนี้ ใน WinRE ของ Windows DP นั้นไม่สามารถใช้ [LaunchApp] และ [LaunchApps] ร่วมกันได้ (ในรุ่นก่อนหน้านี้สามารถให้มีทั้ง 2 Section ใน WinPEApp.ini ได้) โดย
   "หากใช้ [LaunchApps] เพื่อเรียกใช้มากกว่า 1 File แล้ว คำสั่งบรรทัดที่ 2 จะไม่เริ่มทำงานจนกว่าคำสั่งบรรทัดที่ 1 จะจบลงหรือถูกปิด"

   ทดลองดูได้โดยลบ [LaunchApp] และคำสั่งทั้งหมด จากนั้นลองใส่คำสั่งดังนี้
แบบที่ 1
   [LaunchApps]
   X:\sources\recovery\recenv.exe

   (เพื่อเรียก Recovery Environment จอสีฟ้า)
   X:\Windows\explorer.exe
   (เพื่อเรียก Taskbar ของ BSExplorer)

   แบบนี้จะเรียกออกมาได้แต่ Recovery Environment หากจะเปิดใช้ BSExplorer จะต้องเรียกใช้เอาเองจาก Command Prompt

แบบที่ 2
   [LaunchApps]
   X:\Windows\explorer.exe

   (เพื่อเรียก Taskbar ของ BSExplorer)
   X:\sources\recovery\recenv.exe
   (เพื่อเรียก Recovery Environment จอสีฟ้า)

   แบบนี้จะได้แต่ Taskbar ของ BSExplorer ซึ่งจะมี Mount Pointer (Cursor) แต่ว่ามองไม่เห็น และได้จอมืดๆดำๆของ Computer ไปเป็น Background ซึ่งต้องเรียก RecEnv.exe มาใช้เอาเอง หรือหาก "Exit" ออกจาก BSExplorer แล้ว RecEnv.exe จึงจะปรากฏขึ้นมาพร้อม Cursor แต่ Taskbar ก็จะไม่มี...เฮ้อ






ดังนี้แล้ว คราวหน้าเราจะมาว่ากันต่อถึงวิธีการเปิดใช้ Cursor ใน WinRE ของ Windows DP [emo02]

Offline ans58670

  • Webmaster
  • *****
  • Posts: 2040
    • View Profile
ขั้นตอนที่ 4...เรียกใช้ BSExplorer2 เพื่อสร้าง Taskbar ตอนที่ 2...

ใน WinRE ของ Windows DP นั้นจะปิดสิ่งสำคัญเอาไว้ 2 อย่าง
   1. Desktop Background
   2. Cursor

สำหรับ Desktop Background นั้น เนื่องจากไม่คิดจะใช้ เพราะจะเอาโปรแกรม Recovery Environment มาทำเป็น Background จึงไม่ได้ไปแก้ไขอะไรมัน (ซึ่งค่อนข้างยุ่งเพราะต้องลบและเพิ่มไฟล์  กับต้องไปแก้ไข Registry อีก 2-3 รายการ)

แต่ Cursor นี่จำเป็นต้องใช้จึงต้องไปยุ่งกับมันโดยการแก้ไข Registry ของ WinRE ที่ปิดมันเอาไว้ โดยเราต้อง Mount เอา WinRE มาก่อน จากนั้น
   1. Registry Editor
   2. เลือก HKEY_LOCAL_MACHINE


   3. Click ที่ File แล้วเลือก "Load Hive..."


   4. จะมี Browse Windows ขึ้นมา ให้เลือก
      C:\Mount\Windows\System32\config\SOFTWARE


   5. ตั้งชื่อตามใจชอบ ในที่นี้ตั้งชื่อมันว่า "8RESoft" ซึ่งย่อมาจาก "Windows 8 Recovery Environment Software Registry Hive" (จะเห็นว่าไม่ได้ตั้งชื่อมั่วๆนะจ๊ะ)


   6. ไปหา DWord Value ชื่อ
      EnableCursorSuppression จาก
      HKEY_LOCAL_MACHINE\8RESoft\Microsoft\Windows\CurrentVersion\Policies\System

      ซึ่งตอนนี้ค่าของมันเป็น "1" แปลว่า "เปิดใช้" หมายถึง "ไม่ให้มี Cursor"


   7. แก้ค่าให้มันเป็น "0" แปลว่า "ปิด" หมายถึง "ให้ใช้ Cursor"


   8. จากนั้นต้องคืนค่า Registry ที่ได้เปลี่ยนแปลงโดยเลือกที่ Key "8RESoft"


      แล้วเลือก "File" ต่อด้วย "Unload Hive..."


จากนั้นก็ปิด Registry Edit แล้ว Unmount Wim จากใน Command Prompt ด้วยคำสั่ง
   DISM /Unmount-Wim /MountDir:C:\Mount /Commit

ลองใช้คำสั่งใน WinPEShl.ini แบบที่ 2 (Boot เข้า BSExplorer) ก็จะพบว่ามันมี Cursor ให้เราได้ใช้แล้ว


ถึงตอนนี้ ใครจะเอาไปทำอะไรต่อก็เชิญ ส่วนตอนหน้า เราจะมาว่ากันต่อเรื่องอื่นๆบ้าง [emo02]


 

Sitemap 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27