Windows Kontext Menü - Laufendes Programm

endure

Neues Mitglied
Guten Tag,

Vorerst sorry, falls es das Falsche Forum ist :)

Ich habe folgendes Problem.
Ich habe ein Programm in Java geschrieben. Beim Rechtsklick auf eine Datei soll ein Button im Windows Kontextmenü erscheinen, der eine Methode oder ein Event in diesem Programm aufrufen soll. Um genau zu sein, tut das Programm vorerst nichts, bis dieser Button geklickt wurde.

Beispiel:
Ich klick auf dem Desktop Rechts auf eine Datei und neben den Standard Buttons wird ein eigener Button mit aufgelistet. Wenn dieser geklickt wird, kriegt mein Programm das mit und tut etwas.

Nun habe ich es geschafft in der Registry über einen Eintrag ...
["C:\test.jar" "%1"]

...dass ein solcher Button im Kontext Menü erscheint. Aber wie kriege ich nun beim laufenden Programm 1. kein zweites geöffnet und 2. im Programm selbst hin, dass er diesen Aufruf mitbekommt und den Parameter übermittelt kriegt. Ich habe gegoogled, aber leider nichts genaues gefunden.

Im Grunde reicht mir schon das Wissen wie ich eine neue Jar Datei mit einer Main-Methode starte, und dieser über einen solchen Button im Kontextmenü einen Parameter übergeben bekommt. Ich würde später eine Listener Klasse von Thread erben lassen und dann darin warten ob ein Buttonklick reinkommt.

Ich hoffe, dass mir dabei jemand helfen kann...

Vielen Dank für eure Hilfe

Gruß Andreas
 

Ariol

Top Contributor
Hmm,
der Eintrag sollte wohl eher auf sowas wie
Code:
["C:\Programme\java1.6\bin\java -jar C:\test.jar" "%1"]
lauten.

Was das mitbekommen in deiner Anwendung angeht:
Der Parameter "args" in der Main-Methode ist ein String-Array mit den übergebenen Parametern.
 
G

Gastredner

Gast
Es gibt verschiedene Möglichkeiten sicherzustellen, dass nur eine Instanz deines Programms läuft. Lock-Files oder Socket-Kommunikation wären zwei Möglichkeiten. Beispiele dazu gibt es im Java Blog Buch.

Noch einfacher geht es höchstwahrscheinlich mit JSingleInstance, welches just von jemandem im Projektbereich vorgestellt worden ist: http://www.java-forum.org/codeschnipsel-u-projekte/120187-jsingleinstance-nur-instanz-programms.html

Du musst halt nur wie im Beispiel auf eine bereits laufende Instanz abfragen. Sollte eine gefunden werden, so musst du einfach die erhaltenen Argumente der laufenden Instanz übergeben und die neue Instanz beenden.
 

Ebenius

Top Contributor
So am Rande…

Im Grunde reicht mir schon das Wissen wie ich eine neue Jar Datei mit einer Main-Methode starte, und dieser über einen solchen Button im Kontextmenü einen Parameter übergeben bekommt. Ich würde später eine Listener Klasse von Thread erben lassen und dann darin warten ob ein Buttonklick reinkommt.
Auf dem Wege funktioniert es nicht. Du kannst Dich nicht als Listener an ein ExplorerMenü hängen. Windows will ein Programm starten und diesem Programm einen absuloten Dateinamen der markierten Datei als Argument übergeben. Das funktioniert dann genau so, als würdest du in der Command Shell das Programm aufrufen:
[highlight="Command Shell"]C:\> java -jar meinprogramm.jar "C:\Diese\Datei\hatte\ich\im\Explorer\selektiert.pdf"[/highlight]

In Deinem Java-Programm bekommst Du dann die Argumente übergeben; in diesem Fall eines:
Java:
public class Main {
  public static void main(String[] args) {
    System.out.println(args[0]); // gibt C:\Diese\Datei\hatte\ich\im\Explorer\selektiert.pdf auf der Konsole aus
  }
}

Du musst nun also eine Möglichkeit finden, wie das Programm das Du schreibst erkennt, dass bereits eine andere Instanz läuft und wie es mit der anderen Instanz kommunizieren kann, damit diese das neue Argument empfangen kann. Siehe Beitrag über diesem.

