Nasıl yapılır: DWORD kayıt defterine yazma

Makale çevirileri Makale çevirileri
Makale numarası: 258262 - Bu makalenin geçerli olduğu ürünleri görün.
Hepsini aç | Hepsini kapa

Özet

Bilgileri kayıt defterine yazma bazen gereklidir. Bu makalede, REG_DWORD değerleri oluşturulan bu makaleyle ilgili kayıt defteri anahtarına yazılamıyor gösterilmiştir. Yazmakta olduğunuz değeri mevcut değilse, onu yeniden eklemeniz gerekir.

Daha fazla bilgi

ÖNEMLI: Bu makale kayıt defterini değiştirmeyle ilgili bilgiler içermektedir. Kayıt defterini değiştirmeden önce yedeklediğinizden ve bir sorun çıkması durumunda kayıt defterini geri nasıl yükleyeceğinizi anladığınızdan emin olun. Kayıt defterini yedekleme, geri yükleme ve düzenleme ile ilgili bilgi için, Microsoft Bilgi Bankası'ndaki makaleyi görüntülemek üzere aşağıdaki makale numarasını tıklatın:
256986Microsoft Windows Kayıt Defteri'nin Açıklaması

UYARı: Kayıt Defteri Düzenleyicisi'ni yanlış kullanırsanız, işletim sisteminizi yeniden yüklemenizi gerektirebilecek ciddi sorunlara neden olabilir. Microsoft, Kayıt Defteri Düzenleyicisi yanlış kullanımından kaynaklanan sorunları çözebileceğinizi garanti edemez. Kayıt Defteri Düzenleyicisi'ni kullanmak kendi sorumluluğunuzdadır.

Bu makalede anlatılan kayıt defteri Düzenleyicisi hakkında bilgi için Microsoft Windows NT ve Microsoft Windows 2000 ' dir. Microsoft Windows 9 X çalıştırıyorsanız, Regedit.exe yerine Regedt32.exe kullanmanız gerekir.

Not:Bu makalede, bir kayıt defteri anahtarı yalnızca sınama amacıyla oluşturulur ve işiniz bittiğinde bu güvenlik açığından silinmelidir kullanan sınama.
  1. Kayıt Defteri Düzenleyicisi'ni (Regedt32.exe) başlatın.
  2. Kayıt defterinde aşağıdaki anahtarı bulun:
       HKEY_LOCAL_MACHINE\Software
    					
  3. Düzen menüsünde, Anahtar Ekle'yi tıklatın ve sonra da aşağıdaki kayıt defteri anahtarı ekleyin:
       VfpREGTest
    					
  4. Düzen menüsünde, Değer Ekle'yi tıklatın ve sonra da aşağıdaki kayıt defteri değerini ekleyin:
       Value Name: MyDWORD
       Data Type:  REG_DWORD
       Value:      0
    					
  5. Kayıt Defteri Düzenleyicisi'nden çıkın.
  6. Visual FoxPro bir program oluşturun ve aşağıdaki kodu girin:
    #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. Adımda oluşturduğunuz kodu çalıştırın. Başarı veya başarısızlık işlevinin Duyurusu BIR ileti kutusu görünür. Regedt32.exe, değeri kayıt defterine yazılmıştır doğrulamak için kullanabilirsiniz.
  8. Kayıt defterine yazılacak bilgilerle, nKey cSubKey, cValue ve nValueToWrite değiştirebilirsiniz.
(c) Microsoft Corporation 2000'de, tüm hakları saklıdır. Katkıyı Barnard işareti, Microsoft Corporation.

Referanslar


Değerler, kayıt defterinden alma ek bilgi için Microsoft Knowledge Base'deki makaleyi görüntülemek üzere aşağıdaki makale numarasını tıklatın:
244675Kullanmayı Windows Script Host için okuma, yazma nasıl Kayıt Sil

Özellikler

Makale numarası: 258262 - Last Review: 15 Temmuz 2004 Perşembe - Gözden geçirme: 2.2
Bu makaledeki bilginin uygulandığı durum:
  • Microsoft Visual FoxPro 3.0 Standard Edition
  • Microsoft Visual FoxPro for Windows 3.0b
  • Microsoft Visual FoxPro 5.0 Standard Edition
  • Microsoft Visual FoxPro 5.0a
  • Microsoft Visual FoxPro 6.0 Professional Edition
Anahtar Kelimeler: 
kbmt kbapi kbcodesnippet kbhowto kbregistry KB258262 KbMttr
Machine-translated Article
ÖNEMLİ: Bu makale, bir kişi tarafından çevrilmek yerine, Microsoft makine-çevirisi yazılımı ile çevrilmiştir. Microsoft size hem kişiler tarafından çevrilmiş, hem de makine-çevrisi ile çevrilmiş makaleler sunar. Böylelikle, bilgi bankamızdaki tüm makalelere, kendi dilinizde ulaşmış olursunuz. Bununla birlikte, makine tarafından çevrilmiş makaleler mükemmel değildir. Bir yabancının sizin dilinizde konuşurken yapabileceği hatalar gibi, makale; kelime dağarcığı, söz dizim kuralları veya dil bilgisi açısından yanlışlar içerebilir. Microsoft, içeriğin yanlış çevrimi veya onun müşteri tarafından kullanımından doğan; kusur, hata veya zarardan sorumlu değildir. Microsoft ayrıca makine çevirisi yazılımını sıkça güncellemektedir.
Makalenin İngilizcesi aşağıdaki gibidir:258262

Geri Bildirim Ver

 

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