让WPF窗体程序支持命令行方式运行的三种方式

有的时候,我们希望窗体程序也能接受命令行参数,以Console的方式运行。但是实现起来却要一些小技巧才能做到。如果做一个WPF程序,在Window的Loaded事件里写这样的语句:

Console.WriteLine("Hello word.");

然后从CMD运行之。会发现这个语句根本没有输出出来。如图1所示。

图1. 从命令行运行Wpf程序

对于这个问题有三个解决方案。三个方案各有优缺点,请酌情选择。

1.使用more命令:这种方案不需要修改任何代码,只要在从命令行运行时加个 “ | more”即可。如图2 所示。

图2. 使用more重定向输出

2.更改程序的Output Type:在VS的菜单中找到Project -> [Project Name] Properties…,选择Application选项卡。把其中的Output Type,从Windows Application更改成Console Application。后果是无论是不是从命令行运行,都有个Console窗口随着主窗体一起出来。如图3所示。

图3. Output Type改成Console Application的效果

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索命令
, 程序
, application
, 窗体
, 运行
, console
运行方式
wpf无边框窗体、wpf 自定义窗体、wpf 透明窗体、wpf 圆角窗体、wpf 去掉窗体边框,以便于您获取更多的相关知识。

时间: 2024-06-11 04:55:55

让WPF窗体程序支持命令行方式运行的三种方式的相关文章

mysql-怎样让程序支持命令行操作

问题描述 怎样让程序支持命令行操作 怎样编写支持命令行的程序,比如像mysql,gcc之类的为什么可以通过命令行可以进行操作?我的想法是,程序运行后开启一个线程不断监听键盘的输入,但是这样程序必须启动后才能执行这些命令.但是像gcc之类的可以直接执行命令 啊.还是和系统的shell有关呢. 解决方案 交互式编程,不要想的太偏激 解决方案二: 就是读取命令行输入,然后执行对应的逻辑,执行完了,就继续等待后一个命令的输入. 解决方案三: 就是读取命令行输入,然后执行对应的逻辑,执行完了,输出到控制台

WPF应用程序支持多国语言解决方案

原文:WPF应用程序支持多国语言解决方案 促使程序赢得更多客户的最好.最经济的方法是使之支持多国语言,而不是将潜在的客户群限制为全球近70亿人口中的一小部分.本文介绍四种实现WPF应用程序支持多国语言的解决方案. 效果如下图: Language - en-US (英文) Language - zh-CN (中文) 阅读目录 一.使用LocBaml工具 二.使用资源字典文件 三.使用.resx资源文件 四.实现动态切换程序显示语言 附:实现MessageBox支持多语言 一.使用LocBaml工具

vc-VC里怎样实现向另一应用程序发送命令行参数?需要调用哪些API函数?

问题描述 VC里怎样实现向另一应用程序发送命令行参数?需要调用哪些API函数? 现要写一个程序甲,甲向乙程序发送命令行参数,乙解析该参数并作相应操作, 现在问题是具体甲怎样向乙发送命令行参数?需要调用哪些API函数? (抱歉还是菜鸟,没有金币悬赏~谢谢各位大神了!) 解决方案 如果a是启动进程B的话,那么CreateProcess就可以启动B,同时带上命令行参数,B解析参数进行动作. 如果B已经启动了,这个其实就是进程通信,最简单的方式是发送消息,PostMessage.B根据消息进行对应的操作

如何获取其它程序的命令行参数

开发环境:VC6 Windows XP 测试环境:WindowsXP 我们都知道,在程序里获取命令行参数很简单,WinMain函数会以参数的形式传递给我们,或者可以调用API GetCommandLine 获取.但是GetCommandLine函数不接受参数,获取的只是自己程序的命令行参数.那么如果我们想获取别的应用程序的命令行参数应该怎么办呢? 有的同学说,既然GetCommandLine只能获取本程序的命令行参数,我们可以在其它进程里插入一个Dll,在那个进程的地址空间调用GetComman

Bash Getopts - 让你的脚本支持命令行参数

Bash Getopts - 让你的脚本支持命令行参数 以前我总想知道如何为我的Bash脚本创建命令行参数.经过搜索,我发现了2个函数可以处理这个问题,getopt 函数和 getopts 函数.我无意争论哪一个函数更好的.getopts 是一个shell内建命令,而且似乎比 getopt 更容易实现这个功能,所以在这篇文章里我准备讲讲getopts. bash getopts 开始的时候,我只试着处理传递给脚本的命令行参数.最后,我添加了另外一些有用的功能函数,使得这个脚本可以成为其他任何交互

同样的python程序在命令行中与python shell,eclipse中的运行结果不一样

问题描述 同样的python程序在命令行中与python shell,eclipse中的运行结果不一样 我在做leetcode题的时候写的python程序中包含如下一段代码: res = int(a, 2) + int(b, 2) ans = [] while res > 0: t = str(res % 2) 结果我先在python shell里面运行这个程序会报错: 然而我在python shell里面运行类似的代码,也把一个整型存放到res里,就没有问题: 同样在eclipse中运行也是正

WPF中实现PropertyGrid的三种方式

由于WPF中没有提供PropertyGrid控件,有些业务需要此类的控件.这篇文章 介绍在WPF中实现PropertyGrid的三种方式,三种方式都是俺平时使用时总结出 来的. 第一种方式:使用WindowsForm的PropertyGrid控件. 用过WPF的童鞋都晓得,可以通过WindowsFormsHost将WindowsForm的控件宿 主到WPF中使用.很简单,分为简单的3步. 第一步:引用dll:在WPF应用程序中引入System.Windows.Forms.dll. 第二步:引用命

Aria2一个命令行下运行、多协议、多来源下载工具

Aria2是一个命令行下运行.多协议.多来源http://www.aliyun.com/zixun/aggregation/10481.html">下载工具(HTTP/HTTPS.FTP.BitTorrent.Metalink),内建 XML-RPC 用户界面. Aria2是Linux 下一个不错的高速下载工具.由于它具有分段下载引擎,所以支持从多个地址或者从一个地址的多个连接来下载同一个文件.这样自然就大大加快了文件的下载速度.aria2 也具有断点续传功能,这使你随时能够恢复已经中断的

在命令行中运行“mvn compile”因为中文报错

在命令行中运行mvn compile 报错:  解决方法: 方式一: 使用maven-compiler-plugin插件,指定编码: Xml代码   <plugin>                   <groupId>org.apache.maven.plugins</groupId>                   <artifactId>maven-compiler-plugin</artifactId>