Java

本类阅读TOP10

·使用MyEclipse开发Struts框架的Hello World!(录像1)
·hibernate配置笔记
·AOP编程入门--Java篇
·linux下Tomcat 5.0.20 与 Apache 2 安装/集成/配置
·在win2003下整合了整合Tomcat5.5+ apache_2.0.53+ mod_jk_2.0.47.dll
·构建Linux下IDE环境--Eclipse篇
·Jsp 连接 mySQL、Oracle 数据库备忘(Windows平台)
·ASP、JSP、PHP 三种技术比较
·Tomcat5.5.9的安装配置
·AWT GUI 设计笔记(二)

分类导航
VC语言Delphi
VB语言ASP
PerlJava
Script数据库
其他语言游戏开发
文件格式网站制作
软件工程.NET开发
关于手动给ie加java plugin ,并且使用JBUILDER9下面自带的JDK

作者:未知 来源:月光软件站 加入时间:2005-2-28 月光软件站

如果次要运行带有swing的applet,总要安装一次jdk(从sun download的),有时机器里竟同时又好几个jdk,什么jbuilder的,weblogic的,bea server,从sun download的,等等,是不是太多了呢?机器有点乱,其实除了application server 以及其他的servlet(ejb)container,如果要单独运行jdk,会提高服务器的效率(其实小一点的server完全也可以用JBUILDER的自带的jdk,JBUILDER下面的tomcat就是很好的例子)
现在要求运行有swing的applet,要设定java plugin,和jre,当然你也可以选择安装jre 或jdk ,不过在你的机器上就要有多一个jdk目录了。既然JBUILDER已经带了jdk,那就应该好好利用,现手动设定如下(以juilder9为例):

1、拷贝juilder9下jdk1.4\jre\bin\jpicpl32.cpl,到系统的system32目录,保证控制面板里有java  plugin的图标。
*.cpl是控制面板程序,放在系统目录,会在控制面板里有相应的图标。


2、在注册表下加上(我的juilder9装在E盘)
[HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Runtime Environment\1.4.1_02]
"MicroVersion"="1"
"RuntimeLib"="e:\\JBuilder9\\jdk1.4\\jre\\bin\\client\\jvm.dll"
"JavaHome"="e:\\JBuilder9\\jdk1.4\\jre"

[HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Plug-in\1.4.1_02]
"UseJava2IExplorer"=dword:00000001
"JavaHome"="e:\\JBuilder9\\jdk1.4\\jre"
"HideSystemTrayIcon"=dword:00000000
保证控制面板里的java  plugin双击能够运行。

3、注册NPJPI141_02.dll,在命令行输入 regsvr32  E:\JBuilder9\jdk1.4\jre\bin\NPJPI141_02.dll 保证NPJPI141_02.dll 注册成功。

NPJPI141_02.dll 是一个COM组件,包含三个COM对象,分别为Java Plug-in 1.4.1_02 <applet> 转向器 和相应Java Runtime Environment 1.4.1_02链接器,classid分别为8AD9C840-044E-11D1-B3E9-00805F499D93,CAFEEFAC-0014-0001-0002-ABCDEFFEDCBA,CAFEEFAC-0014-0001-0002-ABCDEFFEDCBB

它同通过提供一组com接口使得ie在浏览带有applet的页面时,原来是通过微软的java虚拟机(在system32目录的一个msjava.dll文件),重新转向到sun 的jre环境。

4、因为NPJPI141_02.dll的注册过程,在注册表的相应位置没有正确的设置(NPJPI141_02.dll在注册表的注册文件名为NPJAVA141_02.dll,这可就是最大的错误),所以最后还要手动的修改注册表。

[HKEY_CLASSES_ROOT\CLSID\{8AD9C840-044E-11D1-B3E9-00805F499D93}\InprocServer32]
@="E:\\JBuilder9\\jdk1.4\\jre\\bin\\npjpi141_02.dll"


[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{8AD9C840-044E-11D1-B3E9-00805F499D93}\InprocServer32]
@="E:\\JBuilder9\\jdk1.4\\jre\\bin\\npjpi141_02.dll"

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{CAFEEFAC-0014-0001-0002-ABCDEFFEDCBA}\InprocServer32]
@="E:\\JBuilder9\\jdk1.4\\jre\\bin\\NPJPI141_02.dll"

[HKEY_CLASSES_ROOT\CLSID\{CAFEEFAC-0014-0001-0002-ABCDEFFEDCBA}\InprocServer32]
@="E:\\JBuilder9\\jdk1.4\\jre\\bin\\NPJPI141_02.dll"


[HKEY_CLASSES_ROOT\CLSID\{CAFEEFAC-0014-0001-0002-ABCDEFFEDCBB}\InprocServer32]
@="E:\\JBuilder9\\jdk1.4\\jre\\bin\\NPJPI141_02.dll"

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{CAFEEFAC-0014-0001-0002-ABCDEFFEDCBB}\InprocServer32]
@="E:\\JBuilder9\\jdk1.4\\jre\\bin\\NPJPI141_02.dll"

都是文件名称错误,修改NPJPI141_02.dll包含的三个com对象指向正确的文件名。

5、修改msjava.dll转向SUN 的JRE环境。

[HKEY_CLASSES_ROOT\CLSID\{08B0E5C0-4FCB-11CF-AAA5-00401C608501}\TreatAs]
@="{CAFEEFAC-0014-0001-0002-ABCDEFFEDCBB}"

classid为08B0E5C0-4FCB-11CF-AAA5-00401C608501的com对象被包含在msjava.dll里。是ms java 虚拟机的一部分。

6、最后一步可做可不做,没有的话好像也可以运行。

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Active Setup\Installed Components\{08B0E5C0-4FCB-11CF-AAA5-00401C608500}]
"KeyFileName"="E:\\JBuilder9\\jdk1.4\\jre\\bin\\ActPanel.dll"

运行控制面板里的java  plugin程序,进行设定,发现ie的选项里详细设定也有了用sun 虚拟机代替ms 的虚拟机的选项。运行swing的applet 和awt的applet 均可实现,任务栏也出现了期待已久咖啡图标,applet 能正常显示。

                                                         全文完 

                                                                                          


 




相关文章

相关软件