Permintaan dan Pengesanan Ketinggian UAC daripada Skrip Python
Untuk menyalin fail pada Windows Vista daripada skrip Python, adalah perlu untuk meningkatkan keistimewaan untuk memintas Kawalan Akaun Pengguna (UAC). Berikut ialah kaedah yang boleh diakses untuk mencapai perkara ini:
Permintaan Ketinggian UAC:
import ctypes, sys def is_admin(): try: return ctypes.windll.shell32.IsUserAnAdmin() except: return False if not is_admin(): # Re-run the program with admin rights ctypes.windll.shell32.ShellExecuteW(None, "runas", sys.executable, " ".join(sys.argv), None, 1)
Kod ini menyemak sama ada skrip berjalan dengan keistimewaan yang tinggi. Jika tidak, ia melancarkan semula skrip dengan hak pentadbir.
Pengesanan UAC:
Jika meminta ketinggian UAC tidak dapat dilaksanakan, anda boleh mengesan sama ada skrip dinaikkan atau tidak :
if is_admin(): # Code that requires elevated privileges else: print("Error: Script must be run with elevated privileges.") sys.exit()
Pendekatan ini membolehkan anda mengendalikan kekurangan ketinggian dengan anggun atau memaparkan mesej amaran kepada pengguna.
Kelebihan Kaedah Cadangan:
Untuk maklumat lanjut, rujuk dokumentasi untuk panggilan API ShellExecute.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Meminta dan Mengesan Ketinggian UAC dalam Skrip Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!