javascript(桌面应用程序)和 C# 之间的交互

发布于 2024-08-25 05:40:35 字数 328 浏览 11 评论 0原文

我正在为我的桌面编写一些应用程序来处理某些服务。 我用 C# 编写了一个计算某些内容的应用程序(我们称之为 cl.exe) 我创建了一个启动 cl.exe 的 .bat 文件。 我想从我的 javascript 调用该 .bat 文件,因此我使用 WShell.Run(**.bat)。

2问题:

  1. javascript程序不会 继续直到 cl.exe 结束吗? (它是同步的?)
  2. cl.exe 返回一个值。怎么可以 javascript 接受它(它是一个 调用 .bat 的 javascript 程序 包装执行的文件 cl.exe)?

谢谢

I am writing for my desktop some application for handling some services.
I wrote in C# an application that calculates something (lets call it cl.exe)
I created a .bat file that starts the cl.exe.
I want to call that .bat file from my javascript so I WShell.Run(**.bat).

2 question:

  1. The javascript program will not
    continue till the cl.exe will end ?
    (It is synchronized ?)
  2. The cl.exe returns a value. How can
    the javascript take it (It is a
    javascript program that call .bat
    file that wrapp the execution of the
    cl.exe) ?

Thanks

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

冷情 2024-09-01 05:40:35

要使其等待,WShell.Run 的第三个参数应设置为 true。请参阅 http://msdn.microsoft.com/en- us/library/d5fk67ky(VS.85).aspx

在这种情况下,WShell.Run 还会返回批处理文件的返回值。如果我没记错的话,bat 文件将返回上次可执行文件运行的错误代码。如果没有,可以使用批处理EXIT命令设置

To make it wait, the 3rd parameter of WShell.Run should be set to true. See http://msdn.microsoft.com/en-us/library/d5fk67ky(VS.85).aspx

In that case, WShell.Run also returns the return value of the batch file. If I remember correctly, the bat file will return the error code from the last executable run. If not, you can set it with the batch EXIT command

半世晨晓 2024-09-01 05:40:35

为了返回该值,我使用了简单的 System.Enviorment.Exit(TTT) ,其中 TTT 是我想要返回的整数。

当我开始的时候,我的答案一直是零。我发现为了使程序同步,必须以不同的方式调用它。

WshShell.Run(要运行的exe文件, 3, true);

真实的东西在这里是为了同步。

To return the value, I used simple the System.Enviorment.Exit(TTT) whert TTT is the integer I wanted to return back.

When I started it I got all the time zero as an answear. I discovered that inorder the program be synchronaized it must be called differently.

WshShell.Run(exe file to be run, 3, true);

The true is here for to be synchronaized.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文