pyinstaller 打包后软件运行结果不一致。

请帮我看看什么问题
该代码在pycharm上可以正常运行,但是打包后点击按钮就生成新窗口。
import tkinter
from tkinter import Tk
from time import sleep
from pynput.keyboard import Key,Controller
from multiprocessing import Process
import test
win = Tk()
win.title("喊话辅助 1.0")
win.geometry("250x100")
win.resizable(False, False)
# 键盘输出控制函数
keyboard = Controller()
def Shout():
        while True:
                sleep(0.3)
                keyboard.press("k")
                sleep(0.3)
                keyboard.press("j")
                sleep(0.3)
                keyboard.press(Key.space)
                sleep(7)

# 线程开始结束函数

def xiancheng_Shout(x):
        global p
        if x == 1:
                p = Process(target=Shout)
                p.start()
        if x == 2:
                p.terminate()
                
# 自动喊话
def begin():
        xiancheng_Shout(1)
        sing_start["state"] = "disable"
        sing_stop["state"] = "normal"

# 停止喊话
def end():
        xiancheng_Shout(2)
        sing_start["state"] = "normal"
        sing_stop["state"] = "disable"
# 按钮
sing_start = tkinter.Button(win,text = "自动喊话",command = begin)
sing_stop = tkinter.Button(win,text = "停止喊话",command = end,state = "disable")
#放置按钮
sing_start.pack()
sing_stop.pack()
if __name__ == "__main__":
        # 窗口循环
        win.mainloop()