In letzter Zeit kam ich nicht oft dazu an dem Blog oder privaten Seiten zu arbeiten, da die Arbeit (glücklicherweise) viele Aufträge zu bieten hatte, die (leider) immer recht straff geplant waren.

Um kein größeres Thema hier aufzumachen, an dem ich dann länger schreiben würde und dass dann ggf. nicht so sauber abgehandelt werden würde, wie ich das gerne hätte, hab ich mir vorgenommen wenigstens die letzten Tools, die mir im Alltag über den Weg gelaufen sind hier vorzustellen:

 

VSO DivxToDVD

Die Tage wurde ich gebeten ein im Internet sehr umstrittenes Video auf DVD verfügbar zu machen, da einer meiner Bekannten keinen Computer hatte, um ins Internet zu gehen, geschweige denn sich das heruntergeladene DivX Video anzuschauen. Nach einigen Versuchen mit Software, die mehr schlecht als Recht war, führte mich Google auf die Seite von Softonic, wo ich den VSO DivxToDVD Converter 0.5.2.99 fand. Ein sehr cooles Tool, einfach gehalten und auch noch kostenlos:

image

Als ich mich nach einem Update beim Hersteller umschauen wollte, fand ich heraus, dass (zu meinem Bedauern) das nette kleine (und vor allem kostenlose ;-D) Tool mittlerweile kostenpflichtig geworden ist. Ich find gut, dass VSO sich dazu entschlossen hat, dieses Programm professionell zu vermarkten, denn ich finde, dass das Programm echt gut ist, aber natürlich habe ich keine Lust für eine einfache Konvertierung ab und an Geld auszugeben. Das Programm heißt mittlerweile ConvertXToDVD und kostet rund 40€.

(Hinweis: Softonic hat aber immer noch den Link zur alten, kostenfreien Version).

 

SDP Multimedia

Während der Suche nach einem Problem, fand ich letzte Woche zufällig einen Webcast, den ich mir gerne angeschaut hätte, der aber keinen direkten Downloadlink hatte. Er schien mir einige gute Infos zu enthalten, aber war einfach zu lang, um ihn mir mal kurz nebenbei anzuschauen. Darum versuchte ich ihn auf verschiedene Weisen runterzuladen, was allerdings nicht klappte, bis ich den Streamripper SDP Multimedia fand.

image

Er ist zwar ein wenig langsam im Download (oder vielleicht war das auch der Streaming-Server :-D), aber auf jeden Fall wiederum kostenlos.

Man braucht lediglich einen Stream über das MMS Protokoll angeben, und schon wandert das Video auf die Platte.

 

FileSystemWatcher

Nachdem wir bei uns auf der Arbeit schon seit längerer Zeit VisualCron verwenden, um unsere Dateibasierten-Cronjobs aufzusetzen, musste ich neulich feststellen, dass beim .Net Framework ebenfalls eine Hilfsklasse zu diesem Zweck vorhanden ist: System.IO.FileSystemWatcher.

Dieses Objekt erlaubt es das Dateisystem zu beobachten und auf bestimmte Änderungen zu reagieren. Dazu muss man lediglich das Objekt instanziieren, das Verzeichnis, welches es zu überwachen gilt nennen, (auf Wunsch eine Maske (z.B. nur .cs-Dateien) definieren und dem Objekt sagen, dass es die Überwachung starten soll:

 

System.IO.FileSystemWatcher fsWatcher = new System.IO.FileSystemWatcher();

fsWatcher.Path = @"C:\fsWatcherTest";
fsWatcher.Created += new System.IO.FileSystemEventHandler(FileCreated);
fsWatcher.WaitForChanged(System.IO.WatcherChangeTypes.Created);

 

Mit diesem Code würde der FileSystemWatcher auf das Erstellen von genau einer Datei warten und dann die Methode FileCreated aufrufen. Um auch Umbenennungen zu reagieren und zwar nicht nur einmal, sondern mehrfach, habe ich das Programm folgendermaßen erweitert:

 

class Program
{
    static void Main(string[] args)
    {
        System.IO.FileSystemWatcher fsWatcher = new System.IO.FileSystemWatcher();

        fsWatcher.Path = @"C:\fsWatcherTest";
        fsWatcher.Created += new System.IO.FileSystemEventHandler(FileCreated);
        fsWatcher.Renamed += new System.IO.RenamedEventHandler(FileRenamed);

        while (true)
        {
            fsWatcher.WaitForChanged(System.IO.WatcherChangeTypes.Created);
            fsWatcher.WaitForChanged(System.IO.WatcherChangeTypes.Renamed);
        }
    }

    static void FileCreated(object sender, System.IO.FileSystemEventArgs e)
    {
        Console.WriteLine(String.Format("File Created: {0}", e.FullPath));
    }

    static void FileRenamed(object sender, System.IO.RenamedEventArgs e)
    {
        Console.WriteLine("---");
        Console.WriteLine("File Renamed:");
        Console.WriteLine(String.Format("Old path: {0}", e.OldFullPath));
        Console.WriteLine(String.Format("Old name: {0}", e.OldName));
        Console.WriteLine(String.Format("New path: {0}", e.FullPath));
        Console.WriteLine(String.Format("New name: {0}", e.Name));
        Console.WriteLine("---");
    }
}

 

Folgende Schritte habe ich danach gemacht:

1.) Das Programm gestartet.

2.) Eine Textdatei in dem Ordner erstellt.

3.) Diese Textdatei umbenannt.

Dabei entstand folgende Ausgabe:

image

 

Interessant dabei: Wenn ich eine neue Datei unter Vista via Rechtsklick erstelle, dann erscheint die Datei in dem Verzeichnis und der Name (ohne Dateiendung) wird markiert, damit ich den Namen direkt ändern kann. Wie ich es gerade in diesem Satz beschrieben habe, wird die Datei wirklich zuerst erstellt und dann nachträglich geändert (was auch in der Anwendung oben zu sehen ist). Also passt auf, denn die Datei könnte nach dem Erstellen evtl. noch nicht den finalen Namen haben.