เป็นไปได้ไหมที่ PowerShell จะทำภารกิจอัตโนมัติเมื่อเปิดหรือปิดไฟล์? โดยเฉพาะอย่างยิ่ง: หากฉันคลิกขวาที่ไฟล์จะมี "เมนูบริบท" เป็นไปได้ไหมที่จะเรียกใช้หนึ่งในรายการเหล่านั้นในเมนูโดยอัตโนมัติเมื่อเปิดไฟล์และ / หรือปิด?
เป็นไปได้ไหมที่ PowerShell จะทำภารกิจอัตโนมัติเมื่อเปิดหรือปิดไฟล์? โดยเฉพาะอย่างยิ่ง: หากฉันคลิกขวาที่ไฟล์จะมี "เมนูบริบท" เป็นไปได้ไหมที่จะเรียกใช้หนึ่งในรายการเหล่านั้นในเมนูโดยอัตโนมัติเมื่อเปิดไฟล์และ / หรือปิด?
คำตอบ:
ฉันไม่แน่ใจว่าฉันเข้าใจคำถามของคุณทั้งหมดดังนั้นให้ฉันใช้ถ้อยคำของคุณใหม่ด้วยคำพูดของฉันเองเพื่อให้คุณสามารถยืนยันได้ว่าเรากำลังพูดถึงสิ่งเดียวกันที่นี่
เพื่อความเข้าใจของฉันคุณต้องการทำให้เป็นไปได้ที่จะมีไอเท็มบริบทใน explorer ว่าถ้าคุณคลิกขวาที่ไฟล์เลือกรายการมันจะเปิดตัว PowerShell ด้วยหนึ่งในสคริปต์ของคุณและแยกชื่อไฟล์ของไฟล์ที่คุณเลือก เป็นอาร์กิวเมนต์พิเศษ
ดูคำถามนี้เพื่อค้นหาสิ่งที่คุณต้องการในสคริปต์ Powershell ของคุณเพื่อรับอาร์กิวเมนต์ไฟล์: https://stackoverflow.com/questions/2157554/how-to-handle-command-line-arguments-in-powershellฉันจะ ให้ตัวอย่างของรหัสในภายหลังในคำตอบนี้)
ตอนนี้ในรีจิสทรีภายใต้ HKEY_CLASSES_ROOT ภายใต้ * คุณต้องสร้างชุดคีย์ใหม่สำหรับรายการเมนูบริบทของคุณ
สร้างโครงสร้างโฟลเดอร์ต่อไปนี้: * \ MyScript \ Command \ Open
ตั้งชื่อ MyScript ให้กับทุกสิ่งที่คุณต้องการ มันจะแสดงในเมนูบริบท
กำหนดพารามิเตอร์เริ่มต้นสำหรับเปิดเส้นทางแบบเต็มไปที่ PowerShell จากนั้นเส้นทางแบบเต็มของสคริปต์ของคุณตามด้วย -file% 1 สำหรับไฟล์เอง
ในสคริปต์ของคุณตอนนี้คุณสามารถใช้
param (
[string]$file = ""
)
หากคุณตรวจสอบว่าไฟล์ $ ว่างเปล่าคุณจะรู้ว่าไม่มีการแยกวิเคราะห์ไฟล์