News | Downloads | Projekte | Technologie | FAQ | Reports | Referenzen | Foren | Links | Kontakt

Die Technologien von LaOS

Informationen über das Dateisystem, Ablage von Einstellungen und vieles mehr findest du in dieser Rubrik! Da LaOS OpenSource ist, bin ich danach bestrebt, dir Informationen über die einzelnen Dateistrukturen zu geben. Diese Informationen richten sich vor allem an Programmierer.

Nachstehend werden die wichtigsten Dateien genauer erläutert, die LaOS verwendet. Dies ist gibt dir einen Überblick, für was welche Dateien gebraucht werden.

Dateien:


*.scl


Bildschirm-Schematas

Details

*.tmp

Temporäre Dateien. Mit der Zeit sammeln sich viele temporäre Dateien an, da diese von den Programmen nicht mehr gelöscht werden müssen. Beim Ausführen von DriveClean werden alle temporären Dateien gelöscht.

*.pal

Programm-Modulpaletten

Details

*.lsb

Symbole

*.lds

Zeichnungen, die mit dem LaOS-Zeichenprogramm erstellt wurden, und innerhalb der Benutzeroberfläche als Design-Element verwendet werden.

*.lao

LaOS-Programme. Dies sind gewöhnliche QBasic 1.1-Programme und können auch unter QBasic geladen werden, um sie zu bearbeiten. Statt mit der SYSTEM oder END-Anweisung zu beenden, rufen diese Programme mit CHAIN das LaOS-Hauptmodul "run.bas" auf.

*.cfg

Initialisierungsdateien mit Einstellungen für einzelne Programme

*.bnk

Datenbank. Das Datenbank-Format der einzelnen *.bnk-Dateien kann sehr unterschiedlich sein. Neben den unten näher definierten Systemdatenbanken verwenden auch viele LaOS-Programme eigene *.bnk-Dateien. Diese Dateien haben in der Regel eine sehr hohe Wichtigkeit und dürfen auf keinen Fall gelöscht werden!

*.dis

Deinstallationsprogramm

Details

*.mod

Programm-Module. Dies sind gewöhnliche QBasic 1.1-Programme und können auch unter QBasic geladen werden, um sie zu bearbeiten. Wenn eine LaOS-Anwendung zu gross ist, um von QBasic in den Speicher gelagert zu werden, kann sie Programmteile in *.mod-Dateien auslagern und diese mit der CHAIN-Anweisung aufrufen.

Beliebige Zahl (z.B. "5")

LaOS-Dokumente. In den sogenannten DocInts (Dateien, deren Dateiname eine Integer-Zahl ist) werden die Erstellten Dokumente von LaOS-Anwendungen, die das Erstellen von Dokumenten unterstützen (DocServer-Anwendung) abgespeichert.

linkway.tmp

Hier wird das DocInt abgespeichert, welches zusammen mit einer bestimmten Anwendung geladen werden soll. Wird LaOS-intern für die Verknüpfung von Dokumenten mit deren Anwendungen verwendet. Die LaOS-Anwendung lädt das Dokument, dessen Dateiname in "linkway.tmp" steht.

start.bas

Dieses Programm wird beim Start von LaOS ausgeführt. Der Startbildschirm erfüllt aber auch noch einen anderen Zweck: Falls das LaOS-Dateisystem defekt ist kann man hier F5 drücken, um DriveClean zum Reperatur-Versuch starten.

run.bas

Das LaOS-Hauptmenü

handler.rsc

Hier werden die Vorgänge in der Neu-Liste gespeichert.

Details

dateien.bnk

Sämtliche LaOS-Dateien werden in dieser Datenbank abgespeichert.

drvlist.bnk

In LaOS installierte Laufwerke

ordner.bnk

LaOS-Ordner

registry.bnk

Haupt-Initialisierungsdatei. LaOS-Programme, welche keine eigene *.cfg-Datei verwenden möchten, verwenden registry.bnk, um deren Einstellungen abzuspeichern.

scuts.dat

Kurztasten für das LaOS-Hauptmenü

config.lcg

Wichtigste Systemeinstellungen

- nach oben -

 

Neu-Liste

In dieser Liste werden sämtliche Vorgänge abgespeichert, die in Run.bas unter SYSTEM-Neu... aufzurufen sind.


Datei: handler.rsc

Dateimodus: RANDOM

Datensatzlänge: STANDARD (128 Byte)

Field-Anweisung: NEIN

Datensatzdefinition:

TYPE handlertype
  Vorgangsname AS STRING * 30
  Anwendung AS STRING * 12
  SubID AS STRING * 8
END TYPE

Der Vorgangsname ist der Name, der in der Neu-Liste angezeigt wird. Die Anwendung ist ein QBasic 1.1-Programm, das für diesen Vorgang gestartet wird. Die Anwendung wird mit der Dateierweiterung angegeben werden, also z.B. "editor.lao". So können auch Programmmodule, die nicht *.lao-Dateien sind direkt angesteuert werden. Die SubID wird verwendet, um einen Vorgang genauer zu spezifieren. So könnte ein und dieselbe Anwendung verschiedene Neu-Vorgänge anbieten.

Beim Ausführen eines Vorganges speichert run.bas die SubID in "linkway.tmp" ab mit vorangestelltem Schrägstrich ("/") ab und lädt dann die entsprechende Anwendung. Dieses LaOS-Programm kann die SubID mit der Linkit$-Funktion von OSCODE abrufen.

Um einen neuen Vorgang einzutragen, genügt es, die Datei C:\LaOS\nh.go im Editor mit folgendem Inhalt zu füllen:

Vorgangsbezeichnung, Programmdatei, SubID

Die SubID kann verwendet werden, um den aufgerufenen Neu-Vorgang in der Anwendung vom "normalen Start" zu unterscheiden. Falls keine SubID angegeben wird, muss man dafür dennoch in nh.go zwei Anführungszeichen als Platzhalter angeben:

Beispiel:

"Text-Dokument", "editor.lao", ""
"Tagebuch-Eintrag", "tagebuch.lao", "neu"

Beim nächsten LaOS-Start wird der Vorgang erstellt, und die Datei nh.go wird gelöscht.

- nach oben -

 

OSCODE

OSCODE ist eine Sammlung von Funktionen und Anweisungen für die LaOS-Benutzeroberfläche, den Umgang mit LaOS-Dokumenten und sonstige Aufgaben, die wichtig für das Zusammenspiel mit LaOS sind. Beispiel: Symbole, Öffnen- und Speichern-Dialoge, Fensterprozeduren, Menüs, Auswahllisten, Auswahlbuttons etc... Um eine LaOS-Anwendung zu schreiben, lädt man zuerst OSCODE in QBasic ein und schreibt dann sein Programm in die bereitstende SUB-Prozedur "Main".

OSCODE wird ab LaOS 6 gleich mit installiert. Man braucht nur in QBasic die Datei OSCODE.BAS im Verzeichnis C:\LAOS zu öffnen. Nun kann man sich zuerst das Demoprogramm anschauen.

- nach oben -

 

Modulpaletten

Modulpaletten werden in LaOS dazu verwendet, um externe Programmressourcen einem Anwendungsprogramm (Hauptmodul) zu zuordnen. Die Modulpalette ist in einer Datei mit der Endung ".PAL" gespeichert. Der Dateiname der *.pal-Datei lautet gleich wie das Hauptmodul. Wenn man diese Datei mit einem Editor liest, sieht man eine Auflistung der mit diesem Hauptmodul verknüpften Dateien. Die Modulpaletten ermöglichen das schnelle Program-Copy-And-Past. Beim Kopieren wird also das ganze Paket mitkopiert. Sie können also ein LaOS-Anwendungsprogramm auf eine Diskette kopieren, und einem Freund geben. Dieser kopiert es dann durch einen Fingertipp auf seine Festplatte. Ausserdem ermöglicht die Modulpalette die vollständige Anwendungs-Deinstallation durch einfaches Löschen im Programmverwalter: Alle Nebenmodule, die in der zugehörigen Modulpalette aufgelistet sind, werden ebenso wie das Hauptmodul vom Datenträger entfernt. Beim löschen wird bei jedem Nebenmodul geprüft, ob es von einem anderen Hauptmodul noch benötigt wird, und nur gelöscht, falls es nicht mehr gebraucht wird. Zudem können in der Modulpalette Attribute zu den einzelnen Nebenmodulen gesetzt werden. So würde zum Beispiel eine Lizenzdatei mit dem entsprechenden Attribut nur Installiert, aber in keinem Fall nachträglich kopiert werden (Attribut "*"). Eine Highscore-Datei von einem Spiel sollte in keinem Fall überschrieben werden, auch wenn eine neue Version des Spiels installiert wird (Attribut ":").

Folgende Attribute sind möglich, und werden durch das Voranstellen an den Dateinamen in der Modulpalettendatei gesetzt:

(ohne)

Löschen, kopieren und ohne Abfrage überschreiben. (Standard)

?

kopieren, aber fragen beim überschreiben¦AbfragetextJ/N(Standardaktivierung)

:

Nur löschen, jedoch nie kopieren

/

Deinstallationsprogramm

*

Kopiergeschützt (wird nur installiert, jedoch von LaOS NICHT kopiert!)

Das Standard-Anwendungssymbol darf nie in Modulpaletten aufgenommen werden. Es wird standardmässig kopiert und überschrieben. Nur wenn eine Anwendung mehrere Symbole erfordert, können diese in die Modulpalette aufgenommen werden.

Deinstallationsprogramm

Falls ein Programm bestimmte Dateien nach einer speziellen Regel dynamisch erstellt, oder eine spezielle Abfrage (Passwort, etc...) für die Deinstallation nötig ist, kann ein Deinstallationsprogramm mit dem Attribut "/" angegeben werden. Wie sämtliche Dateien in der Modulpalette muss auch das Deinstallationsprogramm inklusive Dateisuffix angegeben werden! Für das Deinstallationsprogramm wird empfohlen, die Dateiendung ".dis" zu verwenden. Wichtig ist beim Eintragen des Deinstallationsprogrammes in die Modulpalettendatei, dass sie doppelt drin ist, und zwar einmal mit vorangestelltem Schrägstrich ("/") und einmal ohne diesen. Wird der zweite Eintrag weggelassen, so wird das Deinstallationsprogramm nicht mitkopiert beim installieren.

Als Beispiel die Modulpalettendatei des Buchhaltungsprogramms Moneycab:

Wie man sieht, sind die einzelnen Nebenmodule in einer hundsgewöhnlichen Textdatei als Liste aneinandergereiht. Deshalb ist es dem Programmierer ein leichtes, diese Datei in einem beliebigen Text-Editor zu erstellen.

- nach oben -

 

Farbschematas

Farbschematas sind in LaOS in normalen Textdateien abgespeichert. In jeder Zeile steht ein Wert. Die Zuordnung der Werte zu einem Grafikelement kann hier entnommen werden:

Zeile 0

Bezeichnung des Farbschemas

Zeile 1

Fensterfarbe

Zeile 2

Randfarbe

Zeile 3

Schattenfarbe

Zeile 4

Schaltflächenfarbe

Zeile 5

Umrahmungsfarbe des aktiven Symbols

Zeile 6

Umrahmungs-Stil des aktivierten Symbols (-1=voll)

Zeile 7

Farbe des Symbolrahmens

Zeile 8

Farbe des Symbolhintergrundes

Zeile 9

Hintergrundfarbe

Zeile 10

Vordergrundfarbe

Zeile 11

 Setzt den Vertikalen Standard-Abstand der Symbole. Auf Null gesetzt ist der Abstand genügend

Zeile 12

Setzt die zu verstreichende Zeit in Sekunden, bis die Quick-Info erscheint. (0=Ausgeschaltet)

Zeile 13

Setzt die Farbe, in der der Quick-Info-Text erscheint, sowie die Farbe des aktiven Menupunktes

Zeile 14

Setzt die Farbe des Quick-Info-Rahmens sowie die Umrahmungsfarbe des aktiven Menupunkte

Zeile 15

Datumsformat

Diese letzte Zeile wird in zukünftigen Versionen nicht mehr abgefragt werden, da das Datumsformat in der Datei Config.lcg abgespeichert werden wird. Deshalb sollte dieser Zeile nicht zuviel Beachtung geschenkt werden. Sie kann getrost ignoriert werden.

0 = Deutsch

- nach oben -