每次我 运行 我的 windows 表单应用程序用 pythonnet 编写时,一个控制台 window 打开。找不到关闭它的方法
A console window opens alongside, each time I run my windows form application written in pythonnet. Can't find a way to turn that off
我正在使用 pythonnet 构建一个 windows 表单应用程序。我构建了一个非常基本的应用程序,代码如下!我使用 pyinstaller 将其转换为 exe。但是每次我 运行 exe 文件时,都会在 gui 应用程序旁边打开一个控制台 window。
我找不到关闭该控制台 window 的方法。
任何帮助将不胜感激!
p.s。我希望我的问题是有道理的!
代码如下:
import clr
clr.AddReference('System.IO')
clr.AddReference('System.Drawing')
clr.AddReference('System.Windows.Forms')
clr.AddReference('System.Threading')
import System
import System.IO
import System.Drawing
import System.Windows.Forms
import System.Threading
class homePage(System.Windows.Forms.Form):
def __init__(self):
self.Text = "AppTest1"
self.BackColor = System.Drawing.Color.FromArgb(200, 150, 190)
self.ClientSize = System.Drawing.Size(600, 600)
def run(self):
System.Windows.Forms.Application.Run(self)
def main_form_thread():
app_form = homePage()
app_form.run()
if __name__ == "__main__":
main_form_thread()
我在网上得到的答案是关于如何通过创建一个新的进程对象并将其 UseShellExecute 设置为 false,从我的新代码中 运行 一个外部 exe 文件。但我不想从另一个 exe 文件调用我的 exe 文件,我希望能够 运行 主 exe 文件而不打开控制台 window。
另外,我无法让 System.Diagnostics.Process 在 pythonnet 中工作。
p.s。我刚开始使用 pythonnet。
好的!我知道了!!
结果我的问题错了!
我应该问,在使用 PyInstaller 构建时,我应该如何禁用控制台 window。
这个问题已经得到回答 here
如果您懒得点击链接,那么只需在使用 pyinstaller 构建时添加此标志 --noconsole
,就像这样
pyinstaller --noconsole your_script_name.py
我正在使用 pythonnet 构建一个 windows 表单应用程序。我构建了一个非常基本的应用程序,代码如下!我使用 pyinstaller 将其转换为 exe。但是每次我 运行 exe 文件时,都会在 gui 应用程序旁边打开一个控制台 window。 我找不到关闭该控制台 window 的方法。 任何帮助将不胜感激!
p.s。我希望我的问题是有道理的!
代码如下:
import clr
clr.AddReference('System.IO')
clr.AddReference('System.Drawing')
clr.AddReference('System.Windows.Forms')
clr.AddReference('System.Threading')
import System
import System.IO
import System.Drawing
import System.Windows.Forms
import System.Threading
class homePage(System.Windows.Forms.Form):
def __init__(self):
self.Text = "AppTest1"
self.BackColor = System.Drawing.Color.FromArgb(200, 150, 190)
self.ClientSize = System.Drawing.Size(600, 600)
def run(self):
System.Windows.Forms.Application.Run(self)
def main_form_thread():
app_form = homePage()
app_form.run()
if __name__ == "__main__":
main_form_thread()
我在网上得到的答案是关于如何通过创建一个新的进程对象并将其 UseShellExecute 设置为 false,从我的新代码中 运行 一个外部 exe 文件。但我不想从另一个 exe 文件调用我的 exe 文件,我希望能够 运行 主 exe 文件而不打开控制台 window。 另外,我无法让 System.Diagnostics.Process 在 pythonnet 中工作。
p.s。我刚开始使用 pythonnet。
好的!我知道了!! 结果我的问题错了! 我应该问,在使用 PyInstaller 构建时,我应该如何禁用控制台 window。 这个问题已经得到回答 here
如果您懒得点击链接,那么只需在使用 pyinstaller 构建时添加此标志 --noconsole
,就像这样
pyinstaller --noconsole your_script_name.py