DWORD 레지스트리 쓰기 방법

기술 자료 번역 기술 자료 번역
기술 자료: 258262 - 이 문서가 적용되는 제품 보기.
모두 확대 | 모두 축소

요약

레지스트리에 정보를 쓰는 데 필요한 경우가 있습니다. 이 문서에서는 이 문서의 레지스트리 만든 키와 REG_DWORD 값을 작성하는 방법을 보여 줍니다. 작성 중인 값이 아직 없는 경우 추가해야 합니다.

추가 정보

중요: 이 문서에는 레지스트리 수정에 대한 정보를 포함합니다. 레지스트리를 수정하기 전에 이를 백업하고 문제가 발생하는 경우 레지스트리를 복원하는 방법을 알고 있어야 합니다 확인하십시오. 백업, 복원 및 레지스트리 편집 방법에 대한 자세한 내용은 Microsoft 기술 자료의 다음 문서를 참조하십시오.
256986Microsoft Windows 레지스트리에 대한 설명

경고: 레지스트리 편집기를 잘못 사용하면 운영 체제를 다시 설치해야 하는 심각한 문제가 발생할 수 있습니다. Microsoft는 레지스트리 편집기를 잘못 사용하여 발생하는 문제에 대해 해결을 보증하지 않습니다. 레지스트리 편집기를 따른 위험 부담은 사용자의 책임입니다.

이 문서에서는 레지스트리 편집기에 대한 정보를 Microsoft Windows NT 및 Windows 2000을 위한 것입니다. Microsoft Windows 9 X 실행 중인 경우에는 대신 Regedt32.exe Regedit.exe를 사용해야 합니다.

참고:이 문서에서는 테스트 목적으로 방금 만든 완료한 삭제할 레지스트리 키를 사용하는 테스트.
  1. 레지스트리 편집기 (Regedt32.exe)를 시작하십시오.
  2. 레지스트리에서 다음 키를 찾습니다:
       HKEY_LOCAL_MACHINE\Software
    					
  3. 편집 메뉴에서 를 누른 다음 레지스트리 키 추가:
       VfpREGTest
    					
  4. 편집 메뉴에서 값 추가 누르고 다음 레지스트리 값을 추가합니다:
       Value Name: MyDWORD
       Data Type:  REG_DWORD
       Value:      0
    					
  5. 레지스트리 편집기를 종료하십시오.
  6. Visual FoxPro에서 프로그램을 만들고 다음 코드를 입력합니다:
    #DEFINE HKEY_CLASSES_ROOT           -2147483648
    #DEFINE HKEY_CURRENT_USER           -2147483647
    #DEFINE HKEY_LOCAL_MACHINE          -2147483646
    #DEFINE HKEY_USERS                  -2147483645
    
    LOCAL nKey, cSubKey, cValue, nValueToWrite, lSuccess
    nKey = HKEY_LOCAL_MACHINE
    nValueToWrite = 1
    cSubKey = "Software\VfpREGTest"
    cValue = "MyDWORD"
    
    lSuccess = WriteRegDWORD(nKey, cSubKey, cValue, nValueToWrite)
    
    IF (lSuccess) THEN
       =MESSAGEBOX("Function Successful.")
    ELSE
       =MESSAGEBOX("Function Not Successful.")
    ENDIF
    
    FUNCTION 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.
       ENDIF
    RETURN .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))
       NEXT
    RETURN strReturn
    * End of Code
    					
  7. 1단계에서 만든 코드를 실행하십시오. 함수의 성공 여부를 알리는 메시지 상자가 나타납니다. regedt32.exe 값을 레지스트리에 쓰여졌는지 확인할 수 있습니다.
  8. nKey, cSubKey, cValue, nValueToWrite 및 레지스트리에 기록할 정보를 바꿀 수 있습니다.
(예약된 모든 권한 c) Microsoft Corporation 2000. 표시 Barnard, Microsoft Corporation에 의해 기고물입니다.

참조


레지스트리에서 값을 가져오는 자세한 내용은 아래 문서 번호를 눌러 Microsoft 기술 자료에 있는 문서를 클릭하십시오.
244675ToUse Windows 스크립트 호스트 읽기, 쓰기 방법 레지스트리 삭제

속성

기술 자료: 258262 - 마지막 검토: 2004년 7월 15일 목요일 - 수정: 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
키워드:?
kbmt kbapi kbcodesnippet kbhowto kbregistry KB258262 KbMtko
기계 번역된 문서
중요: 본 문서는 전문 번역가가 번역한 것이 아니라 Microsoft 기계 번역 소프트웨어로 번역한 것입니다. Microsoft는 번역가가 번역한 문서 및 기계 번역된 문서를 모두 제공하므로 Microsoft 기술 자료에 있는 모든 문서를 한글로 접할 수 있습니다. 그러나 기계 번역 문서가 항상 완벽한 것은 아닙니다. 따라서 기계 번역 문서에는 마치 외국인이 한국어로 말할 때 실수를 하는 것처럼 어휘, 구문 또는 문법에 오류가 있을 수 있습니다. Microsoft는 내용상의 오역 또는 Microsoft 고객이 이러한 오역을 사용함으로써 발생하는 부 정확성, 오류 또는 손해에 대해 책임을 지지 않습니다. Microsoft는 이러한 문제를 해결하기 위해 기계 번역 소프트웨어를 자주 업데이트하고 있습니다.

피드백 보내기

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com