TechBlog cotec it-systeme GmbH
Zurück zum Start

Microsoft Exchange: Mailauslieferungsprobleme bei Fehlern in Datei hosts

15. Januar 2010

Symptome

  • Exchange hat Schwierigkeiten, Mails auszuliefern
  • Im Protokoll finden sich Fehler 1009 – MSExchangeMailSubmission

Ursache

Die mögliche Ursache dieser Probleme kann in der hosts-Datei liegen, welche DNS-IP-Adressen-Paare für die lokale DNS-Namensauflösung enthält. Der Pfad zur Datei lautet: %SystemRoot%\system32\drivers\etc\hosts.

Sollte sich hier ein falscher oder störender Eintrag “eingeschlichen” haben, so kann das dazu führen, dass Exchange Probleme mit der Weitergabe von Nachrichten hat.

Hier kann bspw. für den Servernamen eine IP-Adresse hinterlegt sein, welche nicht mehr gültig ist. Mit diesem Fall kann scheinbar Exchange 2007 nicht so recht umgehen, wenn die Microsoft Exchange-Mailübergabe (MSExchangeMailSubmission) und der Microsoft Exchange-Transport (MSExchangeTransport) auf dem selben Server laufen. Möglichwerweise stört dann die bei der DNS-Auflösung gefundene falsche IP-Adresse.

Das Problem äußert sich sowohl bei Nachrichten an externe Mailserver, als auch solche, die innerhalb der Exchange-Infrastuktur ausgeliefert werden sollen.

Lösung

Das Bereinigen der hosts-Datei und der darauf folgende Neustart der Dienste Microsoft Exchange-Mailübergabe (MSExchangeMailSubmission) und der Microsoft Exchange-Transport (MSExchangeTransport) sollte das Problem lösen.

Firefox – automatische URL unterdrücken

01. Dezember 2009

Das so genannte Domain Guessing im Mozilla Firefox erleichtert sicher vielen Nutzern das Leben. Wenn eine eingegebene URL nicht gefunden werden kann, “vervollständigt” der Browser die URL um ein vorgestelltes www. und ein nachfolgendes .com.

Diese Hilfe kann aber leider auch sehr störend sein, wenn man bspw. Websites entwickelt und auf dem lokalen PC einen Webserver für das Testen/Debuggen laufen lässt. Dieser wird dann meist unter dem Namen localhost angesprochen. ISt dieser Webserver einmal nicht erreichbar, was ja durchaus vorkommen kann, versucht es der Firefox brav mit www.localhost.com. Diese Adresse merkt sich der Browser auch dann in der Adressleiste, was die weitere Arbeit einigermaßen erschweren kann, da dann wieder die korrekte Adresse “von Hand” eingegeben werden muss.

Glücklicherweise (wer hätte es anders erwartet) kann dieses Verhalten jedoch beeinflusst werden. Firefox bietet dazu in den Einstellungen about:config folgende Möglichkeiten:

  • browser.fixup.alternate.enabled  – true/false
    Steuert das Domain Guessing generell (ein/aus)
  • browser.fixup.alternate.prefix   – “www.”
    Hier kann das Prefix hinterlegt werden. Es ist also durchaus möglich (wenn auch nicht sehr vorteilhaft) hier ein anderes Prefix zu verwenden, wie bspw. “ftp.”.
  • browser.fixup.alternate.suffix   – “.com”
    Analog zum Prefix existiert natürlich auch die Möglichkeit ein Suffix vorzugeben. “.de” wäre in Deutschland wohl eine brauchbare Variante zu “.com”.

Insgesamt lässt sich über die Sinnhaftigkeit des Domain Guessing streiten, dass wird auch durch die auf der  Mozilla-eigenen Seite zum Domain Guessing speziell im Abschnitt “Limitations” ersichtlich. Die Funktion wird wohl häufiger zu Fehlern führen und auf Seiten “weiter leiten” die der Nutzer gar nicht ansteuern wollte. Außerdem haben sich die meisten bestimmt schon wie ich an das sehr bequeme Auto-Complete in der Adressleiste gewöhnt.

Eingabeaufforderung direkt aus Explorer-Ordner öffnen (Open Shell Here)

21. September 2009

Um eine Shell (Eingabeaufforderung) direkt aus einem Ordner im Explorer öffnen zu können, waren unter Windows NT 4 und XP noch notwendig die PowerToys oder eindirekter Eingriff in die Registry notwendig.

