javaapplet与dll

javaapplet与dll,java,dll,applet,twain,Java,Dll,Applet,Twain,我正在编写一个web应用程序,允许用户上传直接从设备(即扫描仪)导入的文档 我想实现一个简单的web应用程序,它使用Java小程序来处理设备通信。根据本教程,我创建了jtwain.dll: 演示应用程序在独立模式下运行良好 现在我需要切换到applet,但我不知道如何将jtwain.dll分发到客户端,以使applet正常工作(此应用程序将在客户端为Windows XP或更高版本的intranet中使用)。也许您可以将dll包含到JAR文件中,并动态加载它。我很久以前就这样做了,但要点是,您希望

我正在编写一个web应用程序,允许用户上传直接从设备(即扫描仪)导入的文档

我想实现一个简单的web应用程序,它使用Java小程序来处理设备通信。根据本教程,我创建了jtwain.dll: 演示应用程序在独立模式下运行良好


现在我需要切换到applet,但我不知道如何将jtwain.dll分发到客户端,以使applet正常工作(此应用程序将在客户端为Windows XP或更高版本的intranet中使用)。

也许您可以将dll包含到JAR文件中,并动态加载它。

我很久以前就这样做了,但要点是,您希望从applet的代码库中提取DLL,将其存储在JAR中,然后将其复制到JRE的/lib/ext文件夹中

 //Where this is an applet
 URL codeBase= this.getCodeBase();
 URL twainUrl new URL(codeBase, "jtwain.dll");
 String javaHome=System.getProperty("java.home");
 //copy the contents of twainUrl to javaHome\lib\ext

您需要对小程序进行签名。

自1.6.0_10以来,小程序可以使用(嵌入式&)启动。JWS不仅可以更容易地部署本机,而且还可以按操作系统对下载进行分区(
.so
对于*nix,
对于Windows等)


当然,使用JWS启动的应用程序也可以做到这一点。自由浮动帧(或小程序)总是比嵌入式小程序更容易工作和部署。

谢谢,迈克。然后,一旦我在/lib/ext中复制了twain.dll的内容,我可以使用System.loadLibrary(“jtwain”)加载库,还是需要使用System.load(FULL/PATH/to/jtwain.dll)?