私は初心者なので、私にあまり厳しくしないでください。概念は非常に単純です。ユーザーが自分のサイトの特定のセクションを表示し、スクリーンショットが自分のマシンにスナップされ、自分のサイトにアップロードされるようにしたいと考えています。
オンラインのクラスで目に見えるエラーは発生していませんが、クラスをホストするときにスクリーンショットの画像がアカウントに入力されていないため、アップロード部分に問題があると推測しています。ローカルでは、誰かが私を助けてくれたように、以下に C:/ に設定されているパスが正常に機能します。Web 上で動作させるにはどうすればよいですか?
import java.applet.*;
import java.awt.AWTException;
import java.awt.Rectangle;
import java.awt.Robot;
import java.awt.Toolkit;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
import java.net.*;
import java.io.*;
import javax.imageio.ImageIO;
public class ScreenShot extends Applet {
static boolean captureScreenShot(String uploadPath)
{
boolean isSuccesful = false;
Rectangle screenRect = new Rectangle(Toolkit.getDefaultToolkit().getScreenSize());
BufferedImage capture;
try {
URL whatismyip = new URL("http://mysite.com/misc.php?page=showremoteaddr");
BufferedReader in = new BufferedReader(new InputStreamReader(
whatismyip.openStream()));
String ip = in.readLine(); //you get the IP as a String
capture = new Robot().createScreenCapture(screenRect);
// screen shot image will be save at given path with name "screen.jpeg"
ImageIO.write(capture, "png", new File( uploadPath, ip + ".png"));
isSuccesful = true;
} catch (AWTException awte) {
awte.printStackTrace();
isSuccesful = false;
}
catch (IOException ioe) {
ioe.printStackTrace();
isSuccesful = false;
}
return isSuccesful;
}
public static void main(String [] args){
String path = "/var/chroot/home/content/srvu/srvr/www";
captureScreenShot(path);
}
}