รุ่นล่าสุดของ Windows 10 มีข้อบกพร่องเนื่องจากไดรฟ์เครือข่ายที่แมปอาจล้มเหลวในการเชื่อมต่อใหม่โดยอัตโนมัติเมื่อเริ่มต้น Windows หลังจากเข้าสู่ระบบแล้ว ผู้ใช้จะเห็นกากบาทสีแดงขนาดใหญ่บนไอคอนของไดรฟ์เครือข่ายที่แมปทั้งหมดใน File Explorer หากคุณเรียกใช้ net use
คำสั่งใน command prompt จากนั้นคุณจะเห็น Unavailable สถานะด้านหน้าไดรฟ์ที่แมปทั้งหมด ทั้งไดรฟ์เครือข่ายที่แมปโดยผู้ใช้และไดรฟ์ที่แมป GPO จะไม่เชื่อมต่อใหม่โดยอัตโนมัติ
ปัญหานี้ปรากฏครั้งแรกใน Windows 10 1809 แต่เกิดขึ้นในรุ่นใหม่กว่า รวมถึง Windows 10 2004
ไดรฟ์เครือข่ายที่แมปไม่เชื่อมต่อใหม่ใน Windows 10
Windows 10 หยุดการทำแผนที่ไดรฟ์เครือข่ายโดยอัตโนมัติหลังจากรีสตาร์ทอุปกรณ์ด้วยเหตุผลบางประการ ไดรฟ์เครือข่ายที่แมปจะแสดงใน File Explorer แต่คุณไม่สามารถเชื่อมต่อได้
ในกรณีนี้ หน้าต่างป๊อปอัปจะปรากฏขึ้นในพื้นที่แจ้งเตือนพร้อมการแจ้งเตือน:
Could not reconnect all network drives. Click here to check the status of your network drives.
ปัญหาเกิดขึ้นทั้งกับไดรฟ์ที่แมปที่เชื่อมต่อจากอุปกรณ์ NAS และกับโฟลเดอร์ที่ใช้ร่วมกันบนคอมพิวเตอร์ Windows / Linux เครื่องอื่น ข้อบกพร่องนี้ปรากฏขึ้นครั้งแรกใน Windows 10 เวอร์ชัน 1809 และตามที่ Microsoft ระบุ ได้รับการแก้ไขโดย KB469342 การอัปเดตที่เผยแพร่เมื่อวันที่ 5 ธันวาคม 2018 (แก้ไขปัญหาที่อาจทำให้ไดรฟ์ที่แมปเชื่อมต่อใหม่ไม่ได้หลังจากเริ่มต้นและเข้าสู่ระบบอุปกรณ์ Windows) แต่ปัญหาก็เกิดขึ้นใน Windows 10 บิลด์ใหม่เช่นกัน
คุณสามารถดาวน์โหลดและติดตั้งการอัปเดตด้วยตนเองจาก Microsoft Update CatalogMicrosoft ยังเสนอวิธีแก้ปัญหาในการกู้คืนการเชื่อมต่อกับไดรฟ์เครือข่ายที่แมปไว้ (ดู KB4471218 — ไดรฟ์เครือข่ายที่แมปอาจไม่สามารถเชื่อมต่อใหม่ใน Windows 10 เวอร์ชัน 1809) เมื่อต้องการทำเช่นนี้ ขอแนะนำให้เรียกใช้สคริปต์ PowerShell เมื่อเข้าสู่ระบบของผู้ใช้ หากไดรฟ์เครือข่ายเชื่อมต่อผ่านนโยบายกลุ่ม คุณต้องเปลี่ยนการตั้งค่า GPO
เชื่อมต่อไดรฟ์เครือข่ายที่แมปใหม่โดยอัตโนมัติโดยใช้ PowerShell
มาดูวิธีใช้สคริปต์ PowerShell เพื่อเชื่อมต่อไดรฟ์เครือข่ายที่แมปใหม่โดยอัตโนมัติเมื่อผู้ใช้เข้าสู่ระบบ Windows
เรียกใช้ notepad.exe คัดลอกโค้ด PowerShell ต่อไปนี้ลงไป และบันทึกไฟล์ลงในไดเร็กทอรี C:\PS เป็น MapDrives.ps1 :
$i=3
while($True){
$error.clear()
$MappedDrives = Get-SmbMapping |where -property Status -Value Unavailable -EQ | select LocalPath,RemotePath
foreach( $MappedDrive in $MappedDrives)
{
try {
New-SmbMapping -LocalPath $MappedDrive.LocalPath -RemotePath $MappedDrive.RemotePath -Persistent $True
} catch {
Write-Host "Shared folder connection error: $MappedDrive.RemotePath to drive $MappedDrive.LocalPath"
}
}
$i = $i - 1
if($error.Count -eq 0 -Or $i -eq 0) {break}
Start-Sleep -Seconds 30
}
สคริปต์นี้จะเลือกไดรฟ์ที่แมปที่ไม่สามารถเข้าถึงได้ทั้งหมด และพยายามเชื่อมต่อใหม่ในโหมดถาวร
สร้าง MapDrives.cmd . อื่น ไฟล์สคริปต์ที่มีรหัสต่อไปนี้:PowerShell -Command "Set-ExecutionPolicy -Scope CurrentUser Unrestricted" >> "%TEMP%\StartupLog.txt" 2>&1
PowerShell -File "%SystemDrive%\PS\MapDrives.ps1" >> "%TEMP%\StartupLog.txt" 2>&1
รหัสนี้ช่วยให้คุณข้ามนโยบายการดำเนินการของ PowerShell และเรียกใช้สคริปต์ PS1 ที่อธิบายไว้ข้างต้น คุณสามารถใส่แบตช์ไฟล์นี้ในการเริ่มต้นของผู้ใช้โดยคัดลอกไฟล์ MapDrives.cmd ไปยัง %ProgramData%\Microsoft\Windows\Start Menu\Programs\StartUp
โฟลเดอร์
คุณยังสามารถสร้างงานที่กำหนดเวลาไว้เพื่อเรียกใช้ไฟล์ MapDrives.cmd เมื่อผู้ใช้เข้าสู่ระบบ คุณสามารถสร้างงานตัวกำหนดเวลาโดยใช้ PowerShell หรือจากคอนโซล GUI ตัวกำหนดเวลางาน (Taskschd.msc
)
- สร้างงานใหม่ ระบุชื่อ (reMapNetworkDrives) เลือกว่าต้องการให้เรียกใช้งานในนามของ Builtin\Users กลุ่ม;
- ใน ทริกเกอร์ แท็บ เลือกว่างานควรจะรันเมื่อมีผู้ใช้เข้าสู่ระบบ (เมื่อเข้าสู่ระบบ -> ผู้ใช้ใด ๆ );
- ใน การกระทำ ในแท็บ โปรแกรม/สคริปต์ ให้ระบุเส้นทางไปยังไฟล์ MapDrives.cmd
- ในเงื่อนไข แท็บ คุณสามารถเปิดใช้งานตัวเลือก เครือข่าย -> เริ่มเฉพาะเมื่อมีการเชื่อมต่อเครือข่ายต่อไปนี้ -> การเชื่อมต่อใด ๆ
- รีบูตเครื่องคอมพิวเตอร์หรือออกจากระบบ/เข้าสู่ระบบโดยใช้บัญชีผู้ใช้ของคุณ เมื่อผู้ใช้เข้าสู่ระบบ สคริปต์ควรทำงาน ซึ่งจะสร้างการเชื่อมต่อไดรฟ์ที่แมปใหม่ทั้งหมด
เชื่อมต่อใหม่อัตโนมัติของไดรฟ์ที่แมปผ่าน GPO
หากคุณจับคู่ไดรฟ์เครือข่ายกับผู้ใช้ที่ใช้นโยบายกลุ่มของโดเมน คุณจะต้องเปลี่ยนการตั้งค่านโยบายเพื่อเชื่อมต่อไดรฟ์อย่างถูกต้อง
เปิด GPO ที่เชื่อมต่อไดรฟ์ และในส่วน User Settings -> Preferences -> Windows Settings -> Drive maps ค้นหานโยบายการกำหนดไดรฟ์เครือข่าย (นโยบาย) และเปลี่ยน การดำเนินการ พิมพ์จากอัปเดตเป็น แทนที่
หลังจากอัปเดตการตั้งค่านโยบายกลุ่มบนไคลเอ็นต์แล้ว ไดรฟ์เครือข่ายที่แมปจะถูกลบออกและเชื่อมต่อใหม่เมื่อผู้ใช้เข้าสู่ระบบ
ไดรฟ์เครือข่ายที่แมปอาจไม่สามารถเชื่อมต่อใหม่บน Windows 10 2004 (20H2)
ปัญหาเกี่ยวกับไดรฟ์เครือข่ายการทำแผนที่ยังเกิดขึ้นใน Windows 10 2004 (รุ่น 20H2) ปัญหาเกิดขึ้นกับไดรฟ์เครือข่ายที่เชื่อมต่อจากอุปกรณ์เครือข่ายแบบเดิมที่รองรับโปรโตคอล SMBv1 เท่านั้น (Windows XP/2003 ซึ่งเป็นอุปกรณ์ NAS รุ่นเก่า)
ในการแก้ไขปัญหานี้ คุณต้องเพิ่มพารามิเตอร์ ProviderFlags=1
ไปยังรีจีสทรีผู้ใช้สำหรับไดรฟ์เครือข่ายแต่ละไดรฟ์ที่แมป
ตัวอย่างเช่น หากผู้ใช้มีไดรฟ์เครือข่าย U: แมปในเซสชัน ไปที่รีจิสตรีคีย์ HKEY_CURRENT_USER\Network\U . สร้าง DWORD ชื่อ ProviderFlags ด้วยค่า 1 .
หรือรันคำสั่ง:
REG ADD "HKCU\Network\U" /v "ProviderFlags" /t REG_DWORD /d "1" /f
การหน่วงเวลาการแมปไดรฟ์เครือข่ายใน Windows ผ่าน GPO
Windows อาจพยายามเชื่อมต่อไดรฟ์เครือข่ายอีกครั้งเมื่อเข้าสู่ระบบของผู้ใช้ ก่อนที่อินเทอร์เฟซเครือข่ายจะเริ่มต้นได้อย่างสมบูรณ์ เพื่อป้องกันไม่ให้ไดรฟ์ที่แมปเชื่อมต่อจนกว่าเครือข่ายจะเปิดใช้งานอย่างสมบูรณ์ คุณสามารถกำหนดการตั้งค่านโยบายกลุ่มเฉพาะได้
คุณสามารถกำหนดการตั้งค่านี้ผ่าน Local Group Policy Editor (gpedit.msc
) หรือจาก Domain GPO Editor (gpmc.msc
). ไปที่ Computer Configuration -> Administrative Templates -> System -> Logon และเปิดใช้งาน รอเครือข่ายเสมอเมื่อคอมพิวเตอร์เริ่มต้นและเข้าสู่ระบบ นโยบาย
รีบูตเครื่องคอมพิวเตอร์
คุณยังสามารถแก้ไขปัญหานี้ได้หากคุณรอเพียง 15 วินาทีหลังจากบูตคอมพิวเตอร์ของคุณ (หรือออกจากโหมดไฮเบอร์เนต/สลีป) ก่อนเข้าสู่ระบบ คราวนี้ก็เพียงพอแล้วสำหรับ Windows ในการเริ่มต้นเครือข่าย
ปิดใช้งานไม่สามารถเชื่อมต่อการแจ้งเตือนของไดรฟ์เครือข่ายทั้งหมดอีกครั้ง
หากคอมพิวเตอร์ของคุณไม่ได้อยู่ในเครือข่ายองค์กร (ไดรฟ์เครือข่ายไม่พร้อมใช้งานตามการออกแบบ) และคุณกำลังถูกรบกวนโดย "ไม่สามารถเชื่อมต่อไดรฟ์เครือข่ายทั้งหมดอีกครั้ง ” การแจ้งเตือนทุกครั้งที่บูต Windows คุณสามารถปิดการใช้งานได้
ในการดำเนินการนี้ ให้ไปที่คีย์รีจิสทรี HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\NetworkProvider และสร้างพารามิเตอร์ DWORD ใหม่โดยใช้ชื่อ RestoreConnection และค่า 0 .