控制台应用/任务计划程序

时间:2014-11-25 16:56:26

标签: vb.net scheduled-tasks console-application

我有一个用VB Net编写的控制台应用,效果很好。现在我想使用任务调度程序运行它。问题是应用程序在最后一端有一个console.readline命令,可以让控制台窗口保持打开状态,直到用户点击进入。有没有办法测试应用程序是否在会话中运行?

如果我知道应用程序没有绑定到桌面控制台,我就不会将注释写入控制台,而是绕过最后的console.readline命令。

1 个答案:

答案 0 :(得分:3)

您应该为任务添加一个参数,以表明它是无人参与的。例如,在计划任务中传递/u。检查程序中的/u,确定是否应跳过console.readline

enter image description here

摘自msdn forum

Dim args() As String = Environment.GetCommandLineArgs()

' args(0) = Full path of executing program with program name
' args(1) = First switch in command - /u
if args(1) = "/u" then ....

或者您可以将Main()的签名更改为Public Sub Main(ByVal args() As String),而无需使用Dim args() As String = Environment.GetCommandLineArgs()