[Avançado] API do Windows - Funções advapi32.dll

Started by ÐarkSpawn, 20 de May , 2006, 06:51:51 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

Ðark$pawn

As funções da API do Windows estão compiladas em grupos, de acordo com o tipo de aplicação, em arquivos do tipo DLL (versão 32 bits) ou EXE (versão 16 bits) localizados no subdiretório SYSTEM/SYSTEM32 do Windows. A ADVAPI32.DLL contém as funções para o Registry do Windows.


RegCloseKey
LONG RegCloseKey( HKEY hKey );

QuoteParâmetro Descrição
HKEY hKey      handle da chave que será fechada.

Fecha uma chave do registry.

Retorna: em caso de sucesso, retorna ERROR_SUCCESS. Caso contrário, é um valor de erro diferente de zero definido em WINERROR.H.
 

RegCreateKeyA, RegCreateKeyW
LONG RegCreateKey( HKEY hKey, LPCTSTR lpszSubKey, PHKEY phkResult );

QuoteParâmetro Descrição
HKEY hKey                         handle da chave aberta
LPCTSTR lpszSubKey           endereço do nome da subchave que deve ser aberta
PHKEY phkResult                endereço do buffer para o handle aberto

Cria uma nova chave no registry.

Retorna: em caso de sucesso, retorna ERROR_SUCCESS. Caso contrário, é um valor de erro diferente de zero definido em WINERROR.H.
 

RegCreateKeyExA, RegCreateKeyExW
LONG RegCreateKeyEx( HKEY hKey, LPCTSTR lpszSubKey, DWORD dwReserved, LPTSTR lpszClass, DWORD fdwOptions, REGSAM samDesired, LPSECURITY_ATTRIBUTES lpSecurityAttributes, PHKEY phkResult, LPDWORD lpdwDisposition );

QuoteParâmetro Descrição
HKEY hKey                                                       handle da chave aberta
LPCTSTR lpszSubKey                                         endereço do nome da subchave
DWORD dwReserved                                         reservado
LPTSTR lpszClass                                               endereço da string classe
DWORD fdwOptions                                          flags de opções especiais
REGSAM samDesired                                           segurança de acesso desejada
LPSECURITY_ATTRIBUTES lpSecurityAttributes     endereço da estrutura da chave de segurança
PHKEY phkResult                                               endereço do buffer para o handle aberto
LPDWORD lpdwDisposition                                  endereço do buffer do valor

Cria a chave especificada. Caso a chave já exista no registry, a função a abre.

Retorna: em caso de sucesso, retorna ERROR_SUCCESS. Caso contrário, é um valor de erro diferente de zero definido em WINERROR.H.
 

RegDeleteKeyA, RegDeleteKeyW
LONG RegDeleteKey( HKEY hKey, LPCTSTR lpszSubKey );

QuoteParâmetro Descrição
HKEY hKey                      handle da chave aberta
LPCTSTR lpszSubKey        endereço do nome da subchave que deve ser eliminada

Elimina uma chave do registry.

Retorna: em caso de sucesso, retorna ERROR_SUCCESS. Caso contrário, é um valor de erro diferente de zero definido em WINERROR.H.
 

RegDeleteValueA, RegDeleteValueW
LONG RegDeleteValue( HKEY hKey, LPTSTR lpszValue );

QuoteParâmetro Descrição
HKEY hKey               handle da chave
LPTSTR lpszValue      endereço do nome do valor

Remove um valor nominado de uma chave do registry especificada.

Retorna: em caso de sucesso, retorna ERROR_SUCCESS. Caso contrário, é um valor de erro diferente de zero definido em WINERROR.H.
 

