Alles trieft, alles klebt, die Affenhitze hat Deutschland fest im Griff, und wochenlang gibt es keinen einzigen Tropfen Regen, der die Qual ein wenig lindern würde. Während ich bei bestimmt 40 Grad unterm Dach vor mich hin transpiriere und es seit letztem Monat kaum terminfreie Tage gab, versuche ich im Umzugsstress meinen Blog nicht komplett zu vernachlässigen, auch wenn ich dafür nur noch zwischen Tür und Angel mal die Möglichkeit habe. Aber es kommen wieder bessere Tage, dafür garantiere ich. Die Gelegenheit ist günstig für einen Füllbeitrag zum Thema „Warum Windows manchmal eben doch großer Mist ist“. Hier habe ich zwei skurrile Dinge gesammelt, die mir beim Arbeiten (oder Zocken) mit Windows sinnlos Probleme bereitet haben.
Fangen wir mit dem größten Übel an: Ein Problem mit Windows Server 2003, das scheinbar schon so manchem die Schuhe beim Gedanken daran auszieht. Ich wollte einen gerade unter Windows laufenden Java-Prozess mit Hilfe des Tools jstack.exe untersuchen. Üblicherweise ist das gar kein Problem, man muss eben nur Process-ID wissen, und die erfährt man mit dem tollen Windows-Befehl tasklist. Soweit alles noch in Ordnung. Als ich dann aber jstack mit besagtem Parameter ausführen wollte, erhielt ich diese völlig nichtssagende weil absurd falsche Fehlermeldung: „Not enough storage is available to process this command.“ (im deutschen Windows „Nicht genügend Server-Speicherplatz verfügbar, um diesen Befehl zu verarbeiten„).
Einwandfrei. Nicht genügend Arbeitsspeicher bzw. Swap-Speicher für die winzige jstack.exe auf einem eigentlich gut ausgestatteten Windows-Server? Nein, ich glaube eher nicht. Aber danke für deine unbrauchbare Hilfe, Windows! Ich fand eine Microsoft-Hilfeseite, die versucht das Problem näher zu erläutern und Problemlösungen zu bieten. Mit Betonung auf „versucht“, weil Microsoft grandios daran scheitert, denn schon die Fehlermeldung an sich ist einfach Quatsch. Auch eine deutsche Hilfeseite führte mit ihren Anweisungen nur komplett in die Irre.
Zum Glück kannte jemand auf Stackoverflow.com die Lösung. Man muss jstack mit Hilfe von „psexec -s jstack.exe pid“ aufrufen, damit es richtig auf dem Zielrechner ausgeführt wird. Das hat also genau gar nichts mit zuwenig Speicherplatz o.ä. zu tun, wie Windows mir weismachen wollte. Wenn man noch nicht einmal die richtige Fehlermeldung angezeigt bekommt, wenn schon ein Fehler auftritt, dann weiß ich nicht, worauf ich mich bei Windows sonst noch verlassen können soll.
Das zweite Problem ist dagegen ein eher kleines, kürzlich entdeckt und gelöst auf einer LAN-Party, also einem gesellschaftlichen Event zum gemeinschaftlichen Zocken netzwerkfähiger Windows-Spiele. Besonders nervtötend ist es, wenn das Windows-Netzwerk an sich fehlerfrei eingerichtet ist, es aber dennoch vereinzelt Spiele gibt, in denen immer derselbe LAN-Teilnehmer (=ich) die Spiele der anderen nicht sehen kann, und umgekehrt. Die Liste in der Lobby ist leer, obwohl alle anderen bereits dem offenen Spiel beigetreten sind. Man sucht sich also einen Wolf, auf der Suche nach dem einen Fehler, der dafür sorgt, dass man in manchen Spielen für alle anderen unsichtbar ist. Die Fehlersuche wird allein dadurch erschwert, dass das Problem nur manche Spiele betrifft, und auch dann noch nicht einmal immer.
Das Problem wäre natürlich gar keines, wenn man in solchen Spielen einfach eine Ziel-IP zum Verbinden eingeben könnte, aber so einfach machen es einem die Entwickler nicht. Könnte womöglich manche Spieler überfordern. Des Rätsels Lösung lag dann in der Existenz weiterer LAN-Adapter, die unter Windows installiert waren: darunter der VirtualBox-LAN-Adapter, Tunngle, bei anderen findet man dort etwa Hamachi oder VMware. Alle diese Adapter müssten – auch wenn sie im Moment nicht benutzt werden – explizit deaktiviert werden, weil die Spiele sonst in Versuchung kommen könnten, diese für die Netzwerkverbindung mit den anderen Spielern zu verwenden, anstelle des eigentlich höher priorisierten richtigen LAN-Adapters.
Oh den Tipp bzw. Hinweis mit den Netzwerkkarten nehme ich gerne mit. :-) kann man sicherlich irgendwann mal gut gebrauchen wenn man so was ähnliches an Problemen hat.
PS: Frage. Zockst du Minecraft?
Ich habe in meinem Leben ja schon so einige kleinere LAN-Partys mitgemacht, darunter mindestens vier mit Windows Vista/7, aber dieses Problem ist mir dieses Jahr erstmalig begegnet, daher die langwierige Fehlersuche. Zum Glück sind wir fündig geworden, bevor ich hätte aussetzen müssen.
Bin allerdings kein Minecraft-Zocker. Open-World-Spiele sind ja im Prinzip für mich sogar sehr interessant, aber eine gewisse Rahmenhandlung mit erkennbarem roten Faden setze ich bei Spielen voraus, und die fehlt mir bei Minecraft ziemlich. Sonst ist das ja nichts anderes als LEGO auf dem Bildschirm.
Der Fehler wird vom Prozess verursacht und Windows schmeisst eine entsprechende Meldung, der Prozess frägt z.B. bestimmte Arbeitsspeicherbereiche an auf die er nicht zugreifen darf und dann kann auch so ein Fehler kommen. Da macht Windows nichts falsch sondern das Programm….
Dein Lan Adapter Problem ist vermutlich darin begründet dass, das Spiel auf den ersten Verfügbaren Adapter und/oder Verbindung zugreift. Unter Erweitert – Erweiterte Einstellungen (erreichbar über tab) kannst du die Reihenfolge deinen wünschen entsprechend anpassen – aber auch hier macht eben nicht Windows etwas falsch sondern das Programm.
Hallo schmerz, vielen Dank dafür, dass du dir die Zeit nimmst, uns aufzuklären.
Du wirst mir zustimmen können, dass die Fehlermeldung, die ohne Zweifel vom Betriebssystem kommt, falsch oder wenigstens sehr unpräzise ist. Selbst wenn man Microsoft zu dem Thema befragt, steht dort nichts darüber, dass es an fehlenden Zugriffsrechten o.ä. liegen könnte, nur dass es an Speicherplatz mangelt. Mein Artikel kritisiert Windows dafür, dass es mir nicht sagen kann, was ich tun muss, um das Problem zu beheben, sondern sogar falsche Auskunft gibt. Windows macht also durchaus etwas falsch, wenngleich jstack.exe in diesem Fall die zugrunde liegende Ursache sein mag.
Beim zweiten Punkt gebe ich dir gerne Recht, denn hier macht Windows tatsächlich nichts falsch, sondern die Spielesoftware. Du scheinst allerdings überlesen zu haben, dass die Priorisierung der LAN-Adapter bereits von mir korrekt eingestellt war. Offensichtlich hat sich das Spiel also nicht an dem am höchsten priorisierten LAN-Adapter bedient (so wie es sein sollte), sondern blöderweise an einem ungenutzten, niedriger priorisierten. Tatsächlich, nochmals zur Betonung, kein Problem von Windows.