从任务计划程序调试Windows控制台应用程序

时间:2019-03-16 06:11:03

标签: c# .net visual-studio-2017 scheduled-tasks windows-scheduler

在发布此内容之前,我还检查了有关堆栈溢出的先前问题。

这是我的问题:

我在Visual Studio 2017上创建了Windows控制台应用程序。该应用程序应该从表中获取一些数据并定期发送电子邮件。最初,我创建了Windows服务,并且可以正常运行,但后来我决定从Task Scheduler中执行此服务,因为更改计划很容易。

主要代码如下:

public static void Main(string[] args)
{
   RetrieveData();
}

stativ void RetrieveData()
{
    // Fetch data and send mails
}

有两个问题:

(1)我无法将其附加到进程。首先的问题是,当我以调试模式启动它时,在尝试附加到进程时,应用程序在击中Main时立即退出。

(2)当我单击“附加到进程”时,.exe名称没有出现在进程名称下。

从任务计划程序执行该应用程序时,如何调试该应用程序?当Task Scheduler触发此作业时,它甚至没有执行。

1 个答案:

答案 0 :(得分:1)

尝试使用Debugger.Launch()

将此行放在main的第一行中,在此项目中将Visual Studio保持打开状态,编译项目,安排任务以运行新的已编译可执行文件,然后等待程序要求您打开Visual Studio进行调试。