Hallo!
Hier mal ein kleines Beispiel:
Wenn wir im Windows Explorer auf eine Datei mit der Endung foo klicken soll folgendes Java-Programm ausgeführt werden:
Code:
/**
*
*/
package de.tutorials;
import javax.swing.JFrame;
import javax.swing.JLabel;
/**
* @author Administrator
*
*/
public class ExampleAction extends JFrame {
public ExampleAction(String arg) {
super("ExampleAction");
setDefaultCloseOperation(EXIT_ON_CLOSE);
add(new JLabel(arg));
pack();
setVisible(true);
}
/**
* @param args
*/
public static void main(String[] args) {
new ExampleAction(args[0]);
}
}
Welches den Pfad zur zur aktuellen Datei in einem JLabel in einem Aufpoppenden JFrame anzeigt.
Dazu erstellen wir ein ausführbares Jar-Archiv mit der ExampleAction als main-class.
(Siehe Anhang) (Übrigens bietet Eclipse ind er Version 3.1.5 einen schicken wizzard um ausführbare Jar Files zu erstellen ;-) )
Nun gehen wir in den Windows Explorer in Extras -> Ordneroptionen -> Dateitypen.
Um nun einen neuen Dateityp zu registrieren klicken wir auf neu und geben "foo" ein und klicken auf erweitert. Nun legen wir einen neuen Vorgang an. Dazu klicken wir auf neu.
Der "Vorgang" der beim öffnen einer Datei abläuft heißt "open" was wir auch im ersten Text feld eingeben unter Vorgang. Nun müssen wir noch die Anwednung festlegen die wir darauf hin mit der Datei als Argument ausführen wollen:
Bei mir habe ich dort:
"C:\Programme\Java\jre1.5.0_01\bin\javaw.exe" -jar c:\test.jar "%1" %*
angegeben. (%1steht für den ersten Parameter -> Name des selektierten Files)
Werden die Dialoge nun jeweils mit OK beendet wird von nun an bei einem Klick auf eine *.foo Datei dieses Programm ausgeführt.
Wie man dem Kontextmenü einen neuen Eintrag hinzufügt findet man hier
http://www.wintotal.de/Tipps/Eintrag.php?TID=847
HTH,
Gruß Tom