4D v16.3

Open resource file

Home

 
4D v16.3
Open resource file

Open resource file 


 

Open resource file ( ResDateiName {; Dateityp} ) -> Funktionsergebnis 
Parameter Typ   Beschreibung
ResDateiName  String in Kurzer bzw. langer Name der Ressourcendatei
oder leerer String für Standard-Öffnen Dialog für Datei
Dateityp  String in Mac OS Dateityp (4-Zeichen String) oder Windows Dateierweiterung (1- bis 3-Zeichen String)
ohne Angabe alle Dateien
Funktionsergebnis  DokRef in Referenznummer der Ressourcendatei

Die Funktion Open resource file öffnet die Ressourcendatei mit dem Namen bzw. Pfadnamen ResDateiName.

Übergeben Sie einen Dateinamen, muss die Datei im gleichen Ordner liegen wie die Strukturdatei der Datenbank. Übergeben Sie einen Pfadnamen, können Sie eine Ressourcendatei aus einem anderen Ordner öffnen.

Übergeben Sie einen leeren String in ResDateiName, erscheint der Standard-Öffnen-Dialog. Sie können dann die entsprechende Ressourcendatei wählen. Brechen Sie diesen Dialog ab, wird keine Ressourcendatei geöffnet; Open resource file gibt eine DokRef mit dem Wert Null zurück und setzt die OK Variable auf Null (0).

Der Befehl öffnet standardmäßig die als Parameter übergebene Ressourcefork. Ist der Parameter leer, öffnet der Befehl die Datafork der Datei und greift auf alle hier gefundenen Ressourcen zu. Weitere Informationen dazu finden Sie im Abschnitt Current date.

Bei korrekt geöffneter Ressourcendatei gibt die Funktion Open resource file deren Referenznummer zurück und setzt die OK Variable auf 1. Gibt es die Ressourcendatei nicht, oder ist die Datei keine Ressourcendatei, wird ein Fehler generiert.

  • Verwenden Sie das Standard-Öffnen-Dialogfenster unter Windows, werden standardmäßig alle Dateien angezeigt. Soll ein bestimmter Dateityp angezeigt werden, übergeben Sie in Dateityp eine Windows-Erweiterung mit 1 bis 3 Zeichen oder über den Befehl MAP FILE TYPES einen Macintosh Dateityp.
  • Verwenden Sie das Standard-Öffnen-Dialogfenster auf Macintosh, werden standardmäßig alle Dateien angezeigt. Wollen Sie einen bestimmten Dateityp anzeigen, geben Sie diesen im optionalen Parameter Dateityp an.

Vergessen Sie nicht, die Ressourcendatei über den Befehl CLOSE RESOURCE FILE wieder zu schließen. Verlassen Sie jedoch die Datenbank oder öffnen eine andere Datenbank, schließt 4D mit den Funktionen Open resource file oder _o_Create resource file automatisch alle geöffneten Ressourcendateien.

Während die Funktion Open document ein Dokument (Datenfork auf Macintosh) ausschließlich im Lese-/Schreibzugriff öffnet, können Sie mit der Funktion Open resource file auch eine Ressourcendatei öffnen, die bereits in der 4D Sitzung geöffnet ist. Versuchen Sie zum Beispiel, dasselbe Dokument zweimal mit der Funktion Open document zu öffnen, erhalten Sie beim zweiten Versuch einen E/A Fehler. Versuchen Sie dagegen, eine Ressourcendatei, die bereits in der 4D Sitzung geöffnet ist, mit Open resource file erneut zu öffnen, erhalten Sie die Referenznummer der Ressourcendatei für die bereits geöffnete Datei. Auch wenn Sie eine Ressourcendatei mehrmals öffnen, müssen Sie dafür einmal den Befehl CLOSE RESOURCE FILE aufrufen, um sie zu schließen. Das gilt nur, wenn die Ressourcendatei innerhalb einer 4D Sitzung geöffnet wird. Versuchen Sie, eine bereits von einer anderen Anwendung geöffnete Ressourcendatei zu öffnen, erhalten Sie einen E/A Fehler.

