Come scrivere un valore DWORD del Registro di sistema

Traduzione articoli Traduzione articoli
Identificativo articolo: 258262 - Visualizza i prodotti a cui si riferisce l?articolo.
Espandi tutto | Chiudi tutto

Sommario

A volte Ŕ necessario scrivere informazioni nel Registro di sistema. In questo articolo viene illustrato come scrivere valori REG_DWORD una chiave creata nel Registro di sistema per questo articolo. Se il valore che si sta scrivendo non esiste giÓ, Ŕ necessario aggiungerlo.

Informazioni

importante : questo articolo contiene informazioni sulla modifica del Registro di sistema. Prima di modificare il Registro di sistema, eseguire una copia di backup e assicurarsi di sapere come ripristinarlo in caso di problemi. Per ulteriori informazioni su come eseguire il backup, ripristinare e modificare il Registro di sistema, fare clic sul numero dell'articolo della Microsoft Knowledge Base riportato di seguito:
256986Descrizione del Registro di sistema di Microsoft Windows

avviso : se si utilizza Editor del Registro di sistema in modo non corretto, si potrebbero provocare problemi gravi che potrebbero richiedere la reinstallazione del sistema operativo. Microsoft non garantisce la che Ŕ possibile risolvere i problemi derivanti dall'errato utilizzo dell'editor del Registro di sistema. Utilizzare Editor del Registro di sistema a proprio rischio.

Le informazioni per l'editor del Registro di sistema in questo articolo sono che per Microsoft Windows NT e Microsoft Windows 2000. Se si esegue Microsoft Windows 9 X, Ŕ necessario utilizzare Regedit.exe invece di Regedt32.exe.

Nota: In questo articolo utilizza una chiave del Registro di sistema viene creata a solo scopo di testing e dovrÓ essere eliminata al termine dell'operazione test.
  1. Avviare l'editor del Registro di configurazione (Regedt32.exe).
  2. Individuare la seguente chiave nel Registro di sistema:
       HKEY_LOCAL_MACHINE\Software
    					
  3. Scegliere Aggiungi chiave dal menu Modifica e quindi aggiungerla il seguente Registro di sistema chiave:
       VfpREGTest
    					
  4. Scegliere Aggiungi valore dal menu Modifica e quindi aggiungere il seguente valore del Registro di sistema:
       Value Name: MyDWORD
       Data Type:  REG_DWORD
       Value:      0
    					
  5. Uscire dal Registro di sistema.
  6. Da Visual FoxPro, creare un programma e come immettere il codice riportato di seguito:
    #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. Eseguire il codice creato nel passaggio 1. VerrÓ visualizzata una finestra di messaggio di annuncio l'esito positivo o negativo della funzione. ╚ possibile utilizzare regedt32.exe per verificare che il valore Ŕ stato scritto nel Registro di sistema.
  8. ╚ possibile sostituire nKey, cSubKey, cValue e nValueToWrite con le informazioni da scrivere nel Registro di sistema.
(c) Microsoft Corporation 2000, tutti i diritti riservati. Contributo di Mark Barnard, Microsoft Corporation.

Riferimenti


Per ulteriori informazioni, ottenere i valori dal Registro di sistema, fare clic su articolo numero dell'articolo della Microsoft Knowledge Base riportato di seguito:
244675Come utilizzare Windows Script Host lettura, scrittura, eliminazione del Registro di sistema

ProprietÓ

Identificativo articolo: 258262 - Ultima modifica: giovedý 15 luglio 2004 - Revisione: 2.2
Le informazioni in questo articolo si applicano a:
  • 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
Chiavi:á
kbmt kbapi kbcodesnippet kbhowto kbregistry KB258262 KbMtit
Traduzione automatica articoli
Il presente articolo Ŕ stato tradotto tramite il software di traduzione automatica di Microsoft e non da una persona. Microsoft offre sia articoli tradotti da persone fisiche sia articoli tradotti automaticamente da un software, in modo da rendere disponibili tutti gli articoli presenti nella nostra Knowledge Base nella lingua madre dell?utente. Tuttavia, un articolo tradotto in modo automatico non Ŕ sempre perfetto. Potrebbe contenere errori di sintassi, di grammatica o di utilizzo dei vocaboli, pi¨ o meno allo stesso modo di come una persona straniera potrebbe commettere degli errori parlando una lingua che non Ŕ la sua. Microsoft non Ŕ responsabile di alcuna imprecisione, errore o danno cagionato da qualsiasi traduzione non corretta dei contenuti o dell?utilizzo degli stessi fatto dai propri clienti. Microsoft, inoltre, aggiorna frequentemente il software di traduzione automatica.
Clicca qui per visualizzare la versione originale in inglese dell?articolo: 258262
LE INFORMAZIONI CONTENUTE NELLA MICROSOFT KNOWLEDGE BASE SONO FORNITE SENZA GARANZIA DI ALCUN TIPO, IMPLICITA OD ESPLICITA, COMPRESA QUELLA RIGUARDO ALLA COMMERCIALIZZAZIONE E/O COMPATIBILITA' IN IMPIEGHI PARTICOLARI. L'UTENTE SI ASSUME L'INTERA RESPONSABILITA' PER L'UTILIZZO DI QUESTE INFORMAZIONI. IN NESSUN CASO MICROSOFT CORPORATION E I SUOI FORNITORI SI RENDONO RESPONSABILI PER DANNI DIRETTI, INDIRETTI O ACCIDENTALI CHE POSSANO PROVOCARE PERDITA DI DENARO O DI DATI, ANCHE SE MICROSOFT O I SUOI FORNITORI FOSSERO STATI AVVISATI. IL DOCUMENTO PUO' ESSERE COPIATO E DISTRIBUITO ALLE SEGUENTI CONDIZIONI: 1) IL TESTO DEVE ESSERE COPIATO INTEGRALMENTE E TUTTE LE PAGINE DEVONO ESSERE INCLUSE. 2) I PROGRAMMI SE PRESENTI, DEVONO ESSERE COPIATI SENZA MODIFICHE, 3) IL DOCUMENTO DEVE ESSERE DISTRIBUITO INTERAMENTE IN OGNI SUA PARTE. 4) IL DOCUMENTO NON PUO' ESSERE DISTRIBUITO A SCOPO DI LUCRO.

Invia suggerimenti

 

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