Control-M - .exe 在计划任务中运行良好

Control-M - .exe works fine in scheduled task

我有一个用 C# 编写的旧可执行文件。
它在计划任务中工作正常,但在 Control-M 下就不行了。

作为作业安排时(作业类型:OS,一个简单的命令)

Unhandled Exception: System.IO.IOException: The handle is invalid.

at System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath) at System.Console.GetBufferInfo(Boolean throwOnNoConsole, Boolean& succeeded) at System.Console.get_WindowHeight() at myprogram.Program.Main(String[] args)

它似乎由于与屏幕交互而崩溃:get_WindowHeight
有一种方法可以在不更改源代码的情况下使它工作吗?

它可能会失败,因为没有实际的控制台 window。由于您无法获得不存在的 window 的高度(这将引发异常),因此您需要找到原始应用程序的源代码并重新构建它以不需要一个,或者为您的自动化工具找到一种创建实际控制台的方法 window.