由任务计划程序启动时隐藏 C# winform 应用程序窗口

Posted

技术标签:

【中文标题】由任务计划程序启动时隐藏 C# winform 应用程序窗口【英文标题】:Hide C# winform App Window When Started by Task Scheduler 【发布时间】:2014-08-04 05:00:31 【问题描述】:

我已经在谷歌上搜索过这个并阅读了一些资源,但我找不到一个好的答案。 有谁知道如何防止winform App窗口在任务调度程序启动时打开?

【问题讨论】:

将主表单的 Visible 设置为 false 应该可以解决问题 @sallushan 我相信 OP 想知道应用程序是由任务计划程序还是用户启动的。 奇怪的问题,大多数程序员都想知道如何使它可见。默认情况下,任务调度程序使用自己的桌面运行程序。您是否真的尝试过,或者您只是认为这将是一个问题? @Hans Passant 我试过了! 我已经解决了***.com/questions/6568736/… 【参考方案1】:

您可以像这样在 Shown 事件中隐藏表单:

this.Shown += new System.EventHandler(this.Form1_Shown);
private void Form1_Shown(object sender, EventArgs e)

    Hide();

【讨论】:

【参考方案2】:

尝试使用命令行参数:

static class Program 

  [STAThread]
  static void Main() 
    if (Environment.GetCommandLineArgs().Contains(@"/fromTask")) 
      // run something else...
     else 
      Application.EnableVisualStyles();
      Application.SetCompatibleTextRenderingDefault(false);
      Application.Run(new Form1());
    
  

在任务计划程序中安排程序时,请务必包含参数/fromTask

【讨论】:

谢谢。我找到了答案***.com/questions/6568736/… @facebook-100002276297329 您的问题似乎不是关于如何使用任务计划程序。 但是这样可以隐藏我的弹出窗口!Thx

以上是关于由任务计划程序启动时隐藏 C# winform 应用程序窗口的主要内容,如果未能解决你的问题,请参考以下文章

C# winForm启动最小化到任务栏右侧通知栏并交互操作

计划启动 C# 应用程序无法为登录用户显示表单

如何在隐藏控制台的情况下运行 C# 控制台应用程序

Windows任务计划程序启动程序时如何获取应用程序文件夹

C# winform 托盘图标问题?

C# AppDomain 类