2012-01-20 174 views
0

我在我的小程序中使用了xuggler api。 xuggler的wiki说我不能在applet中使用它。但我用3台电脑试了一下。如果我可以将xugglers bin文件夹添加到系统环境路径变量并创建一个新的环境变量XUGGLE_HOME,我的小程序将工作。将xugglers库复制到目标计算机上没有问题。我想这样做的是类似的东西:在Java Applet中设置环境变量

  • 复制xuggler文件
  • 设置环境变量
  • 运行小程序
  • 删除xuggler文件
  • 删除环境变量

但可能是因为我正在applet中执行这些操作,所以环境变量的更改将不会在该applet运行时中生效。另一个问题是我如何更改环境变量。因为如果我使用.bat文件,它有一个限制,会导致路径变量畸形。而其他选择如vbscript和.reg文件不起作用(vbscript在一些计算机上允许访问被拒绝,.reg文件看起来像是有效,但不起作用)

因此,无论如何要先设置环境变量运行小程序?

感谢

编辑:其实我现在尝试不同的方法,它的工作就像一个魅力。现在我的网站上的小程序只将xuggle文件夹和我的主程序jar从zip文件复制到临时目录中。然后小程序启动一个zip文件的bat文件。蝙蝠文件集(而不是setx)变量并运行我的主jar。因为子进程得到父母的环境它的工作。在那个cmd窗口关闭之后,系统没有改变。只有我可以隐藏该cmd窗口。

那么,我说,我仍然想知道是否有可能在java中更改环境变量。

回答

0

如果只有小程序需要XUGGLE_HOME路径,则可以在applet中使用params。

<APPLET CODE="your.class" WIDTH=100 HEIGHT=100> 
    <PARAM NAME=XUGGLE_HOME VALUE="path"> 
</APPLET> 
+0

Xuggler api使用该路径,我不知道它在哪里调用xuggle_home路径。 – mefu

1

试试最新的Xuggler,它现在包含jar文件中的本机代码。我不确定它是否适用于小程序。如果确实如此,请让我们知道Xuggler支持别名。