python实现window10普通用户调用管理员权限安装软件

import os
import threading
import time
import tkinter as tk
from tkinter import *

import itsdangerous
import requests
import ttkbootstrap as ttk
from tkinter import filedialog

# 管理员的账户名和密码
user_name = 'admin1'
pwd = '12345678'

user_name1 = 'admin2'
pwd1 = '12345678'


# 安装软件
def install_exe():
    text1.insert('insert', '开始执行程序' + '\n')
    lj = 'c:/poi1/hn.exe'
    text1.insert('insert', '检查poi1文件夹是否存在' + '\n')
    new_file()
    # 开始时间
    start_time = time.time()
    try:
        url = str(te1.get())
        text1.insert('insert', "你的下载链接:" + str(url) + '\n')
        text1.insert('insert', '开始下载软件。。。。。。' + '\n')
        url2 = 'http://192.168.65.92/PsExec.exe'
        response = requests.get(url)
        response2 = requests.get(url2)
        open('c:/poi1/hn.exe', 'wb').write(response.content)
        text1.insert('insert', '安装软件包下载成功' + '\n')
        open('c:/poi1/PsExec.exe', 'wb').write(response2.content)
        text1.insert('insert', '准备软件下载成功' + '\n')
        # 结束时间
        end_time = time.time()
        t = end_time - start_time
        print('软件下载完成,耗时:' + str(int(t)) + 's')
        text1.insert('insert', '软件下载完成,耗时:' + str(int(t)) + 's' + '\n')
        text1.insert('insert', '开始安装软件,请注意软件弹窗')
        s1 = os.system('c:/poi/PsExec.exe -u ' + str(user_name) + ' -p ' + str(pwd) + ' "' + lj + '"')
        print(s1)
        # 如果用户名密码错误
        if s1 == 1326:
 
            os.system('c:/poi/PsExec.exe -u ' + str(user_name1) + ' -p ' + str(pwd1) + ' "' + lj + '"')
    except Exception as e:
        print('下载链接有误')
        text1.insert('insert', '下载失败,请检查链接' + '\n')
        print(e)


# 创建文件夹
def new_file():
    lj_wenjianjia = 'c:/poi1/'
    l = os.path.exists(lj_wenjianjia)
    if l == False:
        os.makedirs(lj_wenjianjia)
        text1.insert('insert', '完成创建poi文件夹')


# 创建软件安装线程
def install_threading():
    thread = threading.Thread(target=install_exe)
    thread.start()


# 文本框获取路径信息回显
def get_lujing():
    tx = tk.filedialog.askopenfilename()
    global t
    t = tx
    te1.insert(0, t)


# 创建窗口
root = ttk.Window(themename="superhero")
# 窗口居中
root.place_window_center()
root.title('软件安装V2')
root.geometry('400x300')
root.resizable(0, 0)
# 让窗口位置其它窗口之上
root.wm_attributes('-topmost', 1)

# 创建tk组件
tl = ttk.Label(root, bootstyle='danger', text='输入链接:')
te1 = ttk.Entry(root, bootstyle="danger", )
tb2 = ttk.Button(root, bootstyle='danger', text='确认安装', command=install_threading)
text1 = ttk.Text(root, width=50, )

# tk组件布局
tl.grid(row=0, column=1, pady=5, padx=0)
te1.grid(row=0, column=2, ipadx=40, padx=0, pady=5)
tb2.grid(row=0, column=3, padx=0, pady=5)
text1.grid(row=1, column=1, columnspan=3, padx=20)

# 进入主循环,显示窗口
root.mainloop()

 

使用 pyinstaller -F -w .\shouquan.py 封装成.exe文件,可以在windows系统运行。

你可能感兴趣的:(python,开发语言,爬虫,pip)