gpt4 book ai didi

python - 启动程序不会启动应用程序

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:35:24 25 4
gpt4 key购买 nike

我正在用 Python 编写一个简单的程序,它可以启动我当天需要的程序,并在我喝咖啡时根据需要放置它们。下面是启动和定位 Chrome 的函数示例。

def chrome():
Popen(['google-chrome'], stdout=os.open(os.devnull, os.O_RDWR), stderr=STDOUT)
time.sleep(5)
call(["/usr/bin/wmctrl", "-r", "Chrome", "-e", "0,1356,0,1200,1055"])

当我登录时,Chrome 无法打开。但是,当我运行 $ python boot.py 时,它会打开 Chrome,等待 5 秒,然后使用 wmctrl 定位窗口以及其他未打开的应用程序。

我有通过设置 python/home/rony/Documents/python/boot.py 在启动应用程序中启动的程序,我知道它正在执行,因为 Skype 启动了。启动 Skype 应用程序和 Chrome 之间的唯一区别是我使用 call('skype') 而不是 Popen()

Popen() 似乎没有在登录时打开我的应用程序的原因是什么?

最佳答案

我提到我使用了 call('skype') 而不是 Popen()。这是因为我可以调用 Skype,并且实例不会像 Chrome 和 Thunderbird 那样绑定(bind)到终端。由于某种原因在启动时,每当执行 call() 的实例时,它都会阻止程序的其余部分执行。每当我从终端运行程序时都不会发生这种情况。

我认为问题是 Popen() 没有运行,但结果是 call() 不允许。将 call('skype') 更改为 Popen('skype') 已解决我的问题。

关于python - 启动程序不会启动应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20069565/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com