Archiv der Kategorie: Windows

ständig herunterfahrender Server

Wir haben hier einen Windows(R) 2003 Small Business Server, der eigentlich als Windows Updateserver dienen soll. Leider fährt dieser ständig herunter. Zuerst wurde ein Virus vermutet – aber es hat sich mal wieder gezeigt, dass es für solche Verhaltensweisen garkeines Virus bedarf: Windows Small Business Server muss als Domain Controller konfiguriert sein – sonst darf man es nicht nutzen, und das war eben nicht der Fall und wird einfach mit Zwangs-Shutdown bestraft (siehe auch im MSDN Artikel dazu).

Der Mechanismus greift übrigens erst nach 7 Tagen – scheinbar um die Möglichkeit zur Migration zu geben. Das Problem ist, dass beim Setup wohl kein Hinweis auf die Problematik erscheint und man schön im glauben ist, alles funktioniert – bis das System dann nach einer Woche anfängt automatisch herunterzufahren. <Sarkasmus> Das muss man sich ja direkt merken – einmal Server beim Kunden installieren und eine Woche später nochmal Geld verdienen – danke Microsoft! <Sarkasmus Ende>

Fritz!Fax Workaround – letzte Faxnummer nicht merken

Der Fax-Druckertreiber von AVM (Fritz!Fax) ist eigentlich eine sehr nützliche Sache. Eines hat mich aber gestört: Nach dem Drucken wird die Faxnummer abgefragt, wohin das Fax gehen soll. Das entsprechende Feld ist mit der zuletzt verwendeten Nummer vorbelegt – was bei ein wenig Unachtsamkeit schonmal dazu führen kann, dass ein Fax eben an diesen letzten Empfänger verschickt wird, wenn man zu schnell OK drückt.

Laut dem im Übrigen ziemlich guten Support von AVM gibt es keine Möglichkeit dieses verhalten zu deaktivieren. Man hat das zwar als Verbesserungsvorschlag weitergeleitet, da die letzte Version der Fritz! Software leider vom 2.11.2005 ist habe ich allerdings wenig hoffnung, dass die Verbesserung schnell umgesetzt wird.

Workaround

Ich habe festgestellt, dass die Fax-Software die zuletzt verwendete Nummer in der Registry unter HKEY_CURRENT_USER\Software\AVM\FRITZ! 2.0\Fax im String Rufnummer speichert. Leider scheint man über die Registry-Berechtigungen nur den vollständigen Schlüssel „Fax“ sperren zu können, was dazu führt, dass man garnichts merh verschicken kann.

Mir ist aber aufgefallen, dass der Fritz!Fax Druckertreiber offensichtlich FriSnd32.exe im FRITZ!-Programme Ordner (hier C:\Programme\FRITZ!) zum Versand aufruft, welche dann den Dialog zur Rufnummerabfrage einblendet. In diesen Prozess galt es sich „einzuklinken“. Also habe ich FriSnd32.exe in FriSnd32_real.exe umbenannt.

Also habe ich einen AutoIt Script „FriSnd32.au3“ erstellt, welcher nichts anderes macht als den eben gefundenen Schlüssel zu leeren und das originale FriSnd32_real.exe mit denen an den Script übergebenen Parametern aufruft.

Dieser Script kann dann mit dem AutoIt „Compiler“ in FriSnd32.exe umgewandelt und in das Fritz! Verzeichnis kopiert werden. Von nun an ist das Fax-Nummer-Feld leer.

Das Script:

$param = ""for $i = 1 to $CmdLine[0] Step 1