Warnung

  • Es ist verboten, auf eine Ressourcendatei einer 4D Anwendung und auf eine Ressourcendatei einer mit 4D Runtime erstellten Datenbank zuzugreifen.
  • Auch wenn es technisch möglich ist, sollten Sie nicht die Ressourcendatei der Datenbankstruktur verwenden, da Ihr Code nicht funktioniert, wenn die Datenbank kompiliert ist und mit 4D Runtime verwendet wird. Greifen Sie dennoch auf eine Ressourcendatei der Datenbank zu und wollen per Programmierung Ressourcen hinzufügen, löschen oder ändern, prüfen Sie, in welcher Umgebung Sie sind. Mit 4D Server führt das höchstwarscheinlich zu schwerwiegenden Fehlern. Ändern Sie zum Beispiel eine Ressource auf dem Server-Rechner (über eine Datenbankmethode oder eine Serverprozedur), beeinträchtigt das definitiv die integrierten 4D Server Verwaltungsdienste, die die Ressourcen transparent auf die Arbeitsstationen verteilen. Bedenken Sie, dass Sie mit 4D Client keinen direkten Zugriff auf die Strukturdatei haben; diese liegt auf dem Server-Rechner.
  • Wenn Sie Ressourcen verwenden, speichern Sie diese deshalb in Ihren eigenen Dateien.
  • Arbeiten Sie mit eigenen Ressourcen, verwenden Sie KEINE negativen Ressourcennummern; sie sind für das Betriebssystem reserviert. Verwenden Sie KEINE Ressourcennummern im Bereich 0..14.999; dieser Bereich ist für 4D reserviert. Verwenden Sie für Ihre eigenen Ressourcen den Bereich 15.000..32.767. Bedenken Sie, dass sobald eine Ressourcendatei geöffnet ist, diese die erste Datei ist, nach der in einer Kette von Ressourcendateien gesucht wird. Speichern Sie in dieser Datei eine Ressource mit einer Nummer aus dem Bereich der System- bzw. 4D Ressourcen, finden Befehle wie GET RESOURCE und auch interne Routinen der 4D Anwendung diese Ressource. Das ist evtl. das Ergebnis, das Sie erreichen wollen. Wenn Sie jedoch nicht sicher sind, verwenden Sie diese Bereiche nicht für eigene Ressourcen, denn das kann zu Systemfehlern führen.
  • Ressourcendateien sind stark strukturierte Dateien, sie akzeptieren max. 2.700 Ressourcen pro Datei. Arbeiten Sie mit Dateien, die bereits eine große Anzahl an Ressourcen enthalten, sollten Sie die Anzahl prüfen, bevor Sie neue Ressourcen hinzufügen. Sehen Sie sich dazu das Beispiel mit der Methode Count resources für den Befehl RESOURCE TYPE LIST an.

Haben Sie eine Ressourcendatei geöffnet, können Sie mit den Befehlen RESOURCE TYPE LIST und RESOURCE LIST den Inhalt der Datei analysieren.

Folgendes Beispiel versucht unter Windows die Ressourcendatei “MyPrefs.res” zu öffnen, die im Datenbankordner liegt:

 $vhResFile:=Open resource file("MyPrefs";"res ")

Auf Macintosh versucht das Beispiel die Datei “MyPrefs” zu öffnen.

Folgendes Beispiel versucht unter Windows die Ressourcendatei “MyPrefs.rsr” zu öffnen, die im Datenbankordner liegt:

 $vhResFile:=Open resource file("MyPrefs";"rsr")

Auf Macintosh versucht das Beispiel die Datei “MyPrefs” zu öffnen.

Folgendes Beispiel zeigt das Öffnen-Dialogfenster, das alle Dateitypen auflistet:

 $vhResFile:=Open resource file("")

Folgendes Beispiel zeigt das Öffnen-Dialogfenster, das die Dateien mit dem Standardtyp auflistet, die von der Funktion _o_Create resource file erstellt wurden:

 $vhResFile:=Open resource file("";"res ")
 If(OK=1)
    ALERT("You just opened “"+Document+"”.")
    CLOSE RESOURCE FILE($vhResFile)
 End if

Wurde die Ressourcendatei erfolgreich geöffnet, wird die OK Variable auf 1 gesetzt. Konnte die Ressourcendatei nicht geöffnet werden oder hat der Benutzer im Öffnen-Dialogfenster auf Abbrechen geklickt, wird die OK Variable auf 0 (Null) gesetzt.

Wurde die Ressourcendatei über das Öffnen-Dialogfenster erfolgreich geöffnet, wird die Variable Document auf den Pfadnamen der Datei gesetzt.

Konnte die Ressourcendatei wegen eines Ressourcen- bzw. E/A Problems nicht geöffnet werden, wird ein Fehler erzeugt. Sie können diesen Fehler mit ON ERR CALL in einer Fehlerverwaltungsmethode ausfindig machen.



Siehe auch 

CLOSE RESOURCE FILE
Einführung in Ressourcen

 
EIGENSCHAFTEN 

Produkt: 4D
Thema: Ressourcen
Nummer: 497

Dieser Befehl ändert die Systemvariable OKDieser Befehl ändert die Systemvariable DocumentDieser Befehl ändert die Systemvariable Error

 
GESCHICHTE 

Geändert: 4D 2004

 
ARTIKELVERWENDUNG

4D Programmiersprache ( 4D v16)
4D Programmiersprache ( 4D v16.1)
4D Programmiersprache ( 4D v16.2)
4D Programmiersprache ( 4D v16.3)