Recent Changes - Search:

Hauptmenue (edit)

AutoRunInf

<< | ProgrammFetzen | MultiUmbenenner >>

Autorun mit selbstgebrannten CDs realisieren

Da hat man so eine schöne Sammlung an Dateien zusammen und möchte sie unters Volk verteilen, jetzt noch der letzte Schliff und ein Autorun zurechtgebastelt.

Benötigt wird:

  • irgendeine Win32 Maschine
  • Brenner und Brennprogramm
  • Texteditor z.b. Notepad
  • min 1 leere CD
  • und natürlich ein Ordner mit den Daten

Zusätzlich für die Luxusvariante:

Am Ende dieser Prozedur sollten sich folgende Dateien im Hauptverzeichnis der CD befinden.

  • auf jeden Fall eine "autorun.inf"
  • und eine startbare Anwendung z.b. "startindex.exe"
  • gegebenfalls ein Dokument z.b. "index.html" oder "wordtext.doc"
  • ein hübsches Ikon schadet auch nicht z.b. "symbol.ico"

Einfachster Fall

Es soll ein Programm direkt von der CD gestartet werden. Sagen wir mal, es heißt "meineanwendung.exe". Also den Notepad auf:

  1. Datei -> Speichern unter
  2. zum Daten Ordner wandern
  3. Dateiname "autorun.inf" eingeben

Jetzt folgenden Text eingeben:

    [autorun]
    OPEN=meineanwendung.exe  

Die Datei speichern. Nun sollte alles fertig zum brennen sein.


Die CD soll ein Icon bekommen

Da muss erstmal eins beschafft werden! Das ist mit Windows Bordmitteln nicht möglich. Mit dem Beispiel Icon "symbol.ico" können sie testen welches Grafikprogramm die Dinger bearbeiten kann. Natürlich muss das Icon auch in den Datenordner.

Die "autorun.inf" bekommt dann folgen Inhalt:

    [autorun]
    OPEN=meineanwendung.exe
    ICON=symbol.ico,0 

Ein Dokument soll angezeigt werden

Um ein Dokument beim einlegen der CD automatisch anzuzeigen, muß der Zielrechner über eine passende Anwendung verfügen. Als Beispiel verwende ich hier "index.html" , da mit windows meistens ein Browser installiert wird und damit die Darstellung von html Seiten möglich ist.

Mit dem OPEN= können nur Programme gestartet werden. Also basteln wir uns jetzt ein kleines Programm. Dieses Programm muß auch mit auf die CD.

Dazu erzeugen wir mit dem Notepad eine ProgSprachen/BatchDatei namens "startindex.bat" in dem Datenordner. Im einfachsten Fall, mit nur 2 Zeilen.
"startindex.bat":

   @start index.html
   @exit 

Bereichert um eine Parameterauswertung können dann auch beliebige Dateien übergeben werden. Zum Beispiel Word Texte.
"startindex.bat":

   @ECHO OFF
   IF "%1"=="" START index.html 
   IF NOT "%1"=="" START %1
   EXIT 

"autorun.inf": index.html wird gestartet

   [autorun]
   OPEN=startindex.bat
   ICON=symbol.ico,0 

"autorun.inf": eine Textverarbeitung wird mit "wordtext.doc" gestartet

   [autorun]
   OPEN=startindex.bat wordtext.doc
   ICON=symbol.ico,0 

Dokumentenstart mit hilfe einer EXE

Die ProgSprachen/BatchDatei läßt sich auch durch eine Anwendung ersetzen. startindex.exe öffnet ohne Angabe von Parametern immer "index.html", ansonsten die angegebene Datei.

Auch hier startet die "index.html"
"autorun.inf":

   [autorun]
   OPEN=startindex.exe
   ICON=symbol.ico,0 

Ebenso ist damit das öffnen von z.b. Word Texten möglich
"autorun.inf":

   [autorun]
   OPEN=startindex.exe wordtext.doc
   ICON=symbol.ico,0 

Der Quellcode von startindex.exe

Für eigene Experimente: startindexquell.zip

ProgSprachen/BorlandDelphi:

program startindex;
uses  ShellAPI;
begin
   if ParamCount = 1 then
      ShellExecute(0,'open',PChar(ParamStr(1)),'','',0)
   else ShellExecute(0,'open','index.html','','',0) ;
end.

ProgSprachen/FreePascal:

program startindex;
function ShellExecute(a:longint;b,c,d,e:pchar;f:longint):longint; external 'shell32' name 'ShellExecuteA';
Var     datei: String;
begin
   datei:='index.html'#0;
   if ParamCount = 1 then datei := paramstr(1)+chr(0);
   ShellExecute(0,'open',@datei[1],'','',0);
end.

ProgSprachen/WatCom:

#include <stdio.h>
#include <windows.h>
#include <shellapi.h>
void main(int argc,char* argv[])
{
   if (argc == 2) {ShellExecute(0,"open",argv[1],"","",0);}
     else {ShellExecute(0,"open","index.html","","",0);}
}

Autor: Autor/UlrichFloer

<< | ProgrammFetzen | MultiUmbenenner >>

Edit - History - Print - Recent Changes - Search
Page last modified on April 08, 2008, at 02:52 AM