4D v12.4

SET RESOURCE PROPERTIES

Página Inicial

 
4D v12.4
SET RESOURCE PROPERTIES

 

SET RESOURCE PROPERTIES 


 

SET RESOURCE PROPERTIES ( resTipo ; resNum ; resAtr {; resArquivo} )  
Parâmetro Tipo   Descrição
resTipo  cadeia in Tipo de resource de 4 caracteres
resNum  Inteiro longo in Nº de recurso
resAtr  Inteiro longo in Novos atributos para o recurso
resArquivo  DocRef in Número de arquivo de referência do resource ou arquivo de resource atual, se omitido

O comando SET RESOURCE PROPERTIES muda os atributos do recurso cujo tipo se passa no parâmetro resTipo e cujo número se passa em resNum.

Se passa um número de referência de arquivo de recursos válido no parâmetro opcional resArquivo, o recurso se busca nesse arquivo unicamente. Se não passa resArquivo, o recurso é pesquisado nos arquivos de recursos abertos.

Se o recurso não existir, SET RESOURCE PROPERTIES não faz nada e a variável OK assume o valor 0 (zero).

O valor numérico que se passa em resAtr deve ser considerado como um valor binário onde cada bit tem um significado particular. As seguintes constantes pré-definidas são proporcionadas por 4D:

Constante Tipo Valor
Changed resource bit Inteiro longo 1
Preloaded resource bit Inteiro longo 2
Changed resource mask Inteiro longo 2
Protected resource bit Inteiro longo 3
Locked resource bit Inteiro longo 4
Preloaded resource mask Inteiro longo 4
Purgeable resource bit Inteiro longo 5
System heap resource bit Inteiro longo 6
Protected resource mask Inteiro longo 8
Locked resource mask Inteiro longo 16
Purgeable resource mask Inteiro longo 32
System heap resource mask Inteiro longo 64


Utilizando estas constantes, pode definir o valor dos atributos dos recursos. Ver os exemplos a continuação.

Memória do sistema heap
Se utilizar este atributo, o recurso será carregado na memória do sistema ao invés de na memória de 4D. NÃO utilize esse recurso, a não ser que realmente saiba o que está fazendo

Purgável
Se utilizar este atributo, depois de carregar o recurso, pode purgá-lo da memória se for necessário mais espaço para localizar outros dados. Como você carrega os recursos nos BLOB 4D, recomendamos ter todos seus recursos purgáveis para reduzir o uso de memória. Entretanto, se acessar com frequência a este recurso durante uma sessão de trabalho, seria possível que queira torná-lo não purgável para reduzir o acesso ao disco devido a carga frequente de um recurso purgado.

Bloqueado

Se este atributo for utilizado, o recurso não pode ser relocalizado depois de ser carregado em memória. Um recurso bloqueado não pode ser purgado mesmo se for purgável. O bloqueio de um recurso tem o efeito indesejável de fragmentar a memória. NÃO utilize esse recurso, a não ser que realmente saiba o que está fazendo

Protegido

Se este atributo estiver definido, não pode modificar o nome, número de identificação ou o conteúdo do recurso. Também não é possível apagar este recurso. Entretanto, pode chamar SET RESOURCE PROPERTIES para apagar este atributo; depois pode modificar ou apagar o recurso. Na maior parte do tempo, não utilizará este atributo.

Nota: este atributo não tem efeito em Windows.

Pré-carregado
Se este atributo for utilizado, o recurso é carregado automaticamente em memória e o arquivo no qual está localizado é aberto. Esse atributo é útil para a otimização do carregamento de recursos durante a abertura do arquivo de recursos. Na maioria do tempo, não usará esse atributo.

Modificado
Se este atributo for usado, o recurso é marcado como "deve ser salvado em disco" quando o atributo de recursos onde se encontra é fechado. Como o comando 4D SET RESOURCE se encarrega da escrita e reescrita dos recursos internamente, não deve utilizar este atributo, a menos que realmente saiba o que está fazendo.

Em geral não utilizará o atributo purgável e com menos frequência ainda Pré-carregado e Protegido.

Advertência: NAO mude os atributos de recursos que pertencem a 4D ou aos arquivos do sistema. Se o fizer, poderia provocar erros no sistema

Consulte o exemplo do comando Get resource name.

O exemplo a seguir retorna o recurso 'STR#' ID=17000 purgável e deixa os outros atributos intactos:

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

O exemplo a seguir transforma o recurso 'STR#' ID=17000 em purgável, mas não muda os outros atributos:

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

O exemplo a seguir transforma o  recurso 'STR#' ID=17000 pré-carregado e não purgável:

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

A variável sistema OK assume o valor 0 se o recurso não existir: do contrário, assume o valor 1.

 
PROPRIEDADES 

Produto: 4D
Tema: Recursos
Número 516

Este comando modifica a variável sistema OK

 
HISTÓRIA 

Criado por: 4D v6

 
VER TAMBÉM 

SET RESOURCE NAME