RegLoadKey
LONG RegLoadKey( HKEY hKey, LPCTSTR lpSubKey, LPCTSTR lpFile // address of filename for registry information );

QuoteParâmetro Descrição
HKEY hKey                  handle da chave aberta.
LPCTSTR lpSubKey       endereço do nome da subchave.
LPCTSTR lpFile             endereço do nome do arquivo para informação de registry.

Cria uma subchave em HKEY_USER ou HKEY_LOCAL_MACHINE e armazena informações de registro de um arquivo especificado nesta subchave. Esta informação de registro tem a forma de um enxame (hive). Um hive é um corpo discreto de chaves, subchaves e valores colocado no topo da hierarquia do registry. Um hive é garantido por um único arquivo e um arquivo de .LOG.

Retorna: em caso de sucesso, retorna ERROR_SUCCESS. Caso contrário, é um valor de erro diferente de zero definido em WINERROR.H.
 

RegOpenKeyA, RegOpenKeyW
LONG RegOpenKey( HKEY hKey, LPCTSTR lpszSubKey, PHKEY phkResult );

QuoteParâmetro Descrição
HKEY hKey                     handle da chave aberta
LPCTSTR lpszSubKey       endereço do nome da subchave que deve ser aberta
PHKEY phkResult            endereço do handle da chave aberta

Abre uma chave do registry.

Retorna: em caso de sucesso, retorna ERROR_SUCCESS. Caso contrário, é um valor de erro diferente de zero definido em WINERROR.H.
 

RegOpenKeyExA, RegOpenKeyExW
LONG RegOpenKeyEx( HKEY hKey, LPCTSTR lpszSubKey, DWORD dwReserved, REGSAM samDesired, PHKEY phkResult );

QuoteParâmetro Descrição
HKEY hKey                     handle da chave aberta
LPCTSTR lpszSubKey       endereço do nome da subchave que deve ser aberta
DWORD dwReserved       reservado
REGSAM samDesired        máscara do acesso de segurança
PHKEY phkResult            endereço do handle da chave aberta

Abre uma chave do registry.

Retorna: em caso de sucesso, retorna ERROR_SUCCESS. Caso contrário, é um valor de erro diferente de zero definido em WINERROR.H.
 

RegQueryValueA, RegQueryValueW
LONG RegQueryValue( HKEY hKey, LPCTSTR lpszSubKey, LPTSTR lpszValue, PLONG pcbValue );

QuoteParâmetro Descrição
HKEY hKey                    handle da chave que deve ser pesquisada
LPCTSTR lpszSubKey      endereço do nome da subchave que deve ser pesquisada
LPTSTR lpszValue          endereço do buffer para a string de retorno
PLONG pcbValue           endereço do buffer para o tamanho da string de retorno

Lê um valor da chave do registry atualmente aberta.

Retorna: em caso de sucesso, retorna ERROR_SUCCESS. Caso contrário, é um valor de erro diferente de zero definido em WINERROR.H.
 

RegQueryValueExA, RegQueryValueExW
LONG RegQueryValueEx( HKEY hKey, LPTSTR lpszValueName, LPDWORD lpdwReserved, LPDWORD lpdwType, LPBYTE lpbData, LPDWORD lpcbData );

QuoteParâmetro Descrição
HKEY hKey                           handle da chave que deve ser pesquisada
LPTSTR lpszValueName          endereço do nome do valor que deve ser pesquisado
LPDWORD lpdwReserved       reservado
LPDWORD lpdwType             endereço do buffer para o tipo do valor
LPBYTE lpbData                   endereço do buffer de dados
LPDWORD lpcbData              endereço do tamanho do buffer de dados

Obtém o tipo e os dados para um valor nominado específico associado a uma chave do registry aberta.

Retorna: em caso de sucesso, retorna ERROR_SUCCESS. Caso contrário, é um valor de erro diferente de zero definido em WINERROR.H.
 

RegSaveKey
LONG RegSaveKey( HKEY hKey, LPCTSTR lpFile, LPSECURITY_ATTRIBUTES lpSecurityAttributes );

QuoteParâmetro Descrição
HKEY hKey                                                           handle da chave onde começa a gravação.
LPCTSTR lpFile                                                      endereço do nome do arquivo onde será gravado.
LPSECURITY_ATTRIBUTES lpSecurityAttributes         endereço da estrutura de segurança.

Grava (salva) a chave especificada e todas as suas subchaves e valores num novo arquivo.

Retorna: em caso de sucesso, retorna ERROR_SUCCESS. Caso contrário, é um valor de erro diferente de zero definido em WINERROR.H.
 

RegSetValue
LONG RegSetValue( HKEY hKey, LPCTSTR lpSubKey, DWORD dwType, LPCTSTR lpData, DWORD cbData );

QuoteParâmetro Descrição
HKEY hKey                   handle da chave que receberá o valor.
LPCTSTR lpSubKey        endereço do nome da subchave.
DWORD dwType           tipo do valor.
LPCTSTR lpData            endereço dos dados do valor.
DWORD cbData            tamanho dos dados do valor.

Associa um valor a uma chave específica. Este valor precisa ser uma string de texto e não pode ter um nome. Esta função persiste para manter a compatibilidade com o Windows 3.1. Aplicativos baseados no win32 devem usar a função RegSetValueEx.

Retorna: em caso de sucesso, retorna ERROR_SUCCESS. Caso contrário, é um valor de erro diferente de zero definido em WINERROR.H.
 

RegSetValueEx
LONG RegSetValueEx( HKEY hKey, LPCTSTR lpValueName, DWORD Reserved, DWORD dwType, CONST BYTE *lpData, DWORD cbData );

QuoteParâmetro Descrição
HKEY hKey                         handle da chave que receberá o valor.
LPCTSTR lpValueName         endereço do valor que será atribuído.
DWORD Reserved               * reservado *
DWORD dwType                flag para o tipo do valor.
CONST BYTE *lpData         endereço dos dados do valor.
DWORD cbData                 tamanho dos dados do valor.

Armazena dados no campo de valor de uma chave de registry aberta. Também pode atribuir informações adicionais de valor e tipo para a chave especificada. Os principais valores do parâmetro dwType são:

QuoteValor Descrição
REG_BINARY                                dados binários em qualquer formato.
REG_DWORD                               um número de 32 bits.
REG_DWORD_LITTLE_ENDIAN       um número de 32 bits no formato little-endian (o mesmo que REG_DWORD).
REG_DWORD_BIG_ENDIAN            um número de 32 bits no formato big-endian.
REG_EXPAND_SZ                          uma string terminada em null que contém referências não expandidas a variáveis de ambiente (por exemplo, "%PATH%").
REG_MULTI_SZ                            um array de strings terminadas em null, terminado por dois caracteres null.
REG_NONE                                  nenhum tipo de valor definido.
REG_SZ                                       uma string terminada em null.

Retorna: em caso de sucesso, retorna ERROR_SUCCESS. Caso contrário, é um valor de erro diferente de zero definido em WINERROR.H.


Fonte: oicìliS ©
Edited By: DarkSpawn  ;)

whit3_sh4rk

Hehehe mandou bem nessa cara.. esse site realmente é ÓTIMO!
Tem de tudo!

Adoro mexer no registro.. e material API assim em BR é melhor ainda..

 ;)

[]s