$param = $param & " """ & $CmdLine[$i] & """"

Next

RegWrite("HKEY_CURRENT_USER\\SOFTWARE\\AVM\\FRITZ! 2.0\\Fax","Rufnummer","REG_SZ","")

Run("FriSnd32_real.exe" & $param)

FriSnd32-Wrapper

Windows Rechtesystem

Ich habe ein interessantes Tool entdeckt, mit dem man unter Windows Zugriffsberechtigungen relativ komfortabel per Befehlszeile setzen kann. Also das Äquivalent zum chmod der Unixwelt.

Das Problem ist wohl einfach, dass die Windows ACLs einfach unnötig kompliziert sind: Sprich in der Praxis werden Sie seltenst voll ausgereizt und die Gefahr, dass ein unbedarfter Hobby-Administrator völlig an der Komplexität verzweifelt und einfach nur noch „jedem überall“ Zugriff gibt, ist groß.

Hier mal die Zugriffsberechtigungen auf einem Standard-XP-System auf die Datei C:\boot.ini

C:\Programme\Windows Resource Kits\Tools>subinacl /file c:\boot.ini

==================
+File c:\boot.ini
==================
/control=0x1400 SE_DACL_AUTO_INHERITED-0x0400 SE_DACL_PROTECTED-0x1000
/owner =vordefiniert\administratoren
/primary group =system
/audit ace count =0
/perm. ace count =3
/pace =vordefiniert\hauptbenutzer ACCESS_ALLOWED_ACE_TYPE-0x0
Type of access:
Read
Detailed Access Flags :
FILE_READ_DATA-0x1 FILE_READ_EA-0x8 FILE_EXECUTE-0x2
0
FILE_READ_ATTRIBUTES-0x80 READ_CONTROL-0x20000 SYNCHRONIZE-0x10
0000
/pace =vordefiniert\administratoren ACCESS_ALLOWED_ACE_TYPE-0x0
Type of access:
Full Control
Detailed Access Flags :
FILE_READ_DATA-0x1 FILE_WRITE_DATA-0x2 FILE_APPEND_DATA
-0x4
FILE_READ_EA-0x8 FILE_WRITE_EA-0x10 FILE_EXECUTE-0x2
0 FILE_DELETE_CHILD-0x40
FILE_READ_ATTRIBUTES-0x80 FILE_WRITE_ATTRIBUTES-0x100 DELETE-0x10000
READ_CONTROL-0x20000
WRITE_DAC-0x40000 WRITE_OWNER-0x80000 SYNCHRONIZE-0x10
0000
/pace =system ACCESS_ALLOWED_ACE_TYPE-0x0
Type of access:
Full Control
Detailed Access Flags :
FILE_READ_DATA-0x1 FILE_WRITE_DATA-0x2 FILE_APPEND_DATA
-0x4
FILE_READ_EA-0x8 FILE_WRITE_EA-0x10 FILE_EXECUTE-0x2
0 FILE_DELETE_CHILD-0x40
FILE_READ_ATTRIBUTES-0x80 FILE_WRITE_ATTRIBUTES-0x100 DELETE-0x10000
READ_CONTROL-0x20000
WRITE_DAC-0x40000 WRITE_OWNER-0x80000 SYNCHRONIZE-0x10
0000

Elapsed Time: 00 00:00:00
Done: 1, Modified 0, Failed 0, Syntax errors 0
Last Done : c:\boot.ini

Zum Vergleich die Linux Dateiberechtigungen:


self@self-laptop:~$ ls -al /boot/grub/menu.lst
-rw-r--r-- 1 root root 6146 2007-06-17 19:39 /boot/grub/menu.lst

damit kann man doch meist auch ganz gut leben?

automatisieren von Windows abläufen

Auf der Suche nach einer Möglichkeit Software auf mehreren Rechnern zu installieren, habe ich AutoIt entdeckt. Damit kann man relativ komfortable Windows-Programme fern steuern. Es gibt sogar ein recht belebtes deutsches Autoit Wiki.

Ein kurz von mir auf’s deutsche Windows angepasster Script, welcher Notepad öffnet, einen Text schreibt und es wieder schließt, sieht z.B. so aus:

Run("notepad.exe")
WinWaitActive("Unbenannt - Editor")
; Text schreiben
Send("Hallo vom Windows Editor.{ENTER}1 2 3 4 5 6 7 8 9 10{ENTER}")
Sleep(500)
Send("+{UP 2}")
Sleep(500)
; Schließen über das Dateimenü
Send("!d")
Send("b")
; Abfrage bestätigen
WinWaitActive("Editor", "Nein")
Send("n")
WinWaitClose("Unbenannt - Editor")

Das Ganze kann auch direkt in eine EXE umgewandelt werden.

Ich bin sehr gespannt, wie sich das in der Praxis bewährt.

Fehler beim Öffnen von Links

Ich habe jetzt schon auf dem zweiten Windows-Rechner das Problem beobachtet, dass beim öffnen von Links z.B. vom Desktop aus Firefox beim starten die Meldung anzeigt, dass die Adresse falsch sei. Die Seite wird aber trotzdem geöffnet.

Ein wenig Googlen führte mich zu WinTotal und das Herunterladen und übernehmen der korrekten Registryeinträge hat dann auch endlich Abhilfe geschaffen.