- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
当我尝试在 Windows 中并排 (SxS) 运行 Java 应用程序时,我遇到了一个非常模糊的问题。
我已经完成了创建 java.exe.config 和 java.exe.manifest 文件的所有准备工作,它们与 JRE 位于同一文件夹中。
当我从命令行(通过启动 .bat 文件)调用它时,应用程序运行正常。 .bat 文件使用 SxS 配置的 Java(这是我运行应用程序的框中唯一的一个)
但是,当我尝试从另一个 Java 进程(使用 Runtime.getRuntime.exec()
)或 ProcessBuilder
调用它时它似乎完全忽略了 SxS 配置,并且子 Java 进程提示它找不到 COM 库,这就是我必须执行 SxS 的原因。我必须补充一点,父 Java 进程也由为 SxS 配置的 Java.exe 启动。因此,我假设“Runtime.getRuntime(), ProcessBuilder()
”会给我 Java SxS 加载环境。
使用一些 Windows 工具(procexp.exe、procmon.exe)做一些进一步的调试,我发现了以下内容:当我从 .bat 文件启动应用程序时,.manifest 文件通常由 crss.exe 读取(因为它应该是)。但是,当 Java 生成另一个进程时,根本不会考虑 .manifest 文件。我能想到的一个可能的问题是启动该进程的 Java.exe 的当前目录与 java.exe.manifest 文件所在的目录不同。
我唯一能想到的是 java 启动器中的错误/问题(或者他们称之为功能)。
有没有人遇到过类似的问题?任何人都可以阐明以上内容吗?非常感谢。
到目前为止,我已经尝试了以下方法:
Runtime.getRuntime().exec(). <b>DID NOT WORK</b>
从父 Java 进程调用了 java 进程
Invoked the .bat file from a parent Java process using Runtime.getRuntime().exec()
. 没用最佳答案
我在我的电脑上测试过它,它可以工作。尝试:
关于Java SxS(并排)配置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18823225/
从我的 last question 跟进:我执行了 Steve 提供的所有步骤,SxS Parse 日志为空,但我仍然收到“Class Not Registered”错误。 我知道我的 .exe 正在
当我在 PowerShell 中运行此命令时出现错误: Install-WindowsFeature -Name Web-Net-Ext -source D:\Sources\SxS Install-
我目前正在通过虚拟化 NtDll.dll 级别的所有文件/注册表操作来开发一个简单的应用程序虚拟化层。 但是当我从虚拟路径启动应用程序时,如果实际主机中不存在虚拟路径,则应用程序将无法启动。 这是示例
我有两个关于激活上下文 API 和 SxS list 的问题。它们看起来很简单,但我仍然找不到适合它们的答案。 我有两个文件名为 foo.dll 和 bar.dll 的 dll 库,它们都带有嵌入式
当我尝试在 Windows 中并排 (SxS) 运行 Java 应用程序时,我遇到了一个非常模糊的问题。 我已经完成了创建 java.exe.config 和 java.exe.manifest 文件
我的程序拒绝在某些 Windows 7 计算机上运行。使用 sxstrace,可执行文件声称需要 Microsoft.VC80.CRT/MFC 版本 8.0.50727.6195 和 8.0.5060
我有一个程序拒绝在某些 Windows 7 机器上运行。使用 sxstrace,可执行文件声称需要 Microsoft.VC80.CRT/MFC 版本 8.0.50727.6195 和 8.0.506
我有 VS 2008。我升级到 VS 2010,然后卸载了 VS 2008。 我有一个在我的机器上运行的测试,但无法在构建实验室的机器上加载。经过一些调试后,我意识到测试可执行文件仍然依赖于 msvc
有一些问题询问如何让 Registration free COM 工作,这不是其中之一。我有一个 DirectShow 视频源过滤器(目录 860BB310-5D01-11d0-BD3B-00A0C9
以前推荐的是"Do not write in-process shell extensions in managed code." 但使用 .NET Framework 4 和 In-Process
我正在编写我自己的 Windows Loader 版本(尽管是一个非常简单的版本),到目前为止一切顺利。但是,在递归遍历已加载模块的导入表时,我遇到了一些小问题。 对于大多数依赖项,一切都很顺利,我可
我有一个用 VB6 编写的项目,它使用了一个 UserControl,该项目在注册 OCX 时运行良好,但如果我使用并排 list 运行同一个项目,则会导致错误。 我可以毫无问题地使用控件,只要它是静
从 VS 2005 开始,我发现不可能简单地针对 MS 运行时构建一个 dll 并将它们一起部署 (http://www.ddj.com/windows/184406482)。我对 manifest、
问题简而言之:当 A.dll 依赖于另一个 SXS-lib(在我的例子中是 MSVCR90.DLL)时,如何使用 p/invoke 从 DLL A.dll 调用函数? 我想使用 pinvoke 调用
我有一个包含预构建 Dll 模块的项目,该模块是过去一段时间使用 Visual Studio 9 构建的。 现在项目的EXE已经构建,使用Visual Studio 9的SP1。 当我们部署 EXE
在将我的机器单独放置几周后,我回来做一些使用 Qt-using-VC10 的工作。麻烦的第一个迹象是 QtCreator 关于“cl”未被识别的错误,这让我发现 C:\Windows\System32
这通常是通过在与可执行文件一起驻留的 list 文件中指定 DLL 依赖项来完成的。但是,我不知道如何在 Python 中完成此操作。加载 DLL 不是问题,而是在 SXS 中找到要加载的适当 DLL
为了简化我的问题,我会尽量简短: 我正在使用 Unity 的专业版,并且我有 2 个 DLL: .NET 3.5 程序集(充当 COM 客户端) .NET 4.0 程序集(具有通过 COM 公开的接口
在哪里可以找到描述 Visual Studio 2010 C/C++ 运行时链接和部署策略更改的官方说明、知识库文章或其他文档? 在 Visual Studio 2008(带有 VC90 运行时)下,
我正在尝试在 Windows 7 机器上运行作为独立 Matlab 应用程序构建的数据分析工具。我已经安装了 Matlab Compiler Runtime (MCR) 库版本 7.11, 2009b
我是一名优秀的程序员,十分优秀!