Die Community zu .NET und Classic VB.
Menü

Ausschreibung: CD mittels Nero 6-API brennen

 von 

Beschreibung  

Kurzinfo

  • Titel: CD mittels Nero 6-API brennen
  • Ausschreibungsbeginn: 05.07.2004
  • Einsendeschluß: 19.07.2004
  • Auftraggeber:
  • Jury: Tina Schuster, Florian Rittmeier, Konrad Rudolph
  • Preisgeld: 100 Euro

Aufgabenstellung

Es soll möglichst in VB.NET ein Programm entwickelt werden, das zeitgesteuert mit Hilfe der ActiveX-DLL nerocom.dll bestimmte Verzeichnisse auf eine CD-R bzw. CD-RW brennt. Die DLL-Datei ist Bestandteil der Brennprogramme Nero 6 und Nero 6 Express der Firma Ahead.

Nachfolgend die genauen Vorgaben:

  • Es sollen ein oder mehrere Verzeichnisse mittels Nero 6 API zeitgesteuert auf eine CD-R oder CD-RW gebrannt werden.
  • Der Brennvorgang soll nach Rückfrage mit dem Benutzer gestartet werden.
  • Die Verzeichnispfade und die Zeitvorgabe soll aus eine INI- oder ähnlichen Datei eingelesen werden.
  • Das Programm fragt nach, ob der Vorgang gestartet werden soll. Wenn ja, dann prüft es, ob eine leere CD-R oder CD-RW eingelegt ist.
  • Ist eine CD-RW eingelegt und ist diese nicht leer, wird nachgefragt, ob diese formatiert werden soll.
  • Der Vorgang kann jederzeit vor dem Beginn des Brennens abgebrochen werden.
  • Die Menge der zu schreibenden Daten soll vor dem Beginn des Brennvorgangs mit der Kapazität des Mediums verglichen werden.
  • Ist der Brenner zum Schreiben bereit, dann kann der Brennvorgang starten. Während des Brennens soll eine Statusanzeige mit Prozentangabe oder ein Progressbar eingeblendet werden.
  • Wenn der Vorgang abgeschlossen ist, dann soll die CD ausgeworfen werden und eine Meldungsbox erscheinen, die über Erfolg oder Misserfolg möglichst detailliert informiert.
  • Ist der Brennvorgang fehlgeschlagen, dann wird der Benutzer gefragt, ob er es erneut versuchen will.
  • Die Zeitsteuerung ist so zu verstehen, dass sofern 9:00 Uhr eingestellt wäre, das Programm täglich um 9:00 Uhr die entsprechende(n) Aufgabe(n) durchführt. Natürlich nur, wenn der Rechner zu dieser Zeit betriebsbereit ist.
  • Das Programm darf keine merkliche Rechenzeit außerhalb seiner Funktion verbrauchen.

Zusätzliche Bedingungen:

  • Bei Inaktivität kein sichtbares Fenster
    • Programm wird mittels Autostart gestartet und läuft im Hintergrund
    • Kein Fenster von Nero und keine Messagebox von Nero sollen sichtbar sein
  • Icon im Systray
    • Programm kann hier abgeschaltet werden
    • Funktionalität kann direkt gestartet werden
    • Pfade für die Dateien können über ein Fenster eingetragen werden, das über einen Menüeintrag aufgerufen wird

Eine Lösung in VB.NET wird favorisiert. Die Lösung kann auch in VB5/6 geschrieben werden, allerdings muss der Auftraggeber diese anschließend nach VB .NET konvertieren, deshalb gibt es auf die erste Variante mehr Punkte. Es muss die Nero 6-API zum Brennen verwendet werden. Es dürfen Standard-Komponenten und API-Aufrufe verwendet werden. Die Lösung muss unter Windows XP funktionieren, Visual Styles sind also erwünscht und werden mit bis zu 10 Extra-Punkten honoriert.

Ermittlung des Gewinners

Es werden alle Einsendungen ausgewertet, die bis zum Einsendeschluss eingegangen sind. Der Gewinner wird durch die Vergabe von Punkten ermittelt. Jedes der drei Jurymitglieder vergibt 0-40 Punkte.

Quellcode in VB .NET4 Punkte
Vorgaben eingehalten16 Punkte
Verständliche Dokumentation10 Punkte
Visual Styles verwendet10 Punkte

Hilfestellung

Eine voll funktionsfähige Demo-Version sowie das SDK von Nero 6 können von der Website des Herstellers Ahead bezogen werden:

Weitere Regelungen

Einsendungen müssen per Email an gesendet werden.

Die Themen dürfen im Forum diskutiert werden, Einsendungen werden jedoch bis zum Einsendeschluß geheimgehalten.

Preisgeld

Das Preisgeld von 100 Euro wird per Überweisung an den Gewinner ausgezahlt.

Anmerkung

Alle Einsendungen dürfen nach Einsendeschluß von ActiveVB.de veröffentlicht werden.

Lösung

Zu dieser Ausschreibung sind zwei Lösungen eingegangen. Beide waren in VB .NET programmiert. Während Maximilian Holl zur Entwicklung die freie Entwicklungsumgebung SharpDevelop verwendete, setzte Marvin Heumüller auf Microsoft Visual Studio .NET 2003.

Sieger der Ausschreibung ist Marvin, unter anderem, da seine Kommentierung verständlicher ist und Visual Styles konsequenter umgesetzt werden.

Einsendungen zur Ausschreibung (140 KB) 

Anmerkung: Je nach verwendeter Version von Nero 6 müssen die Quellcodes eventuell leicht angepasst bzw. die nerocom.dll neu referenziert werden.