【问题标题】:C# start app with command-line parametersC# 使用命令行参数启动应用程序
【发布时间】:2013-04-25 03:56:06
【问题描述】:

我有一个小应用程序(C# WPF),它会随系统自动启动,但我希望我的程序的主窗口从自动运行时不会显示(使用命令行参数autorun)。

我写了这段代码:

    protected override void OnStartup(StartupEventArgs e)
    {

        if (e.Args.Length == 0) 
            this.Run(new MainWindow());

        base.OnStartup(e);

    }

但它不起作用...那么我如何从App.xaml.cs 检查我的autorun 参数是否存在并防止打开MainWindow

谢谢。

【问题讨论】:

  • 您是否尝试过附加调试器并查看窗口打开的原因?
  • 调度程序打开窗口,当我尝试覆盖事件 OnStartup 时出现异常:InvalidOperationException

标签: c# command-line arguments


【解决方案1】:

在 App.xaml 文件顶部找到 StartupUri 属性并将其删除:

overrideOnStartup 如下

protected override void OnStartup(StartupEventArgs e)
{
    base.OnStartup(e);

    if (e.Args.Length == 0)
    {
        // no argument 
        // do stuff 
    }
    else
    {
        // with arguments
        // do stuff 
    }
    this.Shutdown();
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-07-25
    • 2016-09-03
    • 2017-03-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-04-30
    相关资源
    最近更新 更多