Archive for the 'Windows' Category

Von Vista auf Windows 7

Dieses “Windows-wechsel-dich”-Spielchen habe ich auch mal mitgemacht. Schließlich hatte ich ja mal die Möglichkeit angeboten bekommen Windows 7 zu benutzen und das Vista, dass ich auf einem Laptop hatte, war auch nicht ganz das Gelbe vom Ei.

Da ich ein Haufen Programme nutze – ich kann eine Liste von mindestens 30 Programmen aufzählen – dachte ich mir, ok machst du die Upgrade-Installation. Immerhin waren die Versionen passend zueinander. Nach zirka ein einhalb Stunden ist das dann auch über die Bühne gegangen.

Danach schaute ich erstmal, ob alles an Software läuft, was laufen soll. Virtual Box lief zwar, aber der Virtualisierungssoftware fehlten die Treiber, damit man seinen Gastbetriebssytemen Netzwerk zur Verfügung stellen kann. Mit der Neuinstallation des Programmes war dieses Problem erledigt.

Bei meinem Office 2010 Beta erlebte ich allerdings eine böse Überraschung. Word schmierte kurz nach dem Start ab, Outlook pflegte sich bei Klick auf den Reiter “Datei” in die Versenkung zu begeben. In beiden Fällen war immer eine kernel32.dll im Ordner C:/Windows/System32 beteiligt. Ich versuchte Office zu reparieren,  neu zu installieren und im Kompatibilitätsmodus von Windows XP und Vista laufen zu lassen. Nichts funktionierte. Zum Schluss habe ich mir Windows 7 in eine VM installiert und von dort die kernel32.dll kopiert und dann mittels Ubuntu Live CD über die andere drüber kopiert. Brachte auch nicht den ersehnten Erfolg.

WordFehlermeldung

Problemsignatur:
Problemereignisname: APPCRASH
Anwendungsname: WINWORD.EXE
Anwendungsversion: 14.0.4536.1000
Anwendungszeitstempel: 4af1d344
Fehlermodulname: kernel32.dll
Fehlermodulversion: 6.1.7600.16385
Fehlermodulzeitstempel: 4a5bdaad
Ausnahmecode: c0000005
Ausnahmeoffset: 0004f03d
Betriebsystemversion: 6.1.7600.2.0.0.256.48
Gebietsschema-ID: 1031

Zusatzinformationen zum Problem:
LCID: 1031
skulcid: 1031

Outlook Fehlermeldung

Problemsignatur:
Problemereignisname: APPCRASH
Anwendungsname: OUTLOOK.EXE
Anwendungsversion: 14.0.4536.1000
Anwendungszeitstempel: 4af1d60f
Fehlermodulname: kernel32.dll
Fehlermodulversion: 6.1.7600.16385
Fehlermodulzeitstempel: 4a5bdaad
Ausnahmecode: c0000005
Ausnahmeoffset: 0004f03d
Betriebsystemversion: 6.1.7600.2.0.0.256.48
Gebietsschema-ID: 1031

Zusatzinformationen zum Problem:
LCID: 1031
skulcid: 1031

Eigentlich hätte ich Office ignorieren können, weil zum Schreiben von Text nehme ich auch ganz gerne mein OpenOffice her, allerdings benötige ich zum Arbeiten ein Exchange-fähiges E-Mail Programm. Thunderbird und Co. scheiden da aus. Zusätzlich zu diesem Problem, war der Start von Windows 7 auf meinem Rechner ungewohnt langsam. Nach Eingabe des Passwortes dauerte es mehrere Sekunden, bis ich den Desktop zu sehen bekam.
Jetzt, nach der Neuinstallation, sind bisher keine solche extremen Aussetzer aufgetreten. Zwar ist nach der Installation von Windows 7 das Ganze in einer Installtions-Orgie gemündet, aber dafür habe ich nun aktuelle Software auf dem System.

Mein PHP-Skript: Läuft auf einem Linux-XAMPP aber nicht auf der Windows Version

