c# - 读取标准输出问题

标签 c# javascript stdout redirectstandardoutput

我想执行一个 javascript 来返回类似“GEORGE SMITH”的字符串。我想阅读该信息,但是当您运行此代码时,我得到:“指定的可执行文件不是有效的 Win32 应用程序”

我如何获取这些信息?。我试图从 .bat 调用 javascript,但无法从那里获取输出。谁能帮帮我?

这是代码:

{
    Process proc = new Process();

    ProcessStartInfo startInfo = new ProcessStartInfo();
    startInfo.CreateNoWindow = true;
    startInfo.UseShellExecute = false;
    startInfo.RedirectStandardOutput = true;
    startInfo.FileName = "cardholder.js";
    startInfo.WindowStyle = ProcessWindowStyle.Hidden;
    proc.StartInfo = startInfo;
    proc.Start();

    nombreApellido = proc.StandardOutput.ReadToEnd();

    proc.Close();
    proc.Dispose();
}

最佳答案

javascript 文件不是可执行文件,您无法运行它。

您需要运行 wscript.exe 并将 cardholder.js 作为命令行参数传递:

startInfo.FileName = "wscript.exe";
startInfo.Arguments= "cardholder.js";

关于c# - 读取标准输出问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5246695/

相关文章:

c# - 将查询字符串添加到 ASP.NET MVC 中的 HtmlHelper

c# - 如何从代码更新 Blazor 静态布局

bash - 在 Bash 中重定向 stderr 和 stdout

java - C++读取java进程输出

python - 为什么 python 在控制台和管道中打印 unicode 字符串时表现不一样?

c# - Nexus 和为 .NET 应用程序上传工件

c# - 从 'using' 语句的范围内返回?

javascript - 在循环中使用 .getValue()。这会导致很多电话。有没有更简单的方法来做到这一点?

Javascript onclick 提交按钮问题

javascript - 我如何阻止非特权用户的部分内容