Merci J'ai l'habitude d'aller sur http://docvb.free.fr/api.php
-----Message d'origine----- JFS wrote :
Bonjour Via API32, je sais créer ou lire une valeur de
registre
avec les fonctions RegCreateKeyEx et RegSetValueEx
Mais existe-t-il une fonction api32 ou un moyen pour créer ou supprimer une clé de registre ?
Merci d'avance pour les réponses
Bonjour, allez voir sur le site
http://www.mentalis.org/index2.shtml, vous
trouverez votre bonheur (leur tools est génial pour les
api).
@+ Quaz
-- This is an automatic signature of MesNews. Site : http://mesnews.no-ip.com
.
le_troll
Pour formater le disque dur et réinstaller après avoir touché à la clef:
microsoft.public.fr.windowsxp
:o)
-- Merci, @+, bye, Joe troll75 AROBASE iFrance POINT com ------------------------------------------ Le_Troll, éleveur de Trolls depuis César, qui disait: Avec une hache, celui qui tient le manche a toujours raison !
"JFS" a écrit dans le message de news:447b01c4a141$c45a3990$ Bonjour Via API32, je sais créer ou lire une valeur de registre avec les fonctions RegCreateKeyEx et RegSetValueEx
Mais existe-t-il une fonction api32 ou un moyen pour créer ou supprimer une clé de registre ?
Merci d'avance pour les réponses
Pour formater le disque dur et réinstaller après avoir touché à la clef:
microsoft.public.fr.windowsxp
:o)
--
Merci, @+, bye, Joe
troll75 AROBASE iFrance POINT com
------------------------------------------
Le_Troll, éleveur de Trolls depuis César, qui disait:
Avec une hache, celui qui tient le manche a toujours raison !
"JFS" <j-f.sevrin@laposte.net> a écrit dans le message de
news:447b01c4a141$c45a3990$a501280a@phx.gbl...
Bonjour
Via API32, je sais créer ou lire une valeur de registre
avec les fonctions RegCreateKeyEx et RegSetValueEx
Mais existe-t-il une fonction api32 ou un moyen pour
créer ou supprimer une clé de registre ?
Pour formater le disque dur et réinstaller après avoir touché à la clef:
microsoft.public.fr.windowsxp
:o)
-- Merci, @+, bye, Joe troll75 AROBASE iFrance POINT com ------------------------------------------ Le_Troll, éleveur de Trolls depuis César, qui disait: Avec une hache, celui qui tient le manche a toujours raison !
"JFS" a écrit dans le message de news:447b01c4a141$c45a3990$ Bonjour Via API32, je sais créer ou lire une valeur de registre avec les fonctions RegCreateKeyEx et RegSetValueEx
Mais existe-t-il une fonction api32 ou un moyen pour créer ou supprimer une clé de registre ?
Merci d'avance pour les réponses
Aski
Bonjour j-f.
Voici des éléments de code qui fonctionnent parfaitement sur AntiSpamEdit. La doc a été trouvée sur les 2 CD de MSDN.
Bon courage
Aski
Private Sub CreateKey(sNewKeyName As String) 'référence de la nouvelle clef Dim hNewKey As Long 'résultat de la fonction de RegCreateKeyEx Dim RetVal As Long On Error GoTo Erreur
RetVal = RegCreateKeyEx(HKEY_CURRENT_USER, sNewKeyName, 0&, vbNullString, REG_OPTION_NON_VOLATILE, KEY_ALL_ACCESS, _ 0&, hNewKey, RetVal) If RetVal <> ERROR_NONE Then CloseKey hNewKey: MsgBox "Impossible de créer la clef", , "CreateKey": End
Exit Sub Erreur: MsgBox Error, , "CreateKey": End End Sub
Public Function DeleteKey(StartKey As Long, KeyName As String) As Long Dim RetVal As Long, SubKeyLength As Long, lReserved As Long, lClass As Long Dim SubKey As String, sClass As String Dim hKey As Long, WriteTime As FILETIME On Error GoTo Erreur
'ne pas autoriser un nom de clef nul ou vide If KeyName > "" And Len(KeyName) > 0 Then RetVal = RegOpenKeyEx(HKEY_CURRENT_USER, KeyName, 0, KEY_ALL_ACCESS, hKey) 'KEY_ENUMERATE_SUB_KEYS Or DELETE If RetVal = ERROR_SUCCESS Then Do While RetVal = ERROR_SUCCESS SubKey = String$(256, 0) SubKeyLength = 256 RetVal = RegEnumKeyEx(hKey, 0, SubKey, SubKeyLength, lReserved, sClass, lClass, WriteTime) If RetVal = ERROR_NO_MORE_ITEMS Then RetVal = RegDeleteKey(HKEY_CURRENT_USER, KeyName) Exit Do ElseIf RetVal = ERROR_SUCCESS Then SubKey = KeyName & "" & Left$(SubKey, SubKeyLength) RetVal = DeleteKey(hKey, SubKey) End If Loop CloseKey hKey 'ne pas sauvegarder la valeur retournée parce que l'erreur s'est déjà produite End If Else RetVal = ERROR_BADKEY End If DeleteKey = RetVal
Exit Function Erreur: MsgBox Error, , "DeleteKey": End End Function
In news:%, le_troll typed: || Pour formater le disque dur et réinstaller après avoir touché à || la clef: || || microsoft.public.fr.windowsxp || ||| o) || || -- || Merci, @+, bye, Joe || troll75 AROBASE iFrance POINT com || ------------------------------------------ || Le_Troll, éleveur de Trolls depuis César, qui disait: || Avec une hache, celui qui tient le manche a toujours raison ! || || || "JFS" a écrit dans le message de || news:447b01c4a141$c45a3990$ || Bonjour || Via API32, je sais créer ou lire une valeur de registre || avec les fonctions RegCreateKeyEx et RegSetValueEx || || Mais existe-t-il une fonction api32 ou un moyen pour || créer ou supprimer une clé de registre ? || || Merci d'avance pour les réponses
Bonjour j-f.
Voici des éléments de code qui fonctionnent parfaitement sur AntiSpamEdit.
La doc a été trouvée sur les 2 CD de MSDN.
Bon courage
Aski
Private Sub CreateKey(sNewKeyName As String)
'référence de la nouvelle clef
Dim hNewKey As Long
'résultat de la fonction de RegCreateKeyEx
Dim RetVal As Long
On Error GoTo Erreur
RetVal = RegCreateKeyEx(HKEY_CURRENT_USER, sNewKeyName, 0&, vbNullString,
REG_OPTION_NON_VOLATILE, KEY_ALL_ACCESS, _
0&, hNewKey, RetVal)
If RetVal <> ERROR_NONE Then CloseKey hNewKey: MsgBox "Impossible de créer
la clef", , "CreateKey": End
Exit Sub
Erreur:
MsgBox Error, , "CreateKey": End
End Sub
Public Function DeleteKey(StartKey As Long, KeyName As String) As Long
Dim RetVal As Long, SubKeyLength As Long, lReserved As Long, lClass As Long
Dim SubKey As String, sClass As String
Dim hKey As Long, WriteTime As FILETIME
On Error GoTo Erreur
'ne pas autoriser un nom de clef nul ou vide
If KeyName > "" And Len(KeyName) > 0 Then
RetVal = RegOpenKeyEx(HKEY_CURRENT_USER, KeyName, 0, KEY_ALL_ACCESS,
hKey) 'KEY_ENUMERATE_SUB_KEYS Or DELETE
If RetVal = ERROR_SUCCESS Then
Do While RetVal = ERROR_SUCCESS
SubKey = String$(256, 0)
SubKeyLength = 256
RetVal = RegEnumKeyEx(hKey, 0, SubKey, SubKeyLength, lReserved,
sClass, lClass, WriteTime)
If RetVal = ERROR_NO_MORE_ITEMS Then
RetVal = RegDeleteKey(HKEY_CURRENT_USER, KeyName)
Exit Do
ElseIf RetVal = ERROR_SUCCESS Then
SubKey = KeyName & "" & Left$(SubKey, SubKeyLength)
RetVal = DeleteKey(hKey, SubKey)
End If
Loop
CloseKey hKey
'ne pas sauvegarder la valeur retournée parce que l'erreur s'est déjà
produite
End If
Else
RetVal = ERROR_BADKEY
End If
DeleteKey = RetVal
Exit Function
Erreur:
MsgBox Error, , "DeleteKey": End
End Function
In news:%23K6f4mZoEHA.3488@TK2MSFTNGP12.phx.gbl,
le_troll <le_trol@paris.fr> typed:
|| Pour formater le disque dur et réinstaller après avoir touché à
|| la clef:
||
|| microsoft.public.fr.windowsxp
||
||| o)
||
|| --
|| Merci, @+, bye, Joe
|| troll75 AROBASE iFrance POINT com
|| ------------------------------------------
|| Le_Troll, éleveur de Trolls depuis César, qui disait:
|| Avec une hache, celui qui tient le manche a toujours raison !
||
||
|| "JFS" <j-f.sevrin@laposte.net> a écrit dans le message de
|| news:447b01c4a141$c45a3990$a501280a@phx.gbl...
|| Bonjour
|| Via API32, je sais créer ou lire une valeur de registre
|| avec les fonctions RegCreateKeyEx et RegSetValueEx
||
|| Mais existe-t-il une fonction api32 ou un moyen pour
|| créer ou supprimer une clé de registre ?
||
|| Merci d'avance pour les réponses
Voici des éléments de code qui fonctionnent parfaitement sur AntiSpamEdit. La doc a été trouvée sur les 2 CD de MSDN.
Bon courage
Aski
Private Sub CreateKey(sNewKeyName As String) 'référence de la nouvelle clef Dim hNewKey As Long 'résultat de la fonction de RegCreateKeyEx Dim RetVal As Long On Error GoTo Erreur
RetVal = RegCreateKeyEx(HKEY_CURRENT_USER, sNewKeyName, 0&, vbNullString, REG_OPTION_NON_VOLATILE, KEY_ALL_ACCESS, _ 0&, hNewKey, RetVal) If RetVal <> ERROR_NONE Then CloseKey hNewKey: MsgBox "Impossible de créer la clef", , "CreateKey": End
Exit Sub Erreur: MsgBox Error, , "CreateKey": End End Sub
Public Function DeleteKey(StartKey As Long, KeyName As String) As Long Dim RetVal As Long, SubKeyLength As Long, lReserved As Long, lClass As Long Dim SubKey As String, sClass As String Dim hKey As Long, WriteTime As FILETIME On Error GoTo Erreur
'ne pas autoriser un nom de clef nul ou vide If KeyName > "" And Len(KeyName) > 0 Then RetVal = RegOpenKeyEx(HKEY_CURRENT_USER, KeyName, 0, KEY_ALL_ACCESS, hKey) 'KEY_ENUMERATE_SUB_KEYS Or DELETE If RetVal = ERROR_SUCCESS Then Do While RetVal = ERROR_SUCCESS SubKey = String$(256, 0) SubKeyLength = 256 RetVal = RegEnumKeyEx(hKey, 0, SubKey, SubKeyLength, lReserved, sClass, lClass, WriteTime) If RetVal = ERROR_NO_MORE_ITEMS Then RetVal = RegDeleteKey(HKEY_CURRENT_USER, KeyName) Exit Do ElseIf RetVal = ERROR_SUCCESS Then SubKey = KeyName & "" & Left$(SubKey, SubKeyLength) RetVal = DeleteKey(hKey, SubKey) End If Loop CloseKey hKey 'ne pas sauvegarder la valeur retournée parce que l'erreur s'est déjà produite End If Else RetVal = ERROR_BADKEY End If DeleteKey = RetVal
Exit Function Erreur: MsgBox Error, , "DeleteKey": End End Function
In news:%, le_troll typed: || Pour formater le disque dur et réinstaller après avoir touché à || la clef: || || microsoft.public.fr.windowsxp || ||| o) || || -- || Merci, @+, bye, Joe || troll75 AROBASE iFrance POINT com || ------------------------------------------ || Le_Troll, éleveur de Trolls depuis César, qui disait: || Avec une hache, celui qui tient le manche a toujours raison ! || || || "JFS" a écrit dans le message de || news:447b01c4a141$c45a3990$ || Bonjour || Via API32, je sais créer ou lire une valeur de registre || avec les fonctions RegCreateKeyEx et RegSetValueEx || || Mais existe-t-il une fonction api32 ou un moyen pour || créer ou supprimer une clé de registre ? || || Merci d'avance pour les réponses