为了账号安全,请及时绑定邮箱和手机立即绑定

如何同时支持 UWP 命令行和 UWP UI?

如何同时支持 UWP 命令行和 UWP UI?

C#
慕码人8056858 2021-07-09 18:15:52
我当前的应用程序如下所示:public static class Program{    //Default code-gen unless we include DISABLE_XAML_GENERATED_MAIN in the build properties.    static void Main(string[] args)    {        IActivatedEventArgs activatedArgs = AppInstance.GetActivatedEventArgs();        if(ActivationKind.CommandLineLaunch.Equals(activatedArgs?.Kind))        {            CommandLineActivatedEventArgs cmdLineArgs = activatedArgs as CommandLineActivatedEventArgs;            CommandLineActivationOperation operation = cmdLineArgs.Operation;            string activationPath = operation.CurrentDirectoryPath;            System.Console.WriteLine("foo");        }        else        {            global::Windows.UI.Xaml.Application.Start((p) => new App());        }    }}我的清单:    <Application Id="App" Executable="$targetnametoken$.exe" desktop4:SupportsMultipleInstances="true">    <uap5:Extension Category="windows.appExecutionAlias" [...]根据用户是从命令提示符还是从开始菜单启动应用程序,UI 将如图所示显示。但是当用户从 cmd 启动应用程序时,不会显示 Console.WriteLine("foo") 的输出。因此,我添加了desktop4:Subsystem="console".This 导致控制台窗口被启动,无论用户是从 startmneu 还是命令行启动应用程序。如何确保仅通过从命令提示符开始显示控制台窗口?我是否必须创建第二个 uwp 项目?
查看完整描述

1 回答

?
白衣染霜花

TA贡献1796条经验 获得超10个赞

UWP 控制台应用程序还有许多其他注意事项。例如只有 C++ /WinRT 和 C++ /CX UWP 应用程序可能是控制台应用程序。并且它必须以桌面或物联网项目为目标。形成您的代码,我可以确定它是 UWP 应用程序。而且即使是 UWP 应用程序,也无法在UIConsole两种模型中启动它。因为,它可能不会创建窗口。


查看完整回答
反对 回复 2021-07-18
  • 1 回答
  • 0 关注
  • 167 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信