4D v12.4

SET RESOURCE PROPERTIES

Home

 
4D v12.4
SET RESOURCE PROPERTIES

 

SET RESOURCE PROPERTIES 


 

SET RESOURCE PROPERTIES ( ResTyp ; ResID ; ResAttr {; RefDatei} )  
Parameter Typ   Beschreibung
ResTyp  String in Ressourcentyp mit vier Zeichen
ResID  Lange Ganzzahl in Kennummer der Ressource
ResAttr  Lange Ganzzahl in Neue Attribute für die Ressource
RefDatei  DokRef in Referenznummer der Ressourcendatei, ohne Angabe aktuelle Ressourcendatei

Der Befehl SET RESOURCE PROPERTIES ändert die Attribute der Ressource vom Typ ResTyp und mit der Kennummer ResID.

Gibt es die Ressource nicht, führt der Befehl nichts aus. Die OK Variable wird auf Null (0) gesetzt.

Übergeben Sie in RefDatei eine gültige Referenznummer für die Ressourcendatei, wird die Ressource nur in dieser Datei gesucht. Übergeben Sie RefDatei nicht, wird die Ressource in der aktuellen geöffneten Ressourcendatei gesucht.

Der in ResAttr übergebene numerische Wert ist ein Bit Feldwert, dessen Bits eine spezielle Bedeutung haben. 4D bietet folgende vordefinierte Konstanten:

Konstante Typ Wert
Changed resource bit Lange Ganzzahl 1
Changed resource mask Lange Ganzzahl 2
Locked resource bit Lange Ganzzahl 4
Locked resource mask Lange Ganzzahl 16
Preloaded resource bit Lange Ganzzahl 2
Preloaded resource mask Lange Ganzzahl 4
Protected resource bit Lange Ganzzahl 3
Protected resource mask Lange Ganzzahl 8
Purgeable resource bit Lange Ganzzahl 5
Purgeable resource mask Lange Ganzzahl 32
System heap resource bit Lange Ganzzahl 6
System heap resource mask Lange Ganzzahl 64

Mit diesen Konstanten können Sie einen beliebigen Wert für Ressourcenattribute einrichten. Siehe dazu folgende Beispiele.

  • System heap
    Mit diesem Attribut wird die Ressource in den Systemspeicher anstatt in den 4D Speicher geladen. Verwenden Sie dieses Attribut nur, wenn Sie genau wissen, was Sie tun.
  • Purgeable
    Mit diesem Attribut können Sie die Ressource nach dem Laden aus dem Speicher entfernen, wenn für andere Daten Speicherplatz benötigt wird. Da Sie Ressourcen in 4D BLOBs laden, empfiehlt es sich, alle eigenen Ressourcen entfernbar zu machen, um so den Speicherbedarf gering zu halten. Greifen Sie dagegen während einer Arbeitssitzung häufig auf eine Ressource zu, sollte sie nicht entfernbar sein. So verringern Sie den Zugriff auf die Festplatte, von der eine entfernte Ressource bei jedem Aufruf erneut geladen werden müßte.
  • Locked
    Mit diesem Attribut können Sie die Ressource nach dem Laden in den Speicher nicht erneut setzen. Eine gesperrte Ressource können Sie nicht entfernen, selbst wenn sie entfernbar ist. Das Sperren einer Ressource hat den unerwünschten Nebeneffekt, dass der Speicherplatz fragmentiert wird. Verwenden Sie dieses Attribut nur, wenn Sie genau wissen, was Sie tun.
  • Protected
    Mit diesem Attribut können Sie weder den Namen, noch die Kennummer noch den Inhalt der Ressource ändern. Sie können diese Ressource auch nicht mehr löschen. Dieses Attribut können Sie über den Befehl SET RESOURCE PROPERTIES entfernen; dann läßt sich die Ressource wieder ändern oder löschen. Dieses Attribut benötigen Sie nur selten.
    Hinweis:
    Unter Windows hat dieses Attribut keine Auswirkung.
  • Preloaded
    Mit diesem Attribut wird die Ressource automatisch in den Speicher geladen, wenn die dazugehörige Ressourcendatei geöffnet ist. Mit diesem Attribut optimieren Sie das Laden von Ressourcen bei geöffneter Ressourcendatei. Dieses Attribut benötigen Sie nur selten.
  • Changed
    Mit diesem Attribut wird die Ressource mit “auf Festplatte sichern” markiert, wenn die dazugehörige Ressourcendatei geschlossen ist. Da der 4D Befehl SET RESOURCE das Schreiben und Neuschreiben von Ressourcen intern verwaltet, sollten Sie dieses Attribut nur verwenden, wenn Sie genau wissen, was Sie tun.

    Normalerweise verwenden Sie das Attribut purgeable, in wenigen Fällen auch die Attribute preloaded und protected.

Warnung: Ändern Sie NICHT die Attribute von Ressourcen, die zu 4D oder anderen Systemdateien gehören. Das kann zu unerwünschten Systemfehlern führen.

Siehe Beispiel zum Befehl Get resource name.

Folgendes Beispiel macht die Ressource 'STR#' ID=17000 löschbar, und lässt die anderen Attribute unverändert:

 $vlResAttr:=Get resource properties('STR#';17000;$vhResFile)
 SET RESOURCE PROPERTIES('STR#';17000;$vlResAttr ?
 +Purgeable resource bit;$vhMyResFile)

Folgendes Beispiel macht die Ressource 'STR#' ID=17000 vorladbar und nicht löschbar:

 SET RESOURCE PROPERTIES('STR#';17000;Preloaded resource mask;$vhResFile)

Folgendes Beispiel macht die Ressource 'STR#' ID=17000 vorladbar und löschbar:

 SET RESOURCE PROPERTIES('STR#';17000;Preloaded resource mask
 +Purgeable resource mask;$vhResFile)

Ist die Ressource vorhanden, wird OK auf 1 gesetzt, sonst auf 0 (Null).

 
EIGENSCHAFTEN 

Produkt: 4D
Thema: Ressourcen
Nummer: 516

Dieser Befehl ändert die Systemvariable OK

 
GESCHICHTE 

Erstellt: 4D v6

 
SIEHE AUCH 

SET RESOURCE NAME