location windows 10-11 notebook in powershell

พอดีมีงานที่ต้อง GET location notebook windows 10-11 เพื่อเก็บข้อมูลตำแหน่ง โดยใช้ python

แล้วไปเจอข้อมูลว่า powershell ของ windows สามารถทำได้ เลยอยากจะมาแชร์ไว้เป็นความรู้

ก่อนอืนเลย ทั้ง windows 10-11 ที่ผมทดสอบ เป็น 64 bit pro ทั้งหมด ส่วน ยี่ห้อ notebook ที่ทดสอบ เป็น lenovo และ HP ของลูกค้า

เรื่อง ยี่ห้อ notebook ยังไม่มั่นใจว่า มีเครื่องไหนไม่ได้บ้าง แต่จากที่ทดสอบยังไม่เจอไม่มีปัญหา

โดยเดาว่าหาก windows ที่ติดตั้งมีเมนู location privacy settings คาดว่าน่าจะได้หมด โดยเราต้องไป ON ใน windows 10 และ allow ใน windows 11

จากนั้น CMD แล้ว พิมพ์ powershell เพื่อเข้า powershell

จากนั้นใช้คำสั่งตามนี้

add-type -assemblyname system.device;
$loc = new-object system.device.location.geocoordinatewatcher;

$loc.start();
while(($loc.status -ne “Ready”) -and ($loc.permission -ne “Denied”)) {start-sleep -milliseconds 100}; $acc = 3;
while($loc.position.location.horizontalaccuracy -gt $acc) {start-sleep -milliseconds 100;
$acc = [math]::Round($acc*1.5)};
$loc.position.location.latitude;
$loc.position.location.longitude;
$loc.position.location.horizontalaccuracy;
$loc.stop()

 

ผมอาจจะยังอธิบายไม่ได้จากทั้งหมด เนื่องจากว่า 2 บรรทัด แรกไป Add เพื่อเปิดอะไร แต่ที่เหลือ น่าจะเป็นการเริ่มดึงค่า แสดงค่า และ หยุดการทำงาน

หากมีอะไรเพิ่มเติมจะมาใส่อีกทีครับ

 

ใส่ความเห็น

อีเมลของคุณจะไม่แสดงให้คนอื่นเห็น ช่องที่ต้องการถูกทำเครื่องหมาย *