【问题标题】:java calling a C# program using an exe and xml filejava使用exe和xml文件调用C#程序
【发布时间】:2015-02-05 20:31:13
【问题描述】:

我们的 java 程序假设调用我们的供应商用 C# 创建的程序。我们有两个文件

1.exe文件

2.一个xml文件...它的内容是这样的

<doc>
  <assembly><name>someProgram</name></assembly>
  <members>
    <member name="P:SomeConnector.callSomeOtherProgram()">
      <summary>a method to connect to some program</summary>
      <remarks></remarks>
    </member>
  </members>
</doc>

我们对如何做到这一点一无所知。有人有想法吗?

【问题讨论】:

  • 做什么?需要做什么?在java中运行命令行?还是只运行程序?
  • 我编辑了我的帖子。 exe文件包含函数,我们的java程序应该调用它而不是手动启动exe文件并使用它的向导来做事
  • 所以现在你让我很困惑。如果你有一个exe文件,那是一个运行程序,这意味着你可以运行它,带或不带参数,但不能像类库那样调用它的函数。也许exe获取xml作为参数?
  • 手动运行 exe(双击)会显示一个向导,其中包含一个输入文本字段和一些执行不同任务的按钮。这个想法是让我们的 java 程序自动运行它并提供字段并执行我们想要触发的按钮来执行我们想要的功能。 Java 程序只是自动化手动完成的任何事情
  • 那个 xml 文件看起来有点像试图为您提供有关该程序的文档。您还没有提供有关如何使用 exe 的任何详细信息..(命令行参数?在您的程序中独立?)

标签: java c# dll


【解决方案1】:

在java中运行命令行使用:

Runtime rt = Runtime.getRuntime();
Process pr = rt.exec("MyOtherProg.exe progParameter1 progParameter2");

根据您的评论和问题判断,我认为您有一个class library,解决此问题的正确方法是创建您自己的 C# 程序,该程序使用给定的 xml 作为程序调用该类库上的不同方法args或其他方式

编辑

您的评论:

手动取消 exe(双击)会显示一个带有输入的向导 文本字段和一些执行不同任务的按钮。这个想法是 让我们的 java 程序自动运行它并提供字段 并执行我们想要触发的按钮来执行该功能 我们想要。 Java 程序只是自动执行手动完成的所有操作

答案:

好的,现在我们正在用火煮焦 :)

所以,此时我会去供应商那里询问我是否可以获得类库而不是当前的 ui,因为您希望它自动运行,无需人工干预。在此期间,我会检查您是否使用该程序获得其他 .dll 文件。如果是这样,请使用VS 调查他们。

最后一件事,如果一切都变糟了,你必须点击,它还没有丢失,但此时你有很多工作,我无法从这里帮助你,但我会发送您可以访问一个链接来开始您需要的内容,然后您将从那里进行探索:

【讨论】:

  • 谢谢,但是如何调用它的不同函数呢?假设我现在想调用“dotask1”,稍后调用“dotask2”
  • 手动运行 exe(双击)会显示一个向导,其中包含一个输入文本字段和一些执行不同任务的按钮。这个想法是让我们的 java 程序自动运行它并提供字段并执行我们想要触发的按钮来执行我们想要的功能。 java 程序应该自动执行手动完成的任何操作。这个可以吗?
  • @lecarpetrondookmarion 我已经编辑了答案,添加了指向鼠标机器人的链接。如果对你有帮助,请采纳答案
  • 是的,我也是这么想的。如果他们只是为我们提供了一个 .dll 文件,那就更容易了。只是想知道在exe文件中调用函数是否与java在.dll文件中调用函数的方式相同
  • @lecarpetrondookmarion 我不知道有什么办法,但也许有。但是,最好的方法是与供应商交谈
猜你喜欢
  • 1970-01-01
  • 2011-02-19
  • 2017-11-06
  • 1970-01-01
  • 1970-01-01
  • 2014-05-14
  • 2013-05-30
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多