Como gravar um DWORD no registro

IMPORTANTE: Este artigo foi traduzido por um sistema de tradução automática (também designado por Machine Translation ou MT), não tendo sido portanto traduzido ou revisto por pessoas. A Microsoft possui artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais, com o objetivo de oferecer em português a totalidade dos artigos existentes na base de dados de suporte. No entanto, a tradução automática não é sempre perfeita, podendo conter erros de vocabulário, sintaxe ou gramática. A Microsoft não é responsável por incoerências, erros ou prejuízos ocorridos em decorrência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza atualizações freqüentes ao software de tradução automática (MT). Obrigado.

Clique aqui para ver a versão em Inglês deste artigo: 258262
Este artigo foi arquivado. É oferecido "como está" e não será mais atualizado.
Sumário
Às vezes, é necessário gravar informações no registro. Este artigo mostra como gravar valores REG_DWORD para uma chave criada no Registro para este artigo. Se o valor que você está escrevendo já não existir, você precisará adicioná-lo.
Mais Informações
importante : Este artigo contém informações sobre como modificar o registro. Antes de modificar o registro, certifique-se de backup e certifique-se que você saiba como restaurar o registro se ocorrer um problema. Para obter informações sobre como fazer backup, restaurar e editar o registro, clique no número abaixo para ler o artigo na Base de dados de Conhecimento da Microsoft:
256986Descrição do registro do Microsoft Windows

Aviso : se você usar o Editor do Registro incorretamente, poderá causar problemas sérios que talvez exijam a reinstalação do sistema operacional. A Microsoft não garante que você pode resolver problemas resultantes do uso incorreto do Editor do Registro. Use o Editor do registro por sua própria conta e risco.

As informações sobre o editor do Registro neste artigo são para o Microsoft Windows NT e Microsoft Windows 2000. Se você estiver executando o Microsoft Windows 9 X, você precisará usar o Regedit.exe em vez do Regedt32.exe.

Observação: Este artigo usa uma chave do registro que é criada apenas para fins de teste e deve ser excluída quando você terminar teste.
  1. Inicie o Editor do Registro (Regedt32.exe).
  2. Localize a seguinte chave no Registro:
       HKEY_LOCAL_MACHINE\Software					
  3. No menu Editar , clique em Adicionar chave e adicione o seguinte chave de registro:
       VfpREGTest					
  4. No menu Editar , clique em Adicionar valor e adicione o seguinte valor do Registro:
       Value Name: MyDWORD   Data Type:  REG_DWORD   Value:      0					
  5. Feche o Editor do Registro.
  6. Do Visual FoxPro, crie um programa e insira o código a seguir:
    #DEFINE HKEY_CLASSES_ROOT           -2147483648#DEFINE HKEY_CURRENT_USER           -2147483647#DEFINE HKEY_LOCAL_MACHINE          -2147483646#DEFINE HKEY_USERS                  -2147483645LOCAL nKey, cSubKey, cValue, nValueToWrite, lSuccessnKey = HKEY_LOCAL_MACHINEnValueToWrite = 1cSubKey = "Software\VfpREGTest"cValue = "MyDWORD"lSuccess = WriteRegDWORD(nKey, cSubKey, cValue, nValueToWrite)IF (lSuccess) THEN   =MESSAGEBOX("Function Successful.")ELSE   =MESSAGEBOX("Function Not Successful.")ENDIFFUNCTION WriteRegDWORD   * This function writes a REG_DWORD to the registry. It will return .T.   * if successful and .F. if it isn't successful.   PARAMETERS  nKey, cSubKey, cValue,  nValueToWrite   * nKey The root key to open. It can be any of the constants defined below.   *#DEFINE HKEY_CLASSES_ROOT           -2147483648   *#DEFINE HKEY_CURRENT_USER           -2147483647   *#DEFINE HKEY_LOCAL_MACHINE          -2147483646   *#DEFINE HKEY_USERS                  -2147483645   *cSubKey The SubKey to open.   *cValue The value that is going to be written.   *nValueToWrite The value to write to the registry   * Constants that are needed for Registry functions   #DEFINE REG_DWORD   4   * WIN 32 API functions that are used   DECLARE Integer RegOpenKey IN Win32API ;      Integer nHKey, String @cSubKey, Integer @nResult   DECLARE Integer RegSetValueEx IN Win32API ;      Integer hKey, String lpszValueName, Integer dwReserved,;      Integer fdwType, String lpbData, Integer cbData   DECLARE Integer RegCloseKey IN Win32API Integer nHKey   * Local variables used   LOCAL nErrCode          && Error Code returned from Registry functions   LOCAL nKeyHandle        && Handle to Key that is opened in the Registry   LOCAL lpdwValueType     && Type of Value that we are looking for.   LOCAL lpbValue          && The data stored in the value   LOCAL lpcbValueSize     && Size of the variable   LOCAL lpdwReserved      && Reserved Must be 0   * Initialize the variables   nKeyHandle = 0   lpdwReserved = 0              lpdwValueType = REG_DWORD   lpcbValueSize = 4     && DWORD is 4 bytes   lpbValue = LongToStr(nValueToWrite)   nErrCode = RegOpenKey(nKey, cSubKey, @nKeyHandle)   * If the error code isn't 0, then the key doesn't exist or can't be opened.   IF (nErrCode # 0) THEN      RETURN .F.   ENDIF   nErrCode=RegSetValueEx(nKeyHandle, cValue, lpdwReserved, lpdwValueType, lpbValue, lpcbValueSize)   =RegCloseKey(nKeyHandle)   IF (nErrCode # 0) THEN      RETURN .F.   ENDIFRETURN .T.FUNCTION LongToStr* This function converts a long to a string   PARAMETERS nLongVal   LOCAL nLoopVar, strReturn   strReturn = ""   FOR nLoopVar = 24 TO 0 STEP -8      strReturn = CHR(INT(nLongVal/(2^nLoopVar))) + strReturn      nLongVal = MOD(nLongVal, (2^nLoopVar))   NEXTRETURN strReturn* End of Code					
  7. Execute o código criado na etapa 1. Será exibida uma caixa de mensagem anunciando o êxito ou falha da função. Você pode usar o regedt32.exe para verificar que o valor foi gravado no registro.
  8. Você pode substituir nKey, cSubKey, cValue e nValueToWrite com as informações a serem gravados no registro.
(c) Microsoft Corporation 2000, todos os direitos reservados. Contribuições de marcar Barnard, Microsoft Corporation.

Referências

Para informações adicionais Obtendo valores do Registro, clique no número abaixo para ler o artigo na Base de dados de Conhecimento da Microsoft:
244675Como ToUse WSH para ler, gravar, excluir registro

Propriedades

ID do Artigo: 258262 - Última Revisão: 12/05/2015 19:21:12 - Revisão: 2.2

Microsoft Visual FoxPro 3.0 Standard Edition, Microsoft Visual FoxPro 3.0b Standard Edition, Microsoft Visual FoxPro 5.0 Standard Edition, Microsoft Visual FoxPro 5.0a, Microsoft Visual FoxPro 6.0 Professional Edition

  • kbnosurvey kbarchive kbmt kbapi kbcodesnippet kbhowto kbregistry KB258262 KbMtpt
Comentários