Ich hänge momentan an einem ziemlich – aus meiner Sicht – absurden Problem. Ich habe ein PHP-Skript erstellt, das zu einem Datenbankfrontent gehört. An sich funktioniert dieses Skript auch – es gibt keine Syntaxfehler oder sowas.
Es lief auch alles ganz fein bis ich das ganze mal auf einem Rechner mit Windows Vista Business und XAMPP 1.7.2 ausprobierte. Dann funktioniert in einer einzigen Datei (namens command.php) der Aufruf von header(“Location: index.php”) überhaupt nicht mehr, während dieser Aufruf allerdings in meinen anderen PHP-Dateien einwandfrei ausgeführt wird. Vorher lief das Ganze auf einem Linux System. Da ich das ganze nocheinmal nachkontrollieren wollte, habe ich schnell meinen virtuellen Ubuntu-Server hergenommen und genau die selbe Version (nur für Linux eben) installiert und es läuft ALLES!

Bei Windows währenddessen geht alles bis jener Aufruf in der command.php. Ich weiß nicht, was da falsch sein soll. Mittlerweile habe ich den Inhalt dieser Datei auf diesen einzigen Aufruf reduziert, nur um alle anderen Fehlerquellen durch anderen Code in dieser Datei auszuschließen. Ergebnis ist das selbe: es geht nicht!

Langsam bin ich am verzweifeln, weil ich nicht mehr weiter weiß und mir das Ganze mittlerweile aus dem Hals heraushängt.
Den selben Test habe ich noch einmal auch auf einem Windows XP Professional durchgeturnt mit genau dem selben Effekt wie bei Vista. Ähnlichen Effekt lässt sich auch auf Linux erzielen, wenn man statts den XAMPP sich das Apache-Packet z.B. von Ubuntu installiert, was zum Beispiel automatisch bei der Server Variante geschieht, wenn man die Option LAMP-Server wählt. Da läuft dieses Skript auch nicht.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
/**
	@file form-chooser.php :
	Weiterleitungen auf andere Formulare
	Dieses Script leitet vom Formular @file add-device.php
	auf nachfolgende Formulare um, je nach Geraetetyp
*/
	switch ($_POST['devtype'] ) {
		case "phone": {
			header("301 Moved Permanently");
			header("Location: index.php?action=phone-form");
			break;
		}
		case "computer" :  {
			header("301 Moved Permanently");
			header("Location: index.php?action=computer-form");
			break;
		}
		case "printer": {
			header("301 Moved Permanently");
			header("Location: index.php?action=printer-form");
			break;
		}
		default: {
			header("301 Moved Permanently");
			header("Location: index.php?action=error");
			break;
		}
	}

Dieser gezeigte Code geht, wenn man ihn über den Klick auf einen Button eines vorhergehenden Formulars aktiviert.
Der Code in der command.php hat eine ähnliche Struktur bzw. er befindet sich ebenfalls in einem switch-case-Konstrukt. Zu Test Zwecken habe ich den Code in der command.php auf folgendes reduziert:

header("Location: index.php);

Auch die Angabe des vollen Pfades bringt hier nichts.
Und genau dieser Umstand lässt das Ganze so absurd erscheinen. Ich persönlich weiß nicht, woran es noch liegen könnte. Ich habe schon folgende Punkte ausgeschlossen:

  • Berechtigungen unter Vista: Kann nicht sein unter XP läufts ja ebenfalls nicht.
  • Fehlende PHP-Bibliothek: Kann nicht sein, da header() praktisch zum Standard-Umfang gehört. Und zweitens funktioniert der Aufruf in anderen meiner Skripte auch.
  • Falsche Einstellungen am XAMPP vorgenommen: Ich fasse bei XAMPP keine Config-Files an.
  • Unterschiede in den XAMPP-Versionen: Ich habe auf allen Testsystemen ein und die selbe Version 1.7.2 installiert.

Spiel und Spaß mit der MCSE Musterprüfung

Da in der Berieselungsmaschine (auch als Fernseher bekannt) nichts Vernünftiges läuft, setze ich mich mal wieder an den Rechener. (Komisch, eigentlich befinde ich mich zur Zeit irgendwie immer in der Nähe eines Computers  ;-)   )

Hier die Optionen:

  1. Programmieren? – Nö, jetzt nicht.
  2. Sauerbraten zocken? – Mmh, wär ‘ne gute Idee. Mal schauen.
  3. In einem eBook für die MCSE-Prüfung schmökern? – Ja, warum denn eigentlich nicht, obwohl ich eingefleischte Linuxerin bin.