Ebenius
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
MiMa JavaFX JAR unter Windows ausführen schlägt fehl? AWT, Swing, JavaFX & SWT 5
I JavaFX JavaFx-Anwendung für die Erstellung einer Windows-Anwendung? AWT, Swing, JavaFX & SWT 6
T Swing DPI-Skalierung und Java 2D unter Java 11 (und Windows 10) AWT, Swing, JavaFX & SWT 2
L Swing Panels bewegen wie Windows 10 Kacheln AWT, Swing, JavaFX & SWT 0
Blender3D Problem mit € Symbol Font Gotham Windows 10 Swing AWT, Swing, JavaFX & SWT 11
M Swing Code funktioniert auf Windows aber nicht Linux... AWT, Swing, JavaFX & SWT 3
Blender3D Meine Swing Anwendung läuft unter Windows 10 und Ubuntu aber nicht auf Windows 7 AWT, Swing, JavaFX & SWT 16
S Java Swing auf Windows Phone AWT, Swing, JavaFX & SWT 6
M Swing JComboBox mit Laufwerksbuchstaben (Windows) AWT, Swing, JavaFX & SWT 6
K JPanel Bilder bei Windows nicht darstellbar AWT, Swing, JavaFX & SWT 6
Ghostman1711 GUI Java von Klasse mit Application Windows anderes Application Window aufrufen AWT, Swing, JavaFX & SWT 6
Grevak DisplayMode Problem seit Windows 10 AWT, Swing, JavaFX & SWT 2
Avarion Swing JFrame unter Windows 10 kleiner ?! AWT, Swing, JavaFX & SWT 2
J 2D-Grafik Windows Blue-Screen nach anzeigen eines Bildes in Java AWT, Swing, JavaFX & SWT 10
S Swing Automatisch 2px Rahmen in Windows 8 AWT, Swing, JavaFX & SWT 0
A Swing JProgressbar im Windows Look & Feel Farbanpassung AWT, Swing, JavaFX & SWT 2
P Verbuggte custom JButton unter Windows AWT, Swing, JavaFX & SWT 9
W Windows Fenster in einem Programm AWT, Swing, JavaFX & SWT 2
morphesus AWT Windows 7 Aero Look AWT, Swing, JavaFX & SWT 2
H Fenstergröße bei Mac und Windows gleich einstellen? AWT, Swing, JavaFX & SWT 3
R Problem mit TrayIcon unter Windows/Linux AWT, Swing, JavaFX & SWT 7
B Windows Look and Feel AWT, Swing, JavaFX & SWT 2
S Swing TrayIcon bei Systemdienst (Windows, Systemuser) AWT, Swing, JavaFX & SWT 7
N Swing JTree TreePath zu Windows Pfad? AWT, Swing, JavaFX & SWT 2
S GUI aussehen unter Windows und Linux (und Mac) AWT, Swing, JavaFX & SWT 13
N Swing von Windows zu Ubuntu AWT, Swing, JavaFX & SWT 3
S Swing Threads Windows 7 64 bit AWT, Swing, JavaFX & SWT 12
A Swing Probleme unter Windows 7 AWT, Swing, JavaFX & SWT 5
Dragonfire Swing UTF-8 BOB Probleme mit Windows Look and Feel AWT, Swing, JavaFX & SWT 4
J Applet Linux(-(k)ubuntu-)-Firefox-Java-Plugin - Fensterschließprobleme die bei Windows so nicht auftreten AWT, Swing, JavaFX & SWT 4
F AWT MouseMotionListener e.getButton() ist immer 0 unter Linux und Windows AWT, Swing, JavaFX & SWT 6
E Implementierung des Windows Rechners? AWT, Swing, JavaFX & SWT 7
O AWT Shaped, Translucent Windows AWT, Swing, JavaFX & SWT 14
LittleJavaCup Suchmaschine programmieren (wie bei Windows) AWT, Swing, JavaFX & SWT 2
W TrayIcon in Windows 7 unscharf AWT, Swing, JavaFX & SWT 8
R Windows-Dateien auf GUI ziehen AWT, Swing, JavaFX & SWT 3
G Quaqua unter Windows AWT, Swing, JavaFX & SWT 15
S LookAndFeel Look and Feel mit Windows funktioniert nicht AWT, Swing, JavaFX & SWT 8
G Windows XP layout herausfinden AWT, Swing, JavaFX & SWT 7
J Java & Windows-7-Taskbar AWT, Swing, JavaFX & SWT 13
M Swing JFileChooser mit Windows 7 AWT, Swing, JavaFX & SWT 8
L JPanel mit Objekten selektieren wie unter Windows / Ubuntu AWT, Swing, JavaFX & SWT 4
A Swing LAF unter Windows: javax.swing.DebugGraphics cannot be cast to java.awt.Graphics2D AWT, Swing, JavaFX & SWT 5
M Fenster Windows-Like anordnen AWT, Swing, JavaFX & SWT 2
B Swing Windows Shortcuts ersetzen AWT, Swing, JavaFX & SWT 9
P Swing [gelöst/erledigt] Gleicher Code läuft unterschiedlich unter Linux und Windows AWT, Swing, JavaFX & SWT 5
G JFrame und Windows Vista? AWT, Swing, JavaFX & SWT 4
G JFrame in Windows? AWT, Swing, JavaFX & SWT 4
D Transperency of Windows AWT, Swing, JavaFX & SWT 7
P SWT, Windows 2000, GDI+ und Microsoft Redistributable AWT, Swing, JavaFX & SWT 3
N Modale Windows AWT, Swing, JavaFX & SWT 2
G windows look and feel problem AWT, Swing, JavaFX & SWT 7
S KeyEvents in Linux und Windows AWT, Swing, JavaFX & SWT 14
M Globale Events in Windows abfangen AWT, Swing, JavaFX & SWT 2
M Windows-Applikationen minimieren AWT, Swing, JavaFX & SWT 4
G Windows Vista Gadget AWT, Swing, JavaFX & SWT 5
T SWT - Wie Windows erstelltes .jar auf einem MAC ausführen? AWT, Swing, JavaFX & SWT 25
M Windows-Fensterinhalt in Java-Applikation darstellen AWT, Swing, JavaFX & SWT 6
G Windows Taste in KeyEvent? AWT, Swing, JavaFX & SWT 4
P SWT - "Combo" aus dem Windows-FileDialog AWT, Swing, JavaFX & SWT 3
A JProgressBar: Farbe im Windows Look&Feel ändern. AWT, Swing, JavaFX & SWT 1
K Windows Style als standard? AWT, Swing, JavaFX & SWT 2
S Bei SWT den Windows beenden Button manipulieren? AWT, Swing, JavaFX & SWT 4
T JGoodies unter Windows 98 AWT, Swing, JavaFX & SWT 4
F AWT Programm unter Linux anders als unter Windows ! AWT, Swing, JavaFX & SWT 8
N SWT: GUI Windows Events AWT, Swing, JavaFX & SWT 8
P Swing-Komponenten - Standart-Windows Design? AWT, Swing, JavaFX & SWT 4
I Windows LaF verbessern? AWT, Swing, JavaFX & SWT 12
F Schriftarten unter Windows und Linux AWT, Swing, JavaFX & SWT 6
T Windows-Typisches Menü für Swing AWT, Swing, JavaFX & SWT 3
G Windows LookAndFeel - Classpath AWT, Swing, JavaFX & SWT 6
M Windows file icons in Java verwenden AWT, Swing, JavaFX & SWT 2
TheJavaKid Windows 98 LaF AWT, Swing, JavaFX & SWT 4
G standard blau (windows) != color.blue AWT, Swing, JavaFX & SWT 2
G JTable wird im Windows Look&Feel nicht gedruckt AWT, Swing, JavaFX & SWT 5
B Komische Darstellung unter Windows 2000 AWT, Swing, JavaFX & SWT 2
W Problem mit Fensteranzeige in Windows AWT, Swing, JavaFX & SWT 3
O Windows Lautstärke regeln wie? AWT, Swing, JavaFX & SWT 23
C Java Programm wie Windows Taskleiste AWT, Swing, JavaFX & SWT 2
P Garfikfehler unter Windows 2000 AWT, Swing, JavaFX & SWT 3
T Programm gleich wie Windows Media Player in den Task geben AWT, Swing, JavaFX & SWT 10
H Wie bastelt man eine Baumstruktur wie im Windows-Explorer? AWT, Swing, JavaFX & SWT 5
A Probleme mit Windows Style (Background) AWT, Swing, JavaFX & SWT 4
javasdann JTable Kopfzeile in Windows Look&Feel unschön. AWT, Swing, JavaFX & SWT 3
L windows explorer AWT, Swing, JavaFX & SWT 4
O SWT-Anwendung für Windows und Linux verteilen AWT, Swing, JavaFX & SWT 3
B JTree + Linien im Windows L&F AWT, Swing, JavaFX & SWT 9
T Das Windows Fenster "Öffnen" mit Java darstellen AWT, Swing, JavaFX & SWT 9
V Windows Look für JTree? AWT, Swing, JavaFX & SWT 3
Lukas2904 Kontext Menu AWT, Swing, JavaFX & SWT 2
G Wie kann man ein Kontext-Menü erstellen? AWT, Swing, JavaFX & SWT 2
J GUI Programmierung Popup-Menü AWT, Swing, JavaFX & SWT 4
J Java GUI Dropdown-Menü anzeigen AWT, Swing, JavaFX & SWT 5
I Von Menü: Seite zu Seite springen (CardLayout) AWT, Swing, JavaFX & SWT 8
B Swing Menü geht nicht AWT, Swing, JavaFX & SWT 5
AmsananKING Java Menü-Problem AWT, Swing, JavaFX & SWT 1
M Eine Datei auf den Apache Server hochladen - über das Menü im JavaProgramm AWT, Swing, JavaFX & SWT 7
H Swing Auf Klick auf Menü-Eintrag reagieren AWT, Swing, JavaFX & SWT 0
C JavaFX Inhalt eines SplitPane's durch Menü-Auswahl ändern? AWT, Swing, JavaFX & SWT 13
L JavaFX Mehrere JavaFX Szenen mit einem Menü AWT, Swing, JavaFX & SWT 1

Ähnliche Java Themen

Neue Themen


Oben