C#远程桌面遗留控制台应用程序[关闭]
Posted
技术标签:
【中文标题】C#远程桌面遗留控制台应用程序[关闭]【英文标题】:C# Remote Desktop legacy console application [closed] 【发布时间】:2021-01-08 17:04:10 【问题描述】:我们有一个旧的旧式控制台应用程序 (.exe ingres ABF),从用户桌面运行时非常慢(因为它将 sql 提交到远程服务器)。
同一个应用程序可以在与数据库相同的服务器上运行并且运行良好(目前是 Windows Server 2016)。
但除了授予所有用户对服务器的远程桌面访问权限。
他们是否可以从那里的桌面调用这个应用程序,但让它在服务器上运行?
【问题讨论】:
【参考方案1】:当我想从 Java 控制台应用程序交互和读取输出时,我遇到了类似的问题。我所做的是将它作为 C# Process
运行,您可以配置应用程序的输入和输出。
var appInfo = new ProcessStartInfo
FileName = "your-app.exe",
Arguments = "arguments with spaces in between",
RedirectStandardInput = true, // This is what changes
RedirectStandardOutput = true, // where the output goes
WorkingDirectory = "DirectoryOfExe/"
;
var app = new Process();
app.StartInfo = appInfo;
app.OutputDataReceived += (s, e) =>
Console.WriteLine(e.Data);
;
app.Start();
app.BeginOutputReadLine();
var sw = app.StandardInput;
while (true)
sw.WriteLine(Console.ReadLine());
【讨论】:
@贝克汉姆·怀特。非常感谢。我怎样才能按下一个键? @NiallO'Dwyer 您能否详细说明您的问题? 所以应用程序正在运行,我想按 F3、F4 或任何键盘键(在应用程序中)? @NiallO'Dwyer 这是个好问题。我不知道该怎么做...以上是关于C#远程桌面遗留控制台应用程序[关闭]的主要内容,如果未能解决你的问题,请参考以下文章