Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it
    Registrato dal
    Nov 2002
    Messaggi
    45

    [java] chiamare un processo: Browser

    Salve a tutti, nella applicazione che sto realizzando ho bisogno di chiamare il browser di sistema, nessun problema:

    String path= ...path del browser...;
    String programPath= ...path di quello che voglio aprire... ;

    String[] command={path, "",programPath+"\\CreatiWizard\\index.htm"};
    try {
    Process p = Runtime.getRuntime ().exec (command);
    }
    catch (Exception nT) {
    System.out.println("Errore");
    }

    Fin qua tutto ok, però avrei bisogno che quando apro il browser questo, se esiste già una finestra aperta, utilizasse quella presente invece che aprirne una nuova... altrimenti rischio di arrivare alla fine dell'esecuzione del programma con 12 finestre di ie aperte... e non è molto pratico.

    Grazie a tutti

    Saluti

    kekko6

  2. #2
    Utente di HTML.it
    Registrato dal
    Mar 2002
    Messaggi
    643
    Scusa se mi intrometto senza risponderti.
    Se voglio lanciare un comando, ad esempio dir per visualizzare il contenuto della mia directory, cosa devo scrivere (usando Windows XP) ?

    Ho provato così:
    Process proc = Runtime.getRuntime().exec("command /c dir");

    o così:
    Process proc = Runtime.getRuntime().exec("start command /c dir");


    Cosa c'è di sbagliato ?

  3. #3
    Utente di HTML.it
    Registrato dal
    Mar 2002
    Messaggi
    643

    Re: [java] chiamare un processo: Browser

    Originariamente inviato da kekko6
    Salve a tutti, nella applicazione che sto realizzando ho bisogno di chiamare il browser di sistema, nessun problema:

    String path= ...path del browser...;
    String programPath= ...path di quello che voglio aprire... ;

    String[] command={path, "",programPath+"\\CreatiWizard\\index.htm"};
    try {
    Process p = Runtime.getRuntime ().exec (command);
    }
    catch (Exception nT) {
    System.out.println("Errore");
    }

    Fin qua tutto ok, però avrei bisogno che quando apro il browser questo, se esiste già una finestra aperta, utilizasse quella presente invece che aprirne una nuova... altrimenti rischio di arrivare alla fine dell'esecuzione del programma con 12 finestre di ie aperte... e non è molto pratico.

    Grazie a tutti

    Saluti

    kekko6
    Se vuoi utilizzare una finestra già aperta in ambiente windows, usa questo codice:
    codice:
    String cmd = null;    
    Process p;    
    try  {        
    String os = System.getProperty("os.name");	       
     if (os != null && os.startsWith("Windows")) {           
      if (os.startsWith("Windows 9") || os.startsWith("Windows Me"))  // Windows 9x/Me               
       cmd = "start " + url;           
        else // Windows NT/2000/XP                
        cmd = "cmd /c start " + url;	            
        p = Runtime.getRuntime().exec(cmd);	        
        }    
        }    catch(IOException x)        {         // couldn't exec browser        
        System.err.println("Could not invoke browser, command=" + cmd);    
        }
    dove url è l'indirizzo della pagina che vuoi aprire.

  4. #4
    Utente di HTML.it
    Registrato dal
    Nov 2002
    Messaggi
    45
    Grazie per la tua risposta, c'è solo una cosa che non ho capito, dove è nel tuo codice che inserisco la path del browser, come faccio a dirgli con quale processo deve aprire l'url?

    Grazie mille

    Saluti

    kekko6

  5. #5
    Utente di HTML.it
    Registrato dal
    Mar 2002
    Messaggi
    643
    Originariamente inviato da kekko6
    Grazie per la tua risposta, c'è solo una cosa che non ho capito, dove è nel tuo codice che inserisco la path del browser, come faccio a dirgli con quale processo deve aprire l'url?

    Grazie mille

    Saluti

    kekko6
    Il codice non è mio.
    Comunque non gli inserisci il percorso del browser, semplicemente accedi ad una pagina Internet con la linea
    cmd = "cmd /c start " + url;
    dove al posto di url inserisci la pagina Internet che vuoi aprire.

    Del resto, prova ad aprire la shell del DOS, digita
    cmd /c start http://www.html.it
    (la linea che riporto qui è quella di XP altrimenti utilizza le altre, e in realtà anche le altre, omettendo cmd /c funzionano anche con XP ma l'apertura è più lenta)
    e vedrai che ti verrà aperto (se hai già una stessa finestra aperta, nella stessa finestra e non in un'altra) questo sito.

    .........................................

    Se invece vuoi aprire una nuova finestra (ma non chiedevi questo) inserisci

    Runtime.getRuntime().exec("PathDelTuoBrowser\\iexp lore.exe http://www.html.it");

    e sei a posto.

    ciao.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.