Adicionar, excluir e substituir recursos
Os aplicativos devem adicionar, excluir ou substituir recursos com frequência em arquivos executáveis. Dois métodos podem ser usados para realizar essas tarefas. A primeira é editar o arquivo de definição de recurso, recompilar os recursos e adicionar os recursos recompilados ao arquivo executável do aplicativo. O segundo método é copiar os dados do recurso diretamente para o arquivo executável do aplicativo.
Por exemplo, para localizar um aplicativo em inglês para uso na Noruega, talvez seja necessário substituir a caixa de diálogo em inglês por uma usando o norueguês. Um desenvolvedor cria uma caixa de diálogo apropriada usando um editor de caixa de diálogo ou escrevendo um modelo no arquivo de definição de recurso. Em seguida, o desenvolvedor recompila os recursos e adiciona os novos recursos ao arquivo executável do aplicativo.
No entanto, se houver uma caixa de diálogo apropriada no formato binário, o desenvolvedor poderá copiar os dados diretamente para o arquivo executável que está sendo localizado usando as funções a seguir. A função BeginUpdateResource cria um identificador de atualização para o arquivo executável cujos recursos devem ser alterados. A função UpdateResource usa esse identificador para adicionar, excluir ou substituir um recurso no arquivo executável. A função EndUpdateResource fecha o identificador.
Depois que um identificador de atualização para um arquivo executável é criado por BeginUpdateResource, um aplicativo pode usar UpdateResource repetidamente para fazer alterações nos dados do recurso. Cada chamada para UpdateResource contribui para uma lista interna de adições, exclusões e substituições, mas não grava os dados no arquivo executável. Imediatamente antes de fechar o identificador de atualização, EndUpdateResource grava as alterações acumuladas no arquivo executável.
Às vezes, um aplicativo deve copiar recursos de outro arquivo. Atualizar recursos mostra um exemplo de obtenção dos dados do recurso e seu tamanho de um arquivo.