ฉันกำลังพัฒนาตัวถอนการติดตั้งแอปพลิเคชันโดยใช้ Powershell
ฉันใช้ 2 คำสั่ง:
ถอนการติดตั้งสำหรับผู้ใช้ทั้งหมด (โดยใช้ -AllUser): Get-AppxPackage -AllUsers <PackageName> | ลบ-AppxPackage-AllUsers
ถอนการติดตั้งผู้ใช้ที่ระบุ: เอา AppxPackage <PackageName> -ผู้ใช้ <User SID>
คำสั่งทั้งสองที่ฉันเรียกใช้โดยใช้ผู้ใช้ ผู้ดูแลระบบ.
สั่งการ 1. ทำงานได้ดี สั่งการ 2. ไม่ทำงานตามที่คาดไว้
รายละเอียดเกี่ยวกับคำสั่ง 2
หลังจากที่ฉันเรียกใช้ 2/ ฉันใช้คำสั่ง Get-AppxPackage <ชื่อแพ็คเกจ> -AllUsers
เพื่อตรวจสอบสถานะการติดตั้งแอป "PackageUserInformation" ของผู้ใช้ที่ระบุคือ [ติดตั้งแล้ว (รอการลบ)]. เช่นเดียวกับภาพด้านล่าง (ด้วยเหตุผลด้านความปลอดภัยบางประการ ฉันไม่สามารถอัปโหลดภาพที่มีรายละเอียดได้ ฉันจะเพิ่มรูปภาพในภายหลัง)
ฉันได้ทดสอบใน 2 สภาพแวดล้อม:
- A) Windows 10 Pro 1909 => ถอนการติดตั้งสำเร็จเมื่อฉันลงชื่อเข้าใช้เท่านั้น
ผู้ใช้ที่ระบุ
- B) Windows 10 Pro 2004 => ถอนการติดตั้งสำเร็จ
เมื่อฉันรันคำสั่ง 2. แล้วรอประมาณ 15 นาที (สำเร็จรวม
วิธี ก)
ฉันมีคำถามดังต่อไปนี้:
กรณี A ทำไมต้องลงชื่อเข้าใช้ใหม่จึงจะสามารถถอนการติดตั้งได้?
ในกรณี B ทำไมฉันต้องรอ 15 นาทีจนกว่าการถอนการติดตั้งจะเสร็จสมบูรณ์
อะไรคือความแตกต่างระหว่าง Windows ทั้งสองรุ่น? มีการอัปเดตสำหรับปัญหานี้หรือไม่?
ฉันคิดว่าปัญหานี้เกี่ยวข้องกับสถานะของผู้ใช้ (ใช้งานอยู่หรือไม่ได้เชื่อมต่อ) และการอนุญาตของผู้ใช้ในการเข้าถึง C:\Program Files\WindowsApps
. แต่ฉันยังคงไม่พบเอกสารใด ๆ ที่เกี่ยวข้องกับปัญหานี้
เพราะเมื่อใช้คำสั่ง 1. (Uninstall for All users) ปัญหานี้จะไม่เกิดขึ้น
ถ้าเป็นไปได้โปรดช่วยฉันด้วย
ฉันขอขอบคุณการสนับสนุนของคุณ
ขอขอบคุณ.