2

系统:Win 7 64位

JMF 通过启动 JMstudio 在我的系统上工作,它会找到我的驱动程序并启动我的麦克风和网络摄像头。但是当我运行 Netbeans 代码时它不起作用。

我已按照此网站上的这些步骤在 Win 7 64 位上安装 JMF,但没有成功: https ://forums.oracle.com/thread/2134405 。我已经搜索了与此问题相关的所有其他答案,但均未成功。如我在此处粘贴的链接中所述,它应该适用于我的 64 位。

我已经安装了 32 位 Java JDK,将 DLL 从 JMF 安装文件夹移动到 System32 和 SysWOW64,代码中没有错误,并且添加了 JMF.jar。

有什么解决办法吗?当我运行它时,我收到以下错误:

Exception in thread "VFW Request Thread" java.lang.UnsatisfiedLinkError: JMFSecurityManager: java.lang.UnsatisfiedLinkError: C:\Windows\System32\jmvfw.dll: Can't load IA 32-bit .dll on a AMD 64-bit platform
    at com.sun.media.JMFSecurityManager.loadLibrary(JMFSecurityManager.java:206)
    at com.sun.media.protocol.vfw.VFWCapture.<clinit>(VFWCapture.java:19)
    at com.sun.media.protocol.vfw.VFWSourceStream.doConnect(VFWSourceStream.java:241)
    at com.sun.media.protocol.vfw.VFWSourceStream.run(VFWSourceStream.java:763)
    at java.lang.Thread.run(Thread.java:724)
4

2 回答 2

4

我发现我的系统仍在运行 64 位 Java,而我安装了 32 位。我的系统上仍然存在 Java 64 位的痕迹,因此我删除了所有 Java 痕迹,然后在我的系统上安装了最新的 Java JDK 7。复制、粘贴 C:\Program Files (x86)\Java 到 C:\Program Files\Java,然后将 PATH 和 CLASSPATH 更改为 C:\Program Files\Java。cmd 中的 java -version 在此之后工作,并且带有 JMF.jar 的 Netbeans 7.4 中的项目运行并捕获了我的网络摄像头。

于 2013-10-23T14:06:55.617 回答
0

我也掉进了这个多JVM配置32/64位的陷阱,确保.DLL版本与JVM相匹配,即32位应该在32位上运行。这同样适用于 64 位。

更多信息请参考eclipse论坛: https ://www.eclipse.org/forums/index.php/t/781808/

于 2014-12-08T06:46:25.733 回答