【发布时间】:2011-12-27 23:43:51
【问题描述】:
我创建了一个注册表,将我的.mike 文件与我创建的记事本应用程序相关联。
我认为问题出在注册表中,因为它只能运行.exe 文件,不过,我听说.batch 和.exe 文件是一回事。
我尝试打开使用我的应用程序创建的文本文件,并收到消息“[blank] is not a valid Win32 Application”。
批处理文件中双击文件后在应用程序中打开文件的命令是什么?
【问题讨论】:
-
就像一些教育信息一样:批处理文件是命令脚本文件(由操作系统的命令处理器执行 - 在最新的 Windows 版本上为
cmd.exe),而.exe(可执行文件)是由二进制代码组成的独立可执行文件(它在操作系统上自行运行)。它们与“同一事物中的一个”完全不同。 -
你是如何启动你的应用程序的?您是如何创建文件关联的?也许this TechNet article 可以帮助澄清事情?
-
@DanielPryden 我希望我能正确解释您的第一个问题,我通过双击 .jar 文件启动应用程序...?我通过创建类似于this blog post 的文本文档来创建文件关联(也许这不是正确的术语)。感谢您参考 TechNet 文章。我会看看我能做什么,然后告诉你会发生什么!
-
@Mike:好的,这是你的问题的一部分。
.jar文件本身也不是可执行文件,因此 Windows 使用这种相同的文件关联机制来确定.jar文件是用javaw.exe“打开”的,这将运行 Java 代码(通过启动定义的主类通过 JAR 中的MANIFEST.MF文件)。同样,正如 Ken White 所指出的,.bat文件也不是可执行文件,而是通过使用cmd.exe“打开”它们来启动。您需要将文件关联使用的命令行设置为完整命令行来启动您的应用程序,以javaw.exe开头。 -
@DanielPryden 感谢您对 .jar 文件的解释,当我在课堂上尝试了解它们时,它真的没有深入了解。然而,你上一篇文章的最后一行让我摸不着头脑......我不知道在命令提示符中输入什么来启动应用程序(以及如何将命令保存到文本文档中以及什么类型) .如果我理解正确,我将不得不将我的 .jar 文件移动到我的 jre6 文件夹中的 bin 子文件夹中才能成功执行命令......也许。
标签: java batch-file jar registry exe