บทความที่มีแท็ก “Windows”
บทความ 41 รายการที่มีแท็ก “Windows” เรียงจากใหม่ไปเก่า
-
เชิงลึกของการจำลองเสมือนบน Windows (ตอนที่ 3) — เครื่องเสมือนที่บูตในไม่กี่วินาที: ทำไม WSL2, Windows Sandbox และคอนเทนเนอร์จึงเบา
ทำไม WSL2 และ Windows Sandbox จึงเริ่มในไม่กี่วินาทีและรู้สึกเบา? บทความนี้อธิบายกลไก ตั้งแต่ dynamic base image และ direct map ไปจนถึงการจัดสรรหน่วยความจำแบ...
-
เชิงลึกของการจำลองเสมือนบน Windows (ตอนที่ 2) — หน่วยความจำที่แม้เคอร์เนลก็มองไม่เห็น: กลไกของ VBS, HVCI และ Credential Guard
เมื่อติดตั้งใหม่บนฮาร์ดแวร์ที่รองรับ VBS จะเปิดตามค่าเริ่มต้น และใช้ hypervisor กับ SLAT สร้างการแยกที่แข็งกว่าเคอร์เนล บทความนี้อธิบายโครงสร้างของ VTL, Secu...
-
เชิงลึกของการจำลองเสมือนบน Windows (ตอนที่ 1) — Windows ของคุณรันอยู่ที่ไหนจริง ๆ? Hypervisor และพาร์ติชัน
เมื่อเปิด Hyper-V แล้ว Windows ฝั่งโฮสต์เองก็รันบน hypervisor ในฐานะ root partition บทความนี้อธิบายรากฐานของการจำลองเสมือนผ่านบทบาทของ VT-x, SLAT และ VMBus
-
Win32 Thread Pool API — คอนเคอร์เรนซีโดยไม่สร้างเธรดเอง ด้วย CreateThreadpoolWork
โค้ดเนทีฟของคุณกระจายการเรียก CreateThread ไปทั่วหรือไม่ บทความนี้อธิบาย Win32 thread pool API ที่ออกแบบใหม่ใน Vista — ออบเจ็กต์สี่ชนิด work, timer, wait และ...
-
Named Pipe ในทางปฏิบัติ — IPC มาตรฐานของ Windows ตั้งแต่การออกแบบถึงความปลอดภัย
คู่มือเชิงปฏิบัติเรื่อง named pipe ซึ่งเป็นการสื่อสารระหว่างโปรเซสมาตรฐานของ Windows บทความนี้จัดระเบียบจากแหล่งปฐมภูมิ ทั้งการเลือกระหว่างโหมดไบต์กับโหมดข้อ...
-
แอปที่พังเมื่อรีซูมจากสลีป — อีเวนต์พลังงานของ Windows ทำงานอย่างไร และสร้างแอปธุรกิจที่รอดได้อย่างไร
เปิดแล็ปท็อปแล้วการเชื่อมต่อของแอปธุรกิจตาย — สาเหตุคือการออกแบบที่ไม่เคยคิดถึงสลีป บทความนี้ครอบคลุมลำดับการแจ้ง WM_POWERBROADCAST พฤติกรรม Modern Standby ก...
-
DllMain และ Loader Lock — เหตุผลจริงที่ถูกบอกให้ "อย่าทำอะไรในการเริ่มต้น DLL"
ทำไมคุณต้องไม่เรียก LoadLibrary หรือซิงโครไนซ์กับเธรดอื่นจาก DllMain บทความนี้อธิบายจากแหล่งปฐมภูมิว่า loader lock ทำให้การแจ้ง DLL ทุกครั้งเป็นอนุกรม สถานกา...
-
"ไม่ตอบสนอง" คืออะไรจริง ๆ — Windows ตัดสินว่าแอปแฮงอย่างไร และออกแบบอย่างไรให้ไม่แฮง
"ไม่ตอบสนอง" ของ Windows คือกลไกที่ OS ตัดสินว่าหน้าต่างไม่ได้ดึงข้อความเป็นเวลา 5 วินาทีแล้วแทนที่ด้วยหน้าต่างโกสต์ บทความนี้ครอบคลุมภายในของการตัดสิน สาเหต...
-
Spurious Wakeup — ทำไม condition variable จึงตื่น "โดยไม่ถูกแจ้ง" และวิธีรออย่างถูกต้องบน Windows
การรอของ condition variable สามารถกลับได้แม้ไม่มีการแจ้งมาถึง (spurious wakeup) บทความนี้อธิบายจากการอิมพลีเมนต์ของ Windows ว่าทำไมข้อกำหนดจึงอนุญาต และแสดงว...
-
คลิปบอร์ดกับลากและวางทำงานอย่างไร — จัดการการถ่ายโอนข้อมูล OLE ให้ถูกต้องในแอปธุรกิจ
วางตาราง Excel แล้วการจัดรูปแบบพัง ปิดแอปต้นทางแล้ววางไม่ได้อีก — ทั้งคู่มาจากคลิปบอร์ดที่วางเนื้อหาเดียวกันในหลายรูปแบบพร้อมกัน บทความนี้ครอบคลุมรูปแบบมาตรฐ...
-
WPR/WPA ในทางปฏิบัติ — บทนำการสอบสวนประสิทธิภาพทั้งระบบเมื่อ "พีซีทั้งเครื่องช้า"
ปัญหาประสิทธิภาพอย่าง "พีซีทั้งเครื่องช้า" หรือ "สตาร์ตช้า" ที่ Task Manager ตามไม่ทัน สอบสวนได้ด้วยการจับและอ่าน ETW เทรซทั้ง OS ด้วย WPR/WPA บทความนี้ครอบค...
-
Windows ชัตดาวน์จากมุมของแอป — รอดจากการแจ้งออก รีสตาร์ต และการตัดไฟอย่างถูกต้อง
รีสตาร์ตข้ามคืนจาก Windows Update ทำให้ข้อมูลวัดเสีย — อุบัติเหตุแบบนั้นป้องกันด้วยการออกแบบได้ บทความนี้ครอบคลุมจากแหล่งปฐมภูมิว่าจะรับการแจ้งออกอย่าง WM_QU...
-
บทนำการเข้าถึงแอป Windows — เตรียม UI Automation และข้อกำหนดการปรับที่สมเหตุสมผล
บนฉากหลังของกฎหมายแก้ไขว่าด้วยการขจัดเลือกปฏิบัติต่อผู้พิการที่มีผลเมษายน 2024 บทความนี้จัดระเบียบการตั้งชื่อใน WinForms/WPF การใช้แป้น คอนทราสต์ และเครื่องม...
-
กับดักแบบอักษรและอักขระญี่ปุ่น — จัดการ JIS2004, IVS และไกจิในแอปธุรกิจ
"ตัว 葛 บนจอและบนแบบพิมพ์ดูต่างกัน" "อักขระในชื่อบุคคลแสดงไม่ได้" ปัญหาอักขระในระบบธุรกิจจัดการได้เมื่อแยกชั้นรหัสอักขระ (ข้อมูล) ออกจากชั้นแบบอักษร (ลักษณะ) ...
-
จาก Group Policy สู่ Intune — คู่มือโยกย้ายการจัดการอุปกรณ์สำหรับธุรกิจขนาดกลางและเล็ก
เมื่อเซิร์ฟเวอร์ AD ถึงรอบเปลี่ยน ควรอยู่กับ Group Policy หรือย้ายไป Entra ID บวก Intune? บทความนี้จัดสำหรับธุรกิจขนาดกลางและเล็กถึงความต่างของวิธีใช้ สิทธิ์...
-
เลือกบัญชีบริการ Windows — LocalSystem, บัญชีเสมือน และ gMSA
ยังรันบริการ Windows เป็น LocalSystem อยู่หรือไม่ บทความนี้เปรียบเทียบสิทธิ์และตัวตนเครือข่ายของ LocalService, NetworkService, บัญชีเสมือน, ผู้ใช้โดเมน และ g...
-
OneDrive "ไฟล์ตามความต้องการ" กับแอปธุรกิจ — ข้อสมมติที่เพลสโฮลเดอร์ทำลาย และวิธีรับมือ
CSV บนเดสก์ท็อปเปิดไม่ได้ หรือการนำเข้าล้มเหลวด้วย "ไม่พบไฟล์" — สาเหตุอาจเป็น Known Folder Move และไฟล์ตามความต้องการของ OneDrive บทความนี้อธิบายเพลสโฮลเดอร...
-
ความเข้ากันได้ของแอป Windows ทำงานอย่างไร — โหมดความเข้ากันได้ ชิม และ Compatibility Administrator
ทำไมการติ๊กโหมดความเข้ากันได้จึงทำใหแอปเก่าเริ่มทำงาน บทความนี้อธิบายชิม (ฮุก API) ชิมตัวแทน การกระจายด้วย Compatibility Administrator และ sdbinst ขีดจำกัด แ...
-
ความลึกของหน่วยความจำ Windows (ตอนที่ 3) — ออบเจ็กต์เซกชันและคัดลอกเมื่อเขียน: DLL และการแมปไฟล์คืออะไรจริง ๆ
บทความนี้เชื่อมออบเจ็กต์เซกชัน การแมปอิมเมจและข้อมูล แคชร่วม และคัดลอกเมื่อเขียน เพื่ออธิบายว่า DLL กับหน่วยความจำร่วมใช้เพจกายภาพร่วมกันอย่างไร.
-
การรวมเข้ากับเชลล์ Windows วันนี้ ── เมนูบริบท การเชื่อมโยงไฟล์ และสิ่งที่เปลี่ยนใน Windows 11
เหตุใดเมนูบริบท Windows 11 จึงซ่อนรายการไว้หลัง «แสดงตัวเลือกเพิ่มเติม» อธิบายจากพื้นฐานนามสกุล→ProgID→verb ข้อควรระวังส่วนขยายเชลล์แบบคลาสสิก ไปจนถึงเส้นทาง...
-
พร็อกซีองค์กรและแอป Windows — จัดระเบียบการหาพร็อกซีใน WinINET, WinHTTP และ .NET
เบราว์เซอร์ผ่านได้ แต่มีแค่แอปธุรกิจที่ข้ามพร็อกซีองค์กรไม่ได้ สาเหตุมักเป็นการไม่ตรงกันของค่าพร็อกซีที่ WinINET, WinHTTP, ตัวแปรสภาพแวดล้อม และ .NET อ่าน บท...
-
ความลึกของหน่วยความจำ Windows (ตอนที่ 2) — ชีวิตของเพจทางกายภาพ: ห้าบัญชีและเรื่องจริงของไฟล์เพจ
บทความนี้เชื่อมฐานข้อมูล PFN, Standby, Modified, การบีบอัดหน่วยความจำ และไฟล์เพจ เพื่ออธิบายว่าเพจทางกายภาพไปไหนหลังจากออกจาก Working Set.
-
จับแพ็กเก็ตบน Windows ในทางปฏิบัติ — เลือก pktmon, netsh trace และ Wireshark
ความล้มเหลวที่เหลือเพียง "timeout" ในล็อกแอป สืบได้ลึกขึ้นหนึ่งชั้นด้วยการดูแพ็กเก็ตที่วิ่งบนสายจริง แม้ติดตั้ง Wireshark บนเซิร์ฟเวอร์ไม่ได้ ก็จับด้วย pktmo...
-
ความลึกของหน่วยความจำ Windows (ตอนที่ 1) — ช่วงที่ที่อยู่เสมือนกลายเป็น RAM กายภาพ: page fault จากต้นจนจบ
บทความนี้เชื่อม VirtualAlloc, VAD, ตารางเพจ, TLB, demand-zero และ hard fault เพื่ออธิบายช่วงที่ที่อยู่เสมือนได้รับ RAM กายภาพ.
-
อ่านรหัสข้อผิดพลาด Windows — โครงสร้างสามชั้นของ Win32, HRESULT และ NTSTATUS
เมื่อ 0x80004005 ปรากฏ ให้แยกมันก่อนค้นหา บทความนี้อธิบายสามชั้น Win32, HRESULT และ NTSTATUS รูปแบบ 0x8007xxxx และการค้นด้วย err.exe กับ PowerShell.
-
"การใช้หน่วยความจำ" ของ Windows หมายถึงอะไรจริง ๆ? — อ่าน Working Set, Private Bytes, Commit และเพจไฟล์ให้ถูก
คอลัมน์ Memory ใน Task Manager, Working Set, Private Bytes และ Commit ไม่ใช่ตัวเลขเดียวกัน บทความนี้อธิบายความสัมพันธ์ของหน่วยความจำเสมือนกับกายภาพบน Windows...
-
แนวปฏิบัติมัลติเธรดเชิงปฏิบัติ: ฉบับ C — เขียนอย่างปลอดภัยแบบ Win32 API
แนวทางที่ลงตัวของมัลติเธรดใน C กับ Win32 คือสร้างเธรดด้วย _beginthreadex, ล็อก SRW และตัวแปรเงื่อนไข, ฟังก์ชัน Interlocked และการออกแบบหยุดที่สร้างจากเหตุการ...
-
แนวปฏิบัติมัลติเธรดเชิงปฏิบัติ: ฉบับ C++ — ตัดอุบัติเหตุด้วยโครงสร้างด้วย RAII และ jthread
ใน C++ มัลติเธรดคือโลกที่ data race คือพฤติกรรมไม่กำหนด บทความนี้ไล่กับดักของดีสตรักเตอร์ std::thread การออกแบบการหยุดด้วย jthread และ stop_token การเลี่ยงเด...
-
แนวปฏิบัติมัลติเธรดเชิงปฏิบัติ: ฉบับ .NET — สิ่งที่ต้องตัดสินก่อนเพิ่มเธรด
เรียบเรียงหลักออกแบบที่กันไม่ให้โค้ดมัลติเธรด .NET/C# «แครชหรือค้างเป็นครั้งคราว»: อย่าสร้างเธรดเอง ให้ขี่ Task ลดสถานะที่เปลี่ยนแปลงร่วมกัน มีวินัยล็อก ออกแ...
-
Volume Shadow Copy (VSS): กลไกและงานปฏิบัติ — ทำไมซอฟต์แวร์สำรองจึงคัดลอกไฟล์ที่กำลังใช้อยู่ได้
ไฟล์ที่กำลังใช้อยู่ปกติคัดลอกไม่ได้เพราะละเมิดการแชร์ แล้วซอฟต์แวร์สำรองทำได้อย่างไร บทความนี้อธิบายบทบาทตัวร้องขอ ไรเตอร์ และโปรไวเดอร์ของ Volume Shadow Cop...
-
ใช้ WMI/CIM จาก C# และ PowerShell — คู่มือปฏิบัติการดึงข้อมูลฮาร์ดแวร์ เฝ้าโพรเซส และสอบถามระยะไกล
หมายเลขซีเรียลของพีซี การเฝ้าพื้นที่ว่างดิสก์ และการตรวจจับการเริ่มโพรเซส คำตอบมาตรฐานคือ WMI/CIM บทความนี้อธิบายการใช้ cmdlet CIM เช่น Get-CimInstance การย้...
-
คู่มือปฏิบัติ Group Policy (GPO) — กลไก การยืนยันการใช้ และการเลือกระหว่าง GPO กับ Intune
ยังแตะสภาพแวดล้อม AD โดยไม่รู้จริงว่าการแจกผ่าน GPO หมายความว่าอะไรอยู่หรือไม่ บทความนี้อธิบายกลไกของ Group Policy ลำดับการใช้ LSDOU การยืนยันด้วย gpupdate แ...
-
นโยบายการตรวจสอบความปลอดภัยของ Windows และการสอบสวนบันทึกเหตุการณ์ในทางปฏิบัติ — เป็นทีมไอทีที่อ่าน 4625 ได้
คู่มือปฏิบัติเพื่อตอบคำขอ «ช่วยดูบันทึกการลงชื่อเข้าใช้ที่ล้มเหลว» ครอบคลุมความสัมพันธ์ของนโยบายการตรวจสอบพื้นฐานกับขั้นสูง หมวดย่อยที่ควรเปิดอย่างน้อย วิธีอ...
-
คู่มือปฏิบัติ Windows LAPS — เลิกใช้รหัสผ่านผู้ดูแลท้องถิ่นร่วมกันทุกพีซี
รหัสผ่านผู้ดูแลท้องถิ่นร่วมกันทุกพีซีเป็นแหล่งเพาะการโจมตี Pass-the-Hash ที่การบุกรุกหนึ่งเครื่องลามไปทั้งกอง บทความนี้อธิบายการหมุนเวียนอัตโนมัติด้วย Window...
-
คู่มือปฏิบัติที่เก็บใบรับรองของ Windows — จะใส่ฝั่งผู้ใช้หรือคอมพิวเตอร์
ใบรับรองลูกข่ายควรใส่ที่เก็บผู้ใช้หรือคอมพิวเตอร์ certmgr.msc ต่างจาก certlm.msc อย่างไร การให้สิทธิ์คีย์ลับ และการทำรายการวันหมดอายุด้วย PowerShell บทความนี...
-
ไฟร์วอลล์ Windows กับแอปธุรกิจ — ลงทะเบียนกฎขาเข้าจากตัวติดตั้ง
สาเหตุประจำของ «บนเครื่องพัฒนาทำงาน แต่ที่ลูกค้าสื่อสารไม่ได้» คือไฟร์วอลล์ Windows บทความนี้อธิบายบล็อกขาเข้าตามค่าเริ่มต้นกับโปรไฟล์ เหตุผลที่ห้ามปล่อยไดอะ...
-
คู่มือปฏิบัติ BitLocker — เริ่มการเข้ารหัสไดรฟ์จากการจัดการกุญแจกู้คืน
ตั้งแต่ Windows 11 24H2 เป็นต้นไป การติดตั้งใหม่ทำให้การเข้ารหัสอุปกรณ์เปิดตามค่าเริ่มต้น และอุบัติเหตุแบบ «รู้ตัวอีกทีก็ถูกเข้ารหัสแล้ว» เกิดจริงแล้ว บทความ...
-
เชิงลึกของ Windows I/O (ตอนที่ 6・ตอนสุดท้าย) — ไดรเวอร์ฟิลเตอร์กับมินิฟิลเตอร์: เหตุที่ Procmon และการสแกนไวรัสแทรก I/O ได้
ตอนสุดท้ายของซีรีส์ที่อธิบายไดรเวอร์ฟิลเตอร์และมินิฟิลเตอร์ของ Windows ด้วยแผนภาพ ครอบ Filter Manager กับอัลติจูด คอลแบ็ก pre/post กลไกที่ Procmon และโปรแกรม...
-
เชิงลึกของ Windows I/O (ตอนที่ 5) — โครงสร้างภายในของ NTFS: เข้าใจระบบไฟล์จาก MFT
ตอนที่ 5 ของซีรีส์ที่อธิบายโครงสร้างภายในของ NTFS ด้วยแผนภาพ จัดจากมุมนักพัฒนา ทั้ง MFT กับเรกคอร์ดไฟล์ สตรีมข้อมูลหลายอัน (Zone.Identifier) ฮาร์ดลิงก์กับชื่...
-
เชิงลึกของ Windows I/O (ตอนที่ 4) — Cache Manager: WriteFile ของคุณไปถึงดิสก์เมื่อใด
ตอนที่ 4 ของซีรีส์ที่อธิบาย Cache Manager ของ Windows ด้วยแผนภาพ จัดแคชที่อิมพลีเมนต์เป็นการแมปไฟล์ การอ่านล่วงหน้ากับการเขียนแบบหน่วง การเลือกใช้ FlushFileB...
-
MFC บน Windows คืออะไร — ความรู้พื้นฐานสำหรับบำรุงรักษาสินทรัพย์เดิม
สรุปภาพรวม Microsoft Foundation Classes (MFC) ความสัมพันธ์กับ Win32 โครงสร้างแอป message map, Document/View, DDX/DDV และจุดที่ต้องระวังตอนบำรุงรักษา.