Nummero 3 ist es dann geworden, obwohl ich weit davon entfernt bin so eine Prüfung mitzumachen. Zunächst hatte ich mir dann auch angedacht, ein angefangenes Kapitel weiter zu lesen bzw. ein anderes, interessantes herauszugreifen. Bis ich dann auf den Punkt “Musterprüfung” gestoßen bin und mir sagte: “Du hast zwar noch nicht gerade viel Ahnung von dem Server-Gedöns, aber mal gucken was du so bei den ersten 20 Fragen zusammenkriegst.

Das Ergebnis: Ähm, reden wir besser nicht drüber. War ziemlich vernichtend. :oops:

Ok, ich hätte das eBook vorher durcharbeiten müssen, aber ich wollte mal schauen, was ich so mit “Allgemeinwissen” hinbekomme. Manche Sachen, die gefragt wurden, waren mir zum Teil unbekannt; bei anderen war ich mir nicht sicher. Lustig fand ich es dann halt schon, vor allem wenn dann viele Sätze so beginnen: “Sie sind Administrator eines…” Ich? Ich nix Admin. Ich root. :-D

Alle meine Komandozeilenbefehle

… für’s Netzwerk:

Ich habe mich mal Spaßes halber hingesetzt und eine kleine Auflistung von mehr oder minder üblichen Befehlen unter Windows und Linux erstellt.

Windows Linux Zweck
ipconfig /all ifconfig, iwconfig
Anzeige der Netzwerkkonfiguration bzw. Ändern dieser unter Linux/Unix
netstat netstat
Anzeige von Netzwerkverbindungen
ping ping
Ping an einen anderen Rechner senden
telnet telnet
Verbindung über Telnet zu einem anderen Rechner aufbauen
nmap
Portscanner
netsh ipconfig, iwconfig
Netzwerkkonfiguration eines Rechners ändern
nslookup nslookup, dig
Abfragen und Untersuchen der DNS Infrastruktur
route route, ip
Anzeige und Anpassen der IP-Routing Tabelle
tracert traceroute
Ermitteln der Route, die zum Erreichen eines Hosts verwendet wurde
getmac ifconfig
Anzeige der MAC-Adresse der Netzwerkkarte
ipseccmd
Anpassen der IPSec Regeln
ipxroute ip
Anzeige und Modifikation der IPX-Routing Tabelle
hostname hostname
Ausgabe des Hostnamens
arp arp
Anzeige und Modifikation der Einträge im ARP Cache
nbtstat
NetBIOS Status und Informationen abfragen

Wie ihr sehen könnt, gibt’s Lücken hier und da. Das liegt dann entweder daran, dass es für das jeweilige Betriebssytem von Natur aus keine Entsprechung für diesen oder jenen Befehl gibt. (Z.B.: nbstat - Linux bzw. Unix haben an sich nicht viel mit NetBIOS zu tun, bis man natürlich einen Samba-Server draufpackt.) Oder – das wäre der andere Fall – ich habe an der einen oder anderen Stelle eine Wissenslücke. Ergänzungen bzw. Berichtigungen sind herzlich willkommen. :-D

HeidiSQL vs. phpMyAdmin

Verwaltungsfrontends für Datenbanken gibt’s ja reichlich. Unter Windows habe ich versucht mit dem Programm HeidiSQL warm zu werden. Jedoch konnte ich mich mit dem übersichtlich gestalteten HeidiSQL aus diversen Gründen nicht anfreunden.

Ich hatte so meine liebe Not damit, die Kollationen (vereinfacht gesagt, die verwendeten Zeichensätze bei Textinhalt) einer importierten Datenbank zu ändern, damit diese einheitlich sind. Komischerweise blieb das Programm immer bei latin1_swedish_ci anstatt das von mir gewünschte utf8_general_ci als Einstellung für die Kollation zu übernehmen. Auch Teile des Bedienkonzeptes konnten mich nicht wirklich glücklich machen. Zum Beispiel das Hinzufügen neuer Spalten geht nur für jede Spalte einzeln:

HediSQL 4.0

HediSQL 4.0

phpMyAdmin hat hier den Vorteil, dass man vorweg sagen kann, wie viele Spalten man in der Tabelle haben möchte. Und diese kann man dann bequem per Tab erreichen, um so die Eigenschaften für die jeweilige Spalte festzulegen. Zusätzlich bietet phpMyAdmin die Möglichkeit, mittels Abfrageeditor Abfragen für Tabellen zu entwerfen. Wer MS Access kennt, wird sich hieran erinnert fühlen.

