2

Javaアプレットでcmdコマンドを実行しようとしています。このコードを試しました

import java.io.InputStream;
import java.io.IOException;
import java.applet.Applet;
import java.awt.*;
public class execute extends Applet{
String output="";
public void init(){ 
try {
// Execute command
String command = "MYCMDCOMMAND";
Process child = Runtime.getRuntime().exec(command);
// Get the input stream and read from it
InputStream in = child.getInputStream();
int c= in.read();
while ((c = in.read()) != -1) {
output =output+((char)c);
}
in.close();
}   
catch (IOException e) {
}
System.out.println(output);
}
public void paint(Graphics g){
g.drawString(output,60,100);
}
}

次に、この html ファイルを作成し、同じディレクトリに保存します。

<html>
<head><title>Applet</title>
<body>
<applet code="execute.class",height="200" width="200">
</body>
</html>

ここでやろうとしているのは、アプレットで ls シェル コマンドを実行し、結果を表示することです。

コードはエラーなしでコンパイルされます。しかし、ブラウザーで html ファイルを開くと、灰色の四角が表示されます。

これは、何も得られないセキュリティ上の問題のためですか? それとも、コードのエラーが原因ですか?

4

1 に答える 1

0

いくつかのことに注意する必要があります。

  1. コンパイルした後、Html ファイルを .bin ファイルにコピー & ペーストする必要があります。
  2. HTML ファイル名は Applet で、クラス名は execute.class であるため、パッケージがない場合は、html ファイルを「PACKAGENAME/execute.class」として保存する必要があります。
  3. コントロール パネル / Java で、セキュリティを無効にする必要があります
于 2014-01-14T14:42:50.310 に答える