Windows 7 (eigentlich schon Windows Vista) bieten diese Möglichkeit glücklicherweise ohne nachträgliche Änderungen. Das Öffnen einer Eingabeaufforderung ist jetzt direkt über das Kontextmenü möglich, wenn während des Öffnens die Shift-Taste gedrückt gehalten wird.

Bildschirmabbilder mit Greenshot

08. September 2009

Mit der Open Source Anwendung Greenshot (http://greenshot.sourceforge.net/) lassen sich unkompliziert und trotzdem vielseitig Bildschirmabbilder (Screenshots) erstellen, die dann bspw. in Dokumenten, Mails oder Blogs auf einfachste Weise weiter verwendet werden können.

Greenshot hängt sich dafür an die Druck-Taste der Tastatur und bietet die Möglichkeit den ganzen Bildschirm, einzelne Fenster oder auch einen beliebigen rechteckigen Bereich abzufotografieren. Ein erstellter Screenshot kann dabei einfach nur in die Zwischenanblage hinterlegt, als Datei gespeichert oder sogar direkt gedruckt werden. Der eingebaute Editor ermöglicht es zusätzlich, die Abbilder nachzubearbeiten.

IE6 und transparente PNG

10. August 2009

Es gibt eine noch relativ unbekannte Lösung für das leidliche Transparenz-Problem.

http://www.dillerdesign.com/experiment/DD_belatedPNG/

Bis auf wenige Ausnahmen funktioniert dieses Javscript sowohl mit allen PNGs in img-Tags als auch mit über CSS eingebundenen Grafiken. Es sind keine CSS-Hacks oder IE6-spezifische CSS-Dateien nötig.

JKDefrag wird zu MyDefrag 4.0

17. Juli 2009

Das leistungsstarke und kostenlose Defragmentierprogramm liegt jetzt in der überarbeiteten Version 4.0 vor (siehe Artikel Software zum Defragmentieren…)

Zudem wurde für diesen Release auch der Name geändert: Aus JKDefrag wird MyDefrag.

Die Software ist jetzt unter www.mydefrag.com erhältlich.

SQL Server: Batch für die Auflistung aller vorhandenen Tabellen

16. Juli 2009

Für die Auflistung aller vorhandenen Tabellen einer Datenbank ab SQL Server 2005 inklusive der Zeilenanzahl und Größe eignet sich folgender Batch:

DECLARE @tabName NVARCHAR(128)

CREATE TABLE #res (name NVARCHAR(128), [rows] NVARCHAR(100), reserved NVARCHAR(100), data NVARCHAR(100), index_size NVARCHAR(100), unused NVARCHAR(100))
DECLARE crsr CURSOR FOR SELECT TABLE_SCHEMA + '.' + TABLE_NAME FROM INFORMATION_SCHEMA.Tables
OPEN crsr

FETCH NEXT FROM crsr INTO @tabName
WHILE @@FETCH_STATUS = 0
BEGIN
INSERT #res EXEC sp_spaceused @tabName
FETCH NEXT FROM crsr INTO @tabName
END

CLOSE crsr
DEALLOCATE crsr
SELECT * FROM #res
DROP TABLE #res

Installation des SQL Servers 2008 schlägt fehl

15. Juli 2009

Wenn die Installation von SQL Server 2008 Standard fehl schlägt, kann der Grund mitunter die vorherige Installation des MSXML Core Services 6.0 Service Pack 2 sein. Das Problem trat auch schon bei SQL Server 2005 auf (http://support.microsoft.com/kb/968749)

Umgehen lässt sich das Problem indem die Insallation des MSXML Core Services 6.0 Service Pack 2 “versteckt”. Dies ist mit dem Tool “Windows Installer Clean Up” von Microsoft (http://support.microsoft.com/kb/290301) möglich, welches nur die Installationsinformationen entfernt, die installierten Dateien jedoch unberührt lässt. Genauere Informationen dazu finden sich unter http://support.microsoft.com/kb/968749).

Ein Fehlerprotokoll entsprechenden fehlgeschlagenen Installation von SQL Server 2008 auszugsweise wie folgt:

Overall summary:
  Final result:                  SQL Server installation failed. To continue, investigate the reason for the failure, correct the problem, uninstall SQL Server, and then rerun SQL Server Setup.
  Exit code (Decimal):           -2068643839
  Exit facility code:            1203
  Exit error code:               1
  Exit message:                  SQL Server installation failed. To continue, investigate the reason for the failure, correct the problem, uninstall SQL Server, and then rerun SQL Server Setup.
  Start time:                    2009-07-15 08:37:37
  End time:                      2009-07-15 09:04:11
  Requested action:              Install
  Log with failure:              C:\Programme\Microsoft SQL Server\100\Setup Bootstrap\Log\20090715_083611\Msxml6_Cpu32_1.log
  Exception help link:           http://go.microsoft.com/fwlink?LinkId=20476&ProdName=Microsoft+SQL+Server&EvtSrc=setup.rll&EvtID=50000&ProdVer=10.0.1600.22
Machine Properties:
  Machine name:                  SERVER
  Machine processor count:       2
  OS version:                    Windows Server 2003
  OS service pack:               Service Pack 2
  OS region:                     Deutschland
  OS language:                   Deutsch (Deutschland)
  OS architecture:               x86
  Process architecture:          32 Bit
  OS clustered:                  No
Product features discovered:
[...]

Package properties:
  Description:                   SQL Server Database Services 2008
  SQLProductFamilyCode:          {628F8F38-600E-493D-9946-F4178F20A8A9}
  ProductName:                   SQL2008
[...]
Detailed results:
  Feature:                       Database Engine Services
  Status:                        Failed: see logs for details
  MSI status:                    Failed: see details below
  MSI error code:                0x5EBE5729
  MSI log file location:         C:\Programme\Microsoft SQL Server\100\Setup Bootstrap\Log\20090715_083611\Msxml6_Cpu32_1.log
  MSI error description:
  Configuration status:          Passed
  Feature:                       SQL Server Replication
  Status:                        Failed: see logs for details
  MSI status:                    Failed: see details below
  MSI error code:                0x5EBE5729
  MSI log file location:         C:\Programme\Microsoft SQL Server\100\Setup Bootstrap\Log\20090715_083611\Msxml6_Cpu32_1.log
  MSI error description:
  Configuration status:          Passed
  Feature:                       Full-Text Search
  Status:                        Failed: see logs for details
  MSI status:                    Failed: see details below
  MSI error code:                0x5EBE5729
  MSI log file location:         C:\Programme\Microsoft SQL Server\100\Setup Bootstrap\Log\20090715_083611\Msxml6_Cpu32_1.log
  MSI error description:
  Configuration status:          Passed
  Feature:                       Management Tools - Basic
  Status:                        Failed: see logs for details
  MSI status:                    Failed: see details below
  MSI error code:                0x5EBE5729
  MSI log file location:         C:\Programme\Microsoft SQL Server\100\Setup Bootstrap\Log\20090715_083611\Msxml6_Cpu32_1.log
  MSI error description:
  Configuration status:          Passed
Rules with failures:
Global rules:
Scenario specific rules:
Rules report file:               C:\Programme\Microsoft SQL Server\100\Setup Bootstrap\Log\20090715_083611\SystemConfigurationCheck_Report.htm

Software zum Defragmentieren von Laufwerken

11. Juni 2009

Auf den ersten Blick ist JKDefrag von Jeroen Kessels nicht die am einfachsten zu bedienende Software, um Laufwerke zu defragmentieren.

www.kessels.com/Jkdefrag

Auf den zweiten Blick und vor allem mit GUI-Tools wie JKDefragStarter ist dieses vielseitige Programm eine sehr gutes Hilfsmittel für die Rechnerpflege. Speziell durch die umfangreichen Defragmentiermodi und die Möglichkeit, das Programm ohne Benutzereingriff (unattended) zu starten (bspw. automatisch bei System) lässt sich JKDefrag unkompliziert einsetzen.

.NET / C#: COM Objekt freigeben

11. Juni 2009

Bei Verwendung von COM-Objekten in .NET ist es häufig notwendig, die referenzierten Objekte freizugeben. Dies funktioniert am sichersten mittels:

System.Runtime.InteropServices.Marshal.ReleaseComObject(object o)

Das einfache Auf-Null-Setzen des entsprechenden Objekts reicht nicht aus.

(Siehe MSDN-Doku zu ReleaseComObject)