-1

我正在构建我的 Win7 嵌入式操作系统。当我运行一个小型 Java 程序试图从中打开文件时,出现以下错误。谁能告诉我这里缺少哪个 Windows 库/包/程序集?谢谢,

Start LogViewer..............
Exception in thread "AWT-EventQueue-0" java.lang.RuntimeException: java.io.IOExc
eption: Could not get shell folder ID list
        at sun.awt.shell.Win32ShellFolderManager2$ComInvoker.invoke(Unknown Sour
ce)
        at sun.awt.shell.Win32ShellFolder2.getFileSystemPath(Unknown Source)
        at sun.awt.shell.Win32ShellFolder2.composePathForCsidl(Unknown Source)
        at sun.awt.shell.Win32ShellFolder2.<init>(Unknown Source)
        at sun.awt.shell.Win32ShellFolderManager2.getNetwork(Unknown Source)
        at sun.awt.shell.Win32ShellFolder2$7.call(Unknown Source)
        at sun.awt.shell.Win32ShellFolder2$7.call(Unknown Source)
        at sun.awt.shell.Win32ShellFolderManager2$ComInvoker.invoke(Unknown Sour
ce)
        at sun.awt.shell.Win32ShellFolder2.getFileSystemPath(Unknown Source)
        at sun.awt.shell.Win32ShellFolder2.access$300(Unknown Source)
        at sun.awt.shell.Win32ShellFolder2$11.call(Unknown Source)
        at sun.awt.shell.Win32ShellFolder2$11.call(Unknown Source)
        at sun.awt.shell.Win32ShellFolderManager2$ComInvoker.invoke(Unknown Sour
ce)
        at sun.awt.shell.Win32ShellFolder2.getChildByPath(Unknown Source)
        at sun.awt.shell.Win32ShellFolderManager2.getPersonal(Unknown Source)
        at sun.awt.shell.Win32ShellFolder2$10.call(Unknown Source)
        at sun.awt.shell.Win32ShellFolder2$10.call(Unknown Source)
        at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)
        at java.util.concurrent.FutureTask.run(Unknown Source)
        at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source
)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
        at sun.awt.shell.Win32ShellFolderManager2$ComInvoker$3.run(Unknown Sourc
e)
        at java.lang.Thread.run(Unknown Source)
Caused by: java.io.IOException: Could not get shell folder ID list
        at sun.awt.shell.Win32ShellFolder2.getFileSystemPath0(Native Method)
        at sun.awt.shell.Win32ShellFolder2.access$900(Unknown Source)
        at sun.awt.shell.Win32ShellFolder2$8.call(Unknown Source)
        at sun.awt.shell.Win32ShellFolder2$8.call(Unknown Source)
        ... 23 more

编辑:这个java程序包包含一个jvm,多年来一直在不同的windows机器上运行。它不依赖于目标机器的 jvm。

4

1 回答 1

0

似乎您的应用程序通过 Java 运行时正在调用 shell32.dll 中的函数,检查 DLL 是否在您当前的操作系统安装中,如果不是,则在图像配置编辑器中搜索包含它的软件包。

于 2010-11-26T12:50:59.063 回答