Ressource (Software)
Die Ressourcen ({{Modul:Vorlage:lang}} Modul:Vorlage:lang:103: attempt to index field 'wikibase' (a nil value)) einer Software sind die Dateien, die nicht den Ablauf (Algorithmus) des Programms festlegen, sondern das „Hintergrundwissen“ für den Ablauf speichern. Ressourcen sind beispielsweise Wörterbuch-Dateien bei Übersetzungsprogrammen oder die Listen der Namen und Eigenschaften der einzelnen Charaktere in Computerspielen. Ein Beispiel für eine Ressource ist z. B. das Programmsymbol, das im Startmenü oder auf dem Desktop angezeigt wird.
Während das eigentliche Computerprogramm in einer Programmiersprache geschrieben ist, sind Ressourcen meist einfache Grafiken, Textdateien oder Tabellen.<ref name="Symmonds">Der BibISBN-Eintrag Vorlage:BibISBN/1590590023 ist nicht vorhanden. Bitte prüfe die ISBN und lege ggf. einen neuen Eintrag an.</ref> Ein Vorteil dieser Trennung ist, dass Programm-Ressourcen auch von Menschen ohne Programmierkenntnisse erweitert oder verändert werden können. So kann man beispielsweise Linguisten an einem Wörterbuch als Ressource für ein Übersetzungsprogramm arbeiten lassen, ohne dass diese viel über das eigentliche Programm bzw. dessen Programmierung wissen müssen.
Microsoft Windows
Identifikation einer Ressource
Innerhalb eines Programms werden Ressourcen über eine Kombination aus Typ, Kennung und Sprache (siehe Locale)<ref> LCID Structure. In: learn.microsoft.com. 24. Juni 2021, abgerufen am 2. Februar 2023 (Lua-Fehler in Modul:Multilingual, Zeile 153: attempt to index field 'data' (a nil value)).</ref> eindeutig identifiziert. Hierbei handelt es sich jeweils um 16-Bit-Zahlen, wobei Typ und Kennung auch ein String sein können. Beim Typ stehen die Zahlen 1 bis 24 für Standardtypen:<ref>Jim Walker et al.: Ressourcentypen. In: learn.microsoft.com. 23. September 2022, abgerufen am 1. Februar 2023.</ref>
| Typ | Format | Beschreibung |
|---|---|---|
| 1 | Cursor-Eintrag | Mauszeiger in einer ganz bestimmten Auflösung und Farbtiefe. |
| 2 | Bitmap | z. B. Bilder für Menüeinträge. |
| 3 | Icon-Eintrag | Symbole in einer ganz bestimmten Auflösung und Farbtiefe. |
| 4 | Menü | Einträge einer Menüleiste oder eines Kontextmenüs |
| 5 | Dialog | Entwurf eines Fensters |
| 6 | String-Tabelle | Lokalisierbare Zeichenketten. 16 Stück pro Ressource. Am häufigsten handelt es sich dabei um die Beschriftungen von Formularfeldern, aber beispielsweise auch um regionale Darstellungsformen von Datums- und Zeitangaben.<ref name="Symmonds"/> |
| 7 | Schriftartenordner | |
| 8 | Schriftart | Schriftschnitt |
| 9 | Tastenkombinationen | Zuordnung zwischen Tastenkombinationen und Anwendungsbefehlen.<ref>Quinn Radich et al.: Accelerator Tables. In: learn.microsoft.com. Microsoft, 27. April 2021, abgerufen am 5. Januar 2025 (Lua-Fehler in Modul:Multilingual, Zeile 153: attempt to index field 'data' (a nil value)).</ref> |
| 10 | RC Data | beliebige Daten |
| 11 | Nachrichten-Tabelle | Parametrisierbare Zeichenketten (z. B. für Fehlermeldungen). |
| 12 | Cursor-Gruppe | Liste mit Verweisen auf Cursor-Einträge. |
| 13 | - | nicht belegt |
| 14 | Icon-Gruppe | Liste mit Verweisen auf Icon-Einträge. |
| 15 | - | nicht belegt |
| 16 | Versionsinfo | Metadaten (u. a. Programmname, Hersteller, Copyright und Versionsnummer), die z. B. im Dialog für Dateieigenschaften des Windows-Explorers angezeigt werden. |
| 17 | Dialog-Einbindung | z. B. Symbolleisten |
| 18 | - | nicht belegt |
| 19 | Plug & Play | |
| 20 | VxD | Virtuelle Gerätetreiber. |
| 21 | Animierter Cursor | Animierte Mauszeiger, wie beispielsweise eine Sanduhr oder ein sich drehender Kringel, um Warteprozesse zu visualisieren. |
| 22 | Animiertes Icon | Ähnlich wie animierte Mauszeiger, können auch Symbole animiert sein. Diese Funktion ist nur selten anzutreffen. |
| 23 | HTML | HTML-Dokumente und damit verknüpfte Dateien (CSS-Dateien, JS- und VBS-Dateien, Bilddateien, Videodateien etc.). Die Engine des Internet Explorers kann diese Inhalte über das res://-Protokoll abrufen und darstellen.<ref>res Protocol. In: learn.microsoft.com. 13. Juli 2016, abgerufen am 1. Februar 2023 (Lua-Fehler in Modul:Multilingual, Zeile 153: attempt to index field 'data' (a nil value)).</ref> Ein Beispiel dafür sind die Fehlerseiten des Internet Explorers.
|
| 24 | Manifest | Metadaten für Theming, GUI-Skalierung und Benutzerkontensteuerung |
Neben den numerischen Standardtypen existieren noch ein paar textbasierte Typen mit fester Bedeutung.
| Typ | Format | Beschreibung |
|---|---|---|
| AVI | Animationen | Animationen im AVI-Format.<ref>Jim Walker et al.: ACM_OPEN Nachricht. In: learn.microsoft.com. 21. September 2022, abgerufen am 1. Februar 2023.</ref> Beispielsweise spielte der Dialog zur Visualisierung von Kopiervorgängen bis einschließlich Windows XP eine sich endlos wiederholende AVI-Animation ab, bei der Dateien von einem Ordner in einen anderen Ordner flattern.<ref>Greg Knox: Windows shell32 animations. In: randomnoun.com. 27. Oktober 2013, archiviert vom Vorlage:IconExternal am 13. Februar 2025; abgerufen am 9. Mai 2022 (Lua-Fehler in Modul:Multilingual, Zeile 153: attempt to index field 'data' (a nil value)).</ref> |
| MUI | MUI-Daten | Informationen für ausgelagerte, mehrsprachige Ressourcenbibliotheken.<ref>Karl Bridge et al.: MUI-Ressourcenverwaltung. In: learn.microsoft.com. 23. September 2022, abgerufen am 1. Februar 2023.</ref> Sogenannte Satelliten-Assemblies. |
| TYPELIB | Typbibliotheken | Schnittstellenbeschreibungen für COM-Elemente.<ref>Steven White, Michael Satran: Typbibliotheksanzeigen und Konvertierungstools. In: learn.microsoft.com. 21. September 2022, abgerufen am 1. Februar 2023.</ref> |
| WAVE | WAVE-Sounds | Audiodateien im WAV-Format.<ref>Drew Batchelor et al.: Wiedergeben von WAVE-Ressourcen. In: learn.microsoft.com. 21. September 2022, abgerufen am 1. Februar 2023.</ref> |
Programme machen in unterschiedlichem Umfang von den Möglichkeiten Gebrauch, da die Daten auch in externen Dateien oder im Quellcode abgelegt sein können. Soll eine Programmdatei ein Symbol haben, muss sie das Icon jedoch in Ressourcen enthalten (es wird die lexikografisch erste Icongruppe-Ressource verwendet). Der in der Versionsinfo-Ressource enthaltene Programm- bzw. Firmenname wird häufig in Sicherheitssoftware angezeigt. Diese beiden Typen sind daher in nahezu jeder PE-Datei enthalten.
Skriptfehler: Ein solches Modul „Vorlage:Anker“ ist nicht vorhanden.Resource Code
Resource Code wird als Skriptsprache bei der Entwicklung von Programmen unter OS/2 und Windows dazu genutzt, Elemente der grafischen Benutzeroberfläche und Textkonstanten zu definieren. Dadurch kann eine Trennung zwischen Programmcode und Benutzerschnittstelle erreicht werden.
RC-Datei
Eine Ressourcendatei (resource script file) enthält einen oder mehrere Ressourcenausdrücke (resource statements), welche jeweils den Typ, Kennung und den Datenwert festlegen. Es handelt sich um eine gewöhnliche Textdatei mit der Endung *.rc, wobei zusätzliche Dateien eingebunden werden können.<ref>Jim Walker, Michael Satran: Informationen zu Ressourcendateien. In: learn.microsoft.com. 21. September 2022, abgerufen am 1. Februar 2023.</ref>
Das folgende Beispiel zeigt eine Menü-Ressource (Typ 4). Die Menüleiste besitzt einen Eintrag namens „Datei“. Dem Eintrag auf der Menüleiste ist ein aufklappbares Untermenü (Popup) mit den Einträgen „Öffnen …“, „Drucken“ und „Beenden“ zugeordnet. Die Einträge sind jeweils mit einem horizontalen Strich getrennt. Der Menüpunkt „Drucken“ ist deaktiviert. Die Tastenkombinationen sind Teil der Beschriftung und werden vom Text mit einem Tabulatorzeichen (\t) getrennt. Die Zeichen nach einem Et-Zeichen (&) werden in der GUI unterstrichen dargestellt. <syntaxhighlight lang="bat" line> 1 MENU DISCARDABLE BEGIN POPUP "&Datei" BEGIN MENUITEM "&Öffnen …\tCtrl+O", 101 MENUITEM SEPARATOR MENUITEM "&Drucken\tCtrl+P", 102, INACTIVE MENUITEM SEPARATOR MENUITEM "&Beenden\tAlt+F4", 103 END END </syntaxhighlight>
Resourcecompiler
Der Ressourcencompiler übersetzt textbasierte Ressourcendateien (*.rc) in binäre Ressourcendateien (*.res). Je nachdem, ob sie im nächsten Schritt PE- (32 oder 64 Bit) oder NE-Dateien (16 Bit) hinzugefügt werden sollen, haben *.res-Dateien ein leicht anderes Dateiformat.<ref>Jim Walker et al.: Verwenden des Ressourcencompilers (RC-Befehlszeile). In: learn.microsoft.com. 23. September 2022, abgerufen am 1. Februar 2023.</ref>
.NET
Anwendungen, die auf .NET bzw. dem .Net-Framework beruhen, nutzen ein eigenes Format für mehrsprachige Ressourcen.<ref>David Pine: Ressourcen in .NET-Apps. In: learn.microsoft.com. 10. Januar 2023, abgerufen am 1. Februar 2023.</ref> Das Format basiert auf XML und besitzt die Dateiendung *.resx.<ref name="Symmonds"/>
Mac OS
Im HFS Dateisystem unter Mac OS (Classic) bestehen Computerprogramme aus mehreren sogenannten Forks. Die data fork enthält das Programm selbst und die resource fork enthält Töne, Bilder, Texte und beliebige andere Elemente. Das hat den Vorteil, dass beispielsweise bei einer Lokalisierung eines Computerprogrammes zur Übersetzung nicht der eigentliche Programmcode, sondern nur die resource fork verändert werden muss.<ref>The Genius of Mac: ResEdit and resources. In: eclecticlight.co. 4. Juni 2016, abgerufen am 6. Mai 2024 (Lua-Fehler in Modul:Multilingual, Zeile 153: attempt to index field 'data' (a nil value)).</ref>
Skriptfehler: Ein solches Modul „Vorlage:Siehe auch“ ist nicht vorhanden.
Android
Android Apps werden im APK-Format gespeichert. Dabei handelt es sich im Wesentlichen um ein ZIP-Archiv mit einer vorgegebenen Verzeichnisstruktur. Ressourcen werden dabei im res-Verzeichnis abgelegt.<ref name="Android_Resources">App resources overview. In: developer.android.com. Abgerufen am 1. Februar 2023 (Lua-Fehler in Modul:Multilingual, Zeile 153: attempt to index field 'data' (a nil value)).</ref>
| Typ | Format | Beschreibung |
|---|---|---|
| animator | Property-Animationen | XML-Dateien, mit denen alle Eigenschaften ({{Modul:Vorlage:lang}} Modul:Vorlage:lang:103: attempt to index field 'wikibase' (a nil value)) von beliebigen Objekten (z. B. Position, Größe, Drehung, Hintergrundfarbe etc.) über eine gewisse Zeitspanne hinweg verändert werden können.<ref name="android_animator">Property Animation Overview. In: developer.android.com. Abgerufen am 16. Juli 2023 (Lua-Fehler in Modul:Multilingual, Zeile 153: attempt to index field 'data' (a nil value)).</ref> |
| anim | View-Animationen | XML-Dateien, mit denen bestimmte Eigenschaften von View-Objekten der grafischen Benutzeroberfläche über eine gewisse Zeitspanne hinweg verändert werden können. Das Verfahren eignet sich für Tweening.<ref name="android_anim">View Animation. In: developer.android.com. Abgerufen am 16. Juli 2023 (Lua-Fehler in Modul:Multilingual, Zeile 153: attempt to index field 'data' (a nil value)).</ref> Diese Art von Ressource ist weniger mächtig als Ressourcen vom Typ animator, dafür jedoch effizienter.<ref name="android_animator" /> |
| color | Farbschema | XML-Dateien mit Farbangaben für einzelne Steuerelemente in unterschiedlichen Zuständen.<ref>Color state list resource. In: developer.android.com. Abgerufen am 1. Februar 2023 (Lua-Fehler in Modul:Multilingual, Zeile 153: attempt to index field 'data' (a nil value)).</ref> Beispielsweise die Hintergrundfarbe für gedrückte Schaltflächen. |
| drawable | Grafiken | Beliebige Raster- und Vektorgrafiken (ggf. in mehreren Auflösungen) |
| mipmap | Launcher-Symbole | Icons in verschiedenen Auflösungen und Formen für App-Launcher. |
| layout | Layouts | Entwürfe für die grafische Benutzeroberfläche von Aktivitäten. |
| menu | Menü | XML-Dateien mit Menüeinträgen (z. B. für Kontextmenüs) |
| raw | Daten | Beliebige (binäre) Daten, die als Datenstrom geladen werden können. |
| values | Werte | XML-Dateien mit Name-Wert-Paaren. Jeder Eintrag ordnet einem eindeutigen Ressourcennamen einen Wert und den dazugehörigen Datentyp zu. |
| xml | XML | Beliebige XML-Dateien. |
| font | Schriftarten | Schriftdateien und XML-Dateien mit Angaben zu Schriftfamilien. |
Jedem dieser Verzeichnisse können noch design-, auflösungs- und sprachspezifische Qualifikatoren, jeweils mit einem Bindestrich getrennt, angehängt werden. Die Reihenfolge der Qualifikatoren ist allerdings nicht willkürlich.<ref name="Android_Resources"/>
Beispiele für Qualifikatoren:
drawable
Bilder für die Standardsprache der App. Fallback für alle nicht genauer festgelegten Bilder.drawable-night
Bilder für den Nachtmodus unabhängig von Sprache und Auflösung.drawable-en
Bilder für die Sprache Englisch, unabhängig von der Auflösung.drawable-ldpi
Bilder für Bildschirme mit niedriger Punktdichte (120 DPI), unabhängig von der Sprache.drawable-zh-rCN-land-hdpi
Bilder für vereinfachtes Chinesisch im Querformat ({{Modul:Vorlage:lang}} Modul:Vorlage:lang:103: attempt to index field 'wikibase' (a nil value)) auf Bildschirmen mit hoher Punktdichte (240 DPI).
Weblinks
Einzelnachweise
<references />