Je cherche à ouvrir un fichier html avec le programme par défaut sur le
poste. J'ai bien trouvé Runtime.getRuntime().exec(maCommande)
Mais quelle commande lancer ???
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Stéphane Kolodziejczyk
"Julien C." a écrit dans le message de news:407c4b71$0$19501$
Bonjour,
Je cherche à ouvrir un fichier html avec le programme par défaut sur le poste. J'ai bien trouvé Runtime.getRuntime().exec(maCommande) Mais quelle commande lancer ???
Merci d'avance Julien.
package julien;
import java.io.IOException;
/** * <i>This class comes from javaworld at http://www.javaworld.com/javatips/jw-javatip66_p.html.</i> * * A simple, static class to display a URL in the system browser. * * Under Unix, the system browser is hard-coded to be 'netscape'. * Netscape must be in your PATH for this to work. This has been * tested with the following platforms: AIX, HP-UX and Solaris. * * Under Windows, this will bring up the default browser under windows, * usually either Netscape or Microsoft IE. The default browser is * determined by the OS. This has been tested under Windows 95/98/NT. * * Examples: * BrowserControl.displayURL("http://www.javaworld.com") * BrowserControl.displayURL("file://c:docsindex.html") * BrowserContorl.displayURL("file:///user/joe/index.html"); * * Note - you must include the url type -- either "http://" or "file://". * @author javaworld (tip 66) * @version 1.0 */
public class BrowserControl { // Used to identify the windows platform. private static final String WIN_ID = "Windows";
// The default system browser under windows. private static final String WIN_PATH = "rundll32";
// The flag to display a url. private static final String WIN_FLAG = "url.dll,FileProtocolHandler";
// The default browser under unix. private static final String UNIX_PATH = "netscape";
// The flag to display a url. private static final String UNIX_FLAG = "-remote openURL";
/** * Display a file in the system browser. If you want to display a * file, you must include the absolute path name. * * @param url the file's url (the url must start with either "http://" or "file://"). */ public static void displayURL(String url) throws InterruptedException, IOException { boolean windows = isWindowsPlatform(); String cmd = null;
if (windows) { // cmd = 'rundll32 url.dll,FileProtocolHandler http://...' cmd = WIN_PATH + " " + WIN_FLAG + " " + url; Process p = Runtime.getRuntime().exec(cmd); } else { // Under Unix, Netscape has to be running for the "-remote" // command to work. So, we try sending the command and // check for an exit value. If the exit command is 0, // it worked, otherwise we need to start the browser. // cmd = 'netscape -remote openURL(http://www.javaworld.com)' cmd = UNIX_PATH + " " + UNIX_FLAG + "(" + url + ")"; Process p = Runtime.getRuntime().exec(cmd);
// wait for exit code -- if it's 0, command worked, // otherwise we need to start the browser up. int exitCode = p.waitFor(); if (exitCode != 0) { // Command failed, start up the browser // cmd = 'netscape http://www.javaworld.com' cmd = UNIX_PATH + " " + url; p = Runtime.getRuntime().exec(cmd); } } }
/** * Try to determine whether this application is running under Windows * or some other platform by examing the "os.name" property. * * @return true if this application is running under a Windows OS */ public static boolean isWindowsPlatform() { String os = System.getProperty("os.name"); if ( os != null && os.startsWith(WIN_ID)) return true; else return false;
} }
"Julien C." <jc63@free.fr> a écrit dans le message de
news:407c4b71$0$19501$636a15ce@news.free.fr...
Bonjour,
Je cherche à ouvrir un fichier html avec le programme par défaut sur le
poste. J'ai bien trouvé Runtime.getRuntime().exec(maCommande)
Mais quelle commande lancer ???
Merci d'avance Julien.
package julien;
import java.io.IOException;
/**
* <i>This class comes from javaworld at
http://www.javaworld.com/javatips/jw-javatip66_p.html.</i>
*
* A simple, static class to display a URL in the system browser.
*
* Under Unix, the system browser is hard-coded to be 'netscape'.
* Netscape must be in your PATH for this to work. This has been
* tested with the following platforms: AIX, HP-UX and Solaris.
*
* Under Windows, this will bring up the default browser under windows,
* usually either Netscape or Microsoft IE. The default browser is
* determined by the OS. This has been tested under Windows 95/98/NT.
*
* Examples:
* BrowserControl.displayURL("http://www.javaworld.com")
* BrowserControl.displayURL("file://c:\docs\index.html")
* BrowserContorl.displayURL("file:///user/joe/index.html");
*
* Note - you must include the url type -- either "http://" or "file://".
* @author javaworld (tip 66)
* @version 1.0
*/
public class BrowserControl
{
// Used to identify the windows platform.
private static final String WIN_ID = "Windows";
// The default system browser under windows.
private static final String WIN_PATH = "rundll32";
// The flag to display a url.
private static final String WIN_FLAG = "url.dll,FileProtocolHandler";
// The default browser under unix.
private static final String UNIX_PATH = "netscape";
// The flag to display a url.
private static final String UNIX_FLAG = "-remote openURL";
/**
* Display a file in the system browser. If you want to display a
* file, you must include the absolute path name.
*
* @param url the file's url (the url must start with either "http://" or
"file://").
*/
public static void displayURL(String url) throws InterruptedException,
IOException
{
boolean windows = isWindowsPlatform();
String cmd = null;
if (windows)
{
// cmd = 'rundll32 url.dll,FileProtocolHandler http://...'
cmd = WIN_PATH + " " + WIN_FLAG + " " + url;
Process p = Runtime.getRuntime().exec(cmd);
}
else
{
// Under Unix, Netscape has to be running for the "-remote"
// command to work. So, we try sending the command and
// check for an exit value. If the exit command is 0,
// it worked, otherwise we need to start the browser.
// cmd = 'netscape -remote openURL(http://www.javaworld.com)'
cmd = UNIX_PATH + " " + UNIX_FLAG + "(" + url + ")";
Process p = Runtime.getRuntime().exec(cmd);
// wait for exit code -- if it's 0, command worked,
// otherwise we need to start the browser up.
int exitCode = p.waitFor();
if (exitCode != 0)
{
// Command failed, start up the browser
// cmd = 'netscape http://www.javaworld.com'
cmd = UNIX_PATH + " " + url;
p = Runtime.getRuntime().exec(cmd);
}
}
}
/**
* Try to determine whether this application is running under Windows
* or some other platform by examing the "os.name" property.
*
* @return true if this application is running under a Windows OS
*/
public static boolean isWindowsPlatform()
{
String os = System.getProperty("os.name");
if ( os != null && os.startsWith(WIN_ID))
return true;
else
return false;
"Julien C." a écrit dans le message de news:407c4b71$0$19501$
Bonjour,
Je cherche à ouvrir un fichier html avec le programme par défaut sur le poste. J'ai bien trouvé Runtime.getRuntime().exec(maCommande) Mais quelle commande lancer ???
Merci d'avance Julien.
package julien;
import java.io.IOException;
/** * <i>This class comes from javaworld at http://www.javaworld.com/javatips/jw-javatip66_p.html.</i> * * A simple, static class to display a URL in the system browser. * * Under Unix, the system browser is hard-coded to be 'netscape'. * Netscape must be in your PATH for this to work. This has been * tested with the following platforms: AIX, HP-UX and Solaris. * * Under Windows, this will bring up the default browser under windows, * usually either Netscape or Microsoft IE. The default browser is * determined by the OS. This has been tested under Windows 95/98/NT. * * Examples: * BrowserControl.displayURL("http://www.javaworld.com") * BrowserControl.displayURL("file://c:docsindex.html") * BrowserContorl.displayURL("file:///user/joe/index.html"); * * Note - you must include the url type -- either "http://" or "file://". * @author javaworld (tip 66) * @version 1.0 */
public class BrowserControl { // Used to identify the windows platform. private static final String WIN_ID = "Windows";
// The default system browser under windows. private static final String WIN_PATH = "rundll32";
// The flag to display a url. private static final String WIN_FLAG = "url.dll,FileProtocolHandler";
// The default browser under unix. private static final String UNIX_PATH = "netscape";
// The flag to display a url. private static final String UNIX_FLAG = "-remote openURL";
/** * Display a file in the system browser. If you want to display a * file, you must include the absolute path name. * * @param url the file's url (the url must start with either "http://" or "file://"). */ public static void displayURL(String url) throws InterruptedException, IOException { boolean windows = isWindowsPlatform(); String cmd = null;
if (windows) { // cmd = 'rundll32 url.dll,FileProtocolHandler http://...' cmd = WIN_PATH + " " + WIN_FLAG + " " + url; Process p = Runtime.getRuntime().exec(cmd); } else { // Under Unix, Netscape has to be running for the "-remote" // command to work. So, we try sending the command and // check for an exit value. If the exit command is 0, // it worked, otherwise we need to start the browser. // cmd = 'netscape -remote openURL(http://www.javaworld.com)' cmd = UNIX_PATH + " " + UNIX_FLAG + "(" + url + ")"; Process p = Runtime.getRuntime().exec(cmd);
// wait for exit code -- if it's 0, command worked, // otherwise we need to start the browser up. int exitCode = p.waitFor(); if (exitCode != 0) { // Command failed, start up the browser // cmd = 'netscape http://www.javaworld.com' cmd = UNIX_PATH + " " + url; p = Runtime.getRuntime().exec(cmd); } } }
/** * Try to determine whether this application is running under Windows * or some other platform by examing the "os.name" property. * * @return true if this application is running under a Windows OS */ public static boolean isWindowsPlatform() { String os = System.getProperty("os.name"); if ( os != null && os.startsWith(WIN_ID)) return true; else return false;
} }
yvon.thoravalNO-SPAM
Stéphane Kolodziejczyk wrote:
package julien;
tu n'aurais pas un tip pour lancer le client email par défaut sur une plateforme ?
je suis sur MacOS X et je ne connais pas les clients mail sur win et unix/linux . -- yt