JFileChosser legt Rechner lahm

Ok alles Probieren hat nichts gebracht, also habe ich den Code auf nem anderen Rechner probiert und siehe da schon klappt es. Es liegt also offensichtlich am Rechner, die Frage ist jetzt woran genau. Das mit der Nokiasoftware habe ich schon öfters gelesen. Weiss denn jemand was ganau die Nokiasoftware da verstellt? Wenn man sich nicht drauf verlasssen kann, dass der Filechooser funktioniert, kann man den ja nichtmehrt guten Gewissens in seine Programme einbauen.
 
Hallo smathedark,

ich habe dieses Problem auch schon festgestellt und konnte es wie folgt identifizieren: Wenn die Auflösung des Systems zu klein ist, bzw. der Bildschirm zu klein ist, friert die JRE das System "komplett". Du kommst dann nur noch mit einem Fokuswechsel aus der Sache raus (ALT+TAB). Wenn du dann wieder zurück navigierst, sollte alles wunderbar funktionieren.

Ich habe diesbezüglich noch kein Standalone-Repoduzierbares Beispiel gebastelt, weil mir das damals zu viel Aufwand war. Das Problem liegt hierbei bei SUN, ähnliche Fehler wurden schon gemeldet, es scheint aber so, dass dieser noch nicht behoben wurde...

Ich weiß nicht ob es hilft, wenn nicht kann ich noch mehr Info's zusammensuchen!

Viele Grüße,
Abapking
 
Mit welcher JRE läuft das Ding?

Unter 1.6 macht der JFileChooser Probleme, wenn du auf deinem Desktop ein (grösseres) ZIP Archiv hast.
Ich hatte dieses Problem auch schon, nachdem ich das Zip verschoben habe lief sofort alles wieder normal.
(Klingt seltsam, ist aber so... ;) )
 
Der Bug hängt wohl mit den Zip-Dateien zusammen (WinXP und andere) und lässt sich duch eine Eingabe einer Kommandozeile beheben (de-registrieren der ZIP-Dateien). Dabei re-registriert Windows die Zip-Dateien wieder nach Bedarf, so dass das Windowssystem dabei keinen Schaden nimmt.

FileChooser beschleunigen:
regsvr32 /u %windir%\system32\zipfldr.dll

Manuell rückgängig machen:
regsvr32 %windir%\system32\zipfldr.dll


Zur Laufzeit:
Code:
int i = JOptionPane.showConfirmDialog(
					hf,
					"<html>Windows Betriebssysteme neuerer Generation<p/>" +
					      "verfügen über einen eingebauten ZIP-Extraktor,<p/>" +
					      "mit dem ZIP-Archive wie normale Ordner behandelt<p/>" +
					      "werden können. Diese Funktionalität verlangsamt</p>" +
					      "allerdings das System erheblich, insbesondere wenn<p/>" +
					      "Dateien aufgelistet werden. Mit dieser Problembehebung<p/>" +
					      "wird diese Funktionalität unterbunden. <p/><p/>" +
					      "Ferner wird die Datei 'undoremovezipordner.bat' angelegt,<p/>" +
					      "die diese Aktion wieder rückgängig macht.<p/><p/>" +
					      "Da sich Windows regelmäßig selbst 'repariert', muß<p/>" +
					      "diese Aktion später ggf. erneut durchgefügrt werden.<p/><p/>" +
					      "SOLL DIE AKTION JETZT DURCHGEFÜHRT WERDEN?"					      
					,
					"Erklärung / Entscheidung",
					JOptionPane.YES_NO_OPTION);
			if(i==0)
			{
				try
				{
					PrintWriter pw = new PrintWriter("removezipordner.bat");
					pw.println("regsvr32 /u %windir%\\system32\\zipfldr.dll");
					pw.close();
					Runtime.getRuntime().exec("removezipordner.bat");
					System.out.println("Befehl erfolgreich an das Betriebssystem geschickt.");			
				} catch (IOException e)
				{
					System.out.println("Fehler bei der Problembehebung. Bitte geben Sie unter Windows in die Konsole den Befehl <strong>regsvr32 /u %windir%\\system32\\zipfldr.dll</strong> ein.");
					e.printStackTrace();
				}
				try
				{
					PrintWriter pw = new PrintWriter("undoremovezipordner.bat");
					pw.println("regsvr32 %windir%\\system32\\zipfldr.dll");
					pw.close();					
					System.out.println("'undoremovezipordner.bat' erfolgreich erstellt.");				
				} catch (IOException e)
				{
					System.out.println("Fehler bei der Erstellung der Undo-Datei. Sie können die Aktion manuell rückgängig machen. Tippen Sie dazu den Befehl <strong>regsvr32 %windir%\\system32\\zipfldr.dll</strong> in die Windows-Konsole.");
					e.printStackTrace();
				}
			}
 
So ein Problem habe ich auch mal beobachtet, liegt an einer Bestimmten Windowskonstallation und Java 6, mit Java 5 gab es diesbezüglich auf gleichem Windowsrechner kein Problem und auf einem anderen Windowsrechner (auch mit einem haufen Zips im Ordner) gab es mit Java 6 kein Problem.
ist schon recht drollig.
 
Hi,
konnte es leider erst heute testen, da ich Urlaub hatte. :)

Dein Tipp war des Rätsels Lösung! Da wäre ich nie drauf gekommen. Genial. Tausend dank. Ich war schon kurz davor meinen PC neu installieren zu lassen...

Was mich wundert ist immer noch, dass es mal ging, mal nicht. MS wird diese funktion doch nicht dauernd rein und rauspatchen. Ausserdem benutzen wir Winrar, daher ist die Funktion völlig überflüssig für Zip-Ordner. :)

Noch mals danke!
 
Zurück