In HeidiSQL kann man unterhalb des Tabs “Query” seine SQL-Ausdrücke eingeben und sie ausführen. Das war anfangs für mich etwas problematisch, da ich in SQL nicht allzu geübt bin. An sich lässt sich das noch einigermaßen verkraften. Doch was für mich das absolute No-Go ist, wenn ein Programm die SQL-Anweisungen derartig exportiert, dass diese nicht konform zur SQL-Syntax sind! Kurzes Beispiel:

INSERT INTO "meineTabelle" ("spalte1", "spalte2") VALUES ('Ein Text', 123);

Man beachte die doppelten Anführungszeichen (a.k.a. Gänsefüsschen) um meineTabelle sowie spalte1 und spalte2. Solch eine Anweisung kann man natürlich so nicht in einem anderen MySQL-Client benutzen. phpMyAdmin hat mir da zunächst einen Fehler in meiner SQL-Syntax ausgespuckt. Und so hätte es richtig heißen müssen:

INSERT INTO `meineTabelle` (`spalte1`, `spalte2`) VALUES ('Ein Text', 123);

Vorher, wenn ich ein von HeidiSQL generiertes SQL-Script in phpMyAdmin benutzen wollte, habe ich erst einmal die Textersetzungsfunktion eines Editors bemühen müssen. Tja und das kann dann mal dauern, wenn man eine sehr große Datei durchrödeln muss.

phpMyAdmin hat allerdings den Nachteil, dass man immer einen Webserver (z.B. XAMPP) braucht auf dem das in PHP geschriebene Programm läuft. Aber mit dem freierhältlichen XAMPP hat man für Windows und Linux verfügbare Versionen.

Test der ReactOS LiveCD

An diesem langen Tag habe ich auch einenen Moment Zeit übrig gehabt, um mir mal ReactOS laufend anzusehen. Darum schnell das knapp 114 MB große CD-Image (ReactOS Version 0.3.8 wenn ich mich nicht irre?) zum Brennen herunter geladen und von der CD gestartet.

Im ersten Moment glaubte ich, dass es überhaupt nicht auf meinem Rechner laufen würde, da beim Bootvorgang die Nachricht “Unable to read file system on D:” erschien. Bis mir dann bei meinen zahlreichen Patritionen dämmerte, dass diese ja mit ntfs formatiert ist. Aktuell fehlt die Unterstützung noch für das ntfs Dateisystem, welches bei Windows XP und Vista üblich ist.

Schließlich startete auch die Benutzeroberfläche, so dass ich erst einmal erleichtert aufatmete. (Eine LiveCD mit Belenix wollte bei mir gar nicht erst mit grafischer Oberfläche anfangen, aber das nur so am Rande.) Nur die Hardware kannte das junge Betriebssystem zu einem großen Teil nicht. Aber das war zu erwarten.

Continue reading ‘Test der ReactOS LiveCD’

Wenn malloc sich mal mehr nimmt – Teil 2

Noch immer bin ich auf der Suche nach einer Erklärung für malloc’s Verhalten Um zu schauen, was malloc so unter Windows treibt, habe ich das Programm unverändert mit Hilfe von NetBeans und Cygwin für Windows XP übersetzt, sowie anschließend mit dem Debugger laufen lassen.

Beim Blick ins Debuggerfenster dachte ich, dass ich nicht richtig sehe.

Debuggerlauf unter Windows

Debuggerlauf unter Windows

NetBeans zeigt mir insgesamt 20(!) C-Strings in buf an.Dabei hatte ich aber nur drei bestellt. Irgendwie ist mir das nicht geheuer bei dieser Konstellation.

Update:

Mittlerweile habe ich die Fragestellung ins Forum verlegt und auch eine Antwort erhalten. Schuld daran ist das sogenannte Alignment, sprich die einzelnen Bytes werden (unter einem 32 Bit System) in, für den Prozessor, handliche vierer Packs unterteilt.

Acer Software und das NET Framework 3.5

Für das parallelinstallierte Windows habe ich heute mal die von Acer für das TravelMate 2490 bereitgestellte Software ePowerManager Managment installiert, da die Batterie schnell leer wurde bei Aktivitäten, wie Surfen, E-Mail und Textverarbeitung. Offensichtlich schafft Windows XP nicht den Prozessor mal ein bisschen langsamer zu betreiben, als nötig wäre. Außerdem kann man mit dem Acer Tool Dinge wie den Card Reader oder den nicht genutzten LAN Anschluss vom Strom abkoppeln.

Die Installation wäre ja an sich relativ schnell erledigt gewesen, wenn die Software nicht nach einem:

NET Framework 1.1 oder neuerer Version

verlangt hätte.

Gut, suchst du dir eben das Gedöns von Microsoft im Netz. Als erstes wurde mir das NET Framework in Version 3.5 SP1 angeboten. Mit der aktuellen Version wirds doch sicherlich auch laufen, dachte ich mir da. (Der Satz wies ja immerhin eine ODER-Verknüpfung auf)

Aber ePowerManager Managment wollte NET Framework 3.5 partout nicht kennen. Nein, es musste Version 1.1 sein, sonst ließ sich das gute Stück nicht installieren. Da hätte ich mir den Kriechdownload von 63 MB für 3.5 sparen können. :lol:

Na ja, mit NET Framework 1.1 läufts ja auch.

Nervensäge Flash

Heute, so gegen fünf Uhr nachmittags, habe ich meinen (schon schmerzlich vermissten ;-) ) Drahtesel aus der Fahrradwerkstatt abgeholt. (Das Hinterrad musste ausgetauscht werden.)

Der Werkstattinhaber saß an seinem Computer im Nebenraum, als ich den Kassenraum betrat. Von weitem konnte ich ihn über seinen (Windows-)PC schimpfen hören. Adobes Flash Player zickte mal wieder rum, was so ziemlich dem Alltag am Rechner entsprach.

Nachdem die Formalitäten rund ums Fahrrad erledigt waren, hatte ich kurzerhand angeboten, mir mal den Übeltäter an zu schauen. Laut Aussage des Computerbesitzers, verlangt der Flashplayer bei Besuch einiger von Flash-gestützten Homepages nach der Installation des entsprechenden Plugins, was aber schon längst installiert ist.

Also mal dem Internet Explorer 7  :roll: auf den Zahn gefühlt. Der Flash Player war installiert und geladen. Bei Besuch von Youtube gab es auch keine dramatischen Zwischenfälle. Somit funktioniert Flash schon mal prinzipiell auf dem Computer. Eigentlich hätte mir der Nutzer mal ein entsprechendes Szenario vorführen müssen, wo Flash einfach nicht das machen will, was man von ihm verlangt. Da aber schon die nächste Kundin im Laden stand, musste ich die PC-Doktorei an diesem Punkt abbrechen. :-?

Im gleichen Zuge habe ich noch etwas Aufklärungsarbeit geleistet, was die Begrifflichkeiten um JavaScript und Java betrafen. Denn eines sollte man sich unbedingt merken, auch wenn man nicht in einer der beiden Sprachen programmiert:

Java != JavaScript  (Java ist nicht JavaScript)

Bis auf nur wenige Ähnlichkeiten wie den Namen, haben die beiden aber nicht viel miteinander zu tun.

Laptopkrise

Es ist jetzt knapp zwei Tage seit ich das Windows XP auf meinem Acer neuinstallieren musste. Würde nur ich den Laptop allein benutzen, so wäre mir dieser Umstand egal gewesen oder er wäre nie eingetreten. (Auf dem Laptop wäre das Windows sowieso bald von der Platte geflogen und Linux wäre installiert worden).

Wie es zum eigentlichen Komplettabsturz gekommen war, kann ich bestenfalls nur mutmaßen, weil Windows nicht in meinem Beisein abgeschmiert ist. Am Morgen des 26. Septembers lief alles noch tadellos: keine Fehlermeldungen oder Sonstiges, was dem Normaluser aufgefallen wäre. Nachmittags, beim erneuten Hochfahren soll es dann passiert sein.
Im laufenden Zustand bekam ich die von Acer ab Werk eingestellte Reinstallationsroutine zu sehen. Bei diesem Anblick schloss ich zunächst auf fehlende oder beschädigte Startdateien, die Windows zum Hochfahren braucht.
Continue reading ‘Laptopkrise’