récupérer l'adresse e-mail de l'utilisateur du carnet d'adresses
18 réponses
Dan
Bonjour à tous
je sais maintenant comment récupérer le carnet d'adresses dans une zone de
texte.
Je cherche maintenant à savoir où je peux récupérer l'adresse e-mail de
l'utilisateur (mois en l'occurrence mais mon application peut être installée
chez d'autres utilisateurs)
d'avance merci de votre aide.
Dan
Bonjour à tous je sais maintenant comment récupérer le carnet d'adresses dans une zone de texte. Je cherche maintenant à savoir où je peux récupérer l'adresse e-mail de l'utilisateur (mois en l'occurrence mais mon application peut être installée chez d'autres utilisateurs) d'avance merci de votre aide. Dan
Cette adresses se trouve sous un des numéros de sous-clés de la clé HKEY_CURRENT_USERSoftwareMicrosoftInternet Account ManagerAccounts de la base de registre. Pour y accéder en VB, il faut utiliser les API de gestion du registre. Prévois d'en baver quelques jours pour te familiariser avec cette programmation. Google t'aidera dans ta recherche d'exemples.
Cordialement
Aski
Salutatoi Dan,
Tu t'es vachement avancé en affirmant :
Bonjour à tous
je sais maintenant comment récupérer le carnet d'adresses dans une
zone de texte.
Je cherche maintenant à savoir où je peux récupérer l'adresse e-mail
de l'utilisateur (mois en l'occurrence mais mon application peut être
installée chez d'autres utilisateurs)
d'avance merci de votre aide.
Dan
Cette adresses se trouve sous un des numéros de sous-clés de la clé
HKEY_CURRENT_USERSoftwareMicrosoftInternet Account ManagerAccounts
de la base de registre.
Pour y accéder en VB, il faut utiliser les API de gestion du registre.
Prévois d'en baver quelques jours pour te familiariser avec cette
programmation.
Google t'aidera dans ta recherche d'exemples.
Bonjour à tous je sais maintenant comment récupérer le carnet d'adresses dans une zone de texte. Je cherche maintenant à savoir où je peux récupérer l'adresse e-mail de l'utilisateur (mois en l'occurrence mais mon application peut être installée chez d'autres utilisateurs) d'avance merci de votre aide. Dan
Cette adresses se trouve sous un des numéros de sous-clés de la clé HKEY_CURRENT_USERSoftwareMicrosoftInternet Account ManagerAccounts de la base de registre. Pour y accéder en VB, il faut utiliser les API de gestion du registre. Prévois d'en baver quelques jours pour te familiariser avec cette programmation. Google t'aidera dans ta recherche d'exemples.
Cordialement
Aski
Dan
Merci,je vais m'y mettre avec obstination.
"Aski" a écrit dans le message de news: enOct$
Salutatoi Dan,
Tu t'es vachement avancé en affirmant :
Bonjour à tous je sais maintenant comment récupérer le carnet d'adresses dans une zone de texte. Je cherche maintenant à savoir où je peux récupérer l'adresse e-mail de l'utilisateur (mois en l'occurrence mais mon application peut être installée chez d'autres utilisateurs) d'avance merci de votre aide. Dan
Cette adresses se trouve sous un des numéros de sous-clés de la clé HKEY_CURRENT_USERSoftwareMicrosoftInternet Account ManagerAccounts de la base de registre. Pour y accéder en VB, il faut utiliser les API de gestion du registre. Prévois d'en baver quelques jours pour te familiariser avec cette programmation. Google t'aidera dans ta recherche d'exemples.
Cordialement
Aski
Merci,je vais m'y mettre avec obstination.
"Aski" <aski@asci.asc> a écrit dans le message de news:
enOct$92FHA.3976@TK2MSFTNGP15.phx.gbl...
Salutatoi Dan,
Tu t'es vachement avancé en affirmant :
Bonjour à tous
je sais maintenant comment récupérer le carnet d'adresses dans une
zone de texte.
Je cherche maintenant à savoir où je peux récupérer l'adresse e-mail
de l'utilisateur (mois en l'occurrence mais mon application peut être
installée chez d'autres utilisateurs)
d'avance merci de votre aide.
Dan
Cette adresses se trouve sous un des numéros de sous-clés de la clé
HKEY_CURRENT_USERSoftwareMicrosoftInternet Account ManagerAccounts
de la base de registre.
Pour y accéder en VB, il faut utiliser les API de gestion du registre.
Prévois d'en baver quelques jours pour te familiariser avec cette
programmation.
Google t'aidera dans ta recherche d'exemples.
Bonjour à tous je sais maintenant comment récupérer le carnet d'adresses dans une zone de texte. Je cherche maintenant à savoir où je peux récupérer l'adresse e-mail de l'utilisateur (mois en l'occurrence mais mon application peut être installée chez d'autres utilisateurs) d'avance merci de votre aide. Dan
Cette adresses se trouve sous un des numéros de sous-clés de la clé HKEY_CURRENT_USERSoftwareMicrosoftInternet Account ManagerAccounts de la base de registre. Pour y accéder en VB, il faut utiliser les API de gestion du registre. Prévois d'en baver quelques jours pour te familiariser avec cette programmation. Google t'aidera dans ta recherche d'exemples.
Cordialement
Aski
Zoury
Salut ! :O)
Pour y accéder en VB, il faut utiliser les API de gestion du registre. Prévois d'en baver quelques jours pour te familiariser avec cette programmation.
Jètez un oeil à ma classe CRegistry... elle devrait vous faciliter la tâche ;O) http://groups.google.com/group/microsoft.public.fr.vb/msg/5d1c5050c10a3740
-- Cordialement Yanick MVP pour Visual Basic
Salut ! :O)
Pour y accéder en VB, il faut utiliser les API de gestion du registre.
Prévois d'en baver quelques jours pour te familiariser avec cette
programmation.
Jètez un oeil à ma classe CRegistry... elle devrait vous faciliter la tâche
;O)
http://groups.google.com/group/microsoft.public.fr.vb/msg/5d1c5050c10a3740
Pour y accéder en VB, il faut utiliser les API de gestion du registre. Prévois d'en baver quelques jours pour te familiariser avec cette programmation.
Jètez un oeil à ma classe CRegistry... elle devrait vous faciliter la tâche ;O) http://groups.google.com/group/microsoft.public.fr.vb/msg/5d1c5050c10a3740
-- Cordialement Yanick MVP pour Visual Basic
Aski
Salutatoi Zoury,
Tu t'es vachement avancé en affirmant :
Salut ! :O)
Pour y accéder en VB, il faut utiliser les API de gestion du registre. Prévois d'en baver quelques jours pour te familiariser avec cette programmation.
Jètez un oeil à ma classe CRegistry... elle devrait vous faciliter la tâche ;O) http://groups.google.com/group/microsoft.public.fr.vb/msg/5d1c5050c10a3740
Merci Yanick. J'espérais ce complément d'information.
Aski
Salutatoi Zoury,
Tu t'es vachement avancé en affirmant :
Salut ! :O)
Pour y accéder en VB, il faut utiliser les API de gestion du
registre. Prévois d'en baver quelques jours pour te familiariser
avec cette programmation.
Jètez un oeil à ma classe CRegistry... elle devrait vous faciliter la
tâche ;O)
http://groups.google.com/group/microsoft.public.fr.vb/msg/5d1c5050c10a3740
Merci Yanick. J'espérais ce complément d'information.
Pour y accéder en VB, il faut utiliser les API de gestion du registre. Prévois d'en baver quelques jours pour te familiariser avec cette programmation.
Jètez un oeil à ma classe CRegistry... elle devrait vous faciliter la tâche ;O) http://groups.google.com/group/microsoft.public.fr.vb/msg/5d1c5050c10a3740
Merci Yanick. J'espérais ce complément d'information.
Aski
Dan
Bonjour. En regardant ce code je dois dire que là je suis vraiment perdu. Je dirai même : autant de code pour récupérer une si petite adresse ! Blague à part par quoi je commence est-ce que j'en sais une application, un OCX, un module jeu ne sait plus trop. Pourrais-tu me donner un début de piste. D'avance merci car je ne suis pas vraiment un grand expert en visuel basique.
"Aski" a écrit dans le message de news: %23Z%231kY%
Salutatoi Zoury,
Tu t'es vachement avancé en affirmant :
Salut ! :O)
Pour y accéder en VB, il faut utiliser les API de gestion du registre. Prévois d'en baver quelques jours pour te familiariser avec cette programmation.
Jètez un oeil à ma classe CRegistry... elle devrait vous faciliter la tâche ;O) http://groups.google.com/group/microsoft.public.fr.vb/msg/5d1c5050c10a3740
Merci Yanick. J'espérais ce complément d'information.
Aski
Bonjour.
En regardant ce code je dois dire que là je suis vraiment perdu.
Je dirai même : autant de code pour récupérer une si petite adresse !
Blague à part par quoi je commence est-ce que j'en sais une application, un
OCX, un module jeu ne sait plus trop.
Pourrais-tu me donner un début de piste.
D'avance merci car je ne suis pas vraiment un grand expert en visuel
basique.
"Aski" <aski@asci.asc> a écrit dans le message de news:
%23Z%231kY%232FHA.1596@tk2msftngp13.phx.gbl...
Salutatoi Zoury,
Tu t'es vachement avancé en affirmant :
Salut ! :O)
Pour y accéder en VB, il faut utiliser les API de gestion du
registre. Prévois d'en baver quelques jours pour te familiariser
avec cette programmation.
Jètez un oeil à ma classe CRegistry... elle devrait vous faciliter la
tâche ;O)
http://groups.google.com/group/microsoft.public.fr.vb/msg/5d1c5050c10a3740
Merci Yanick. J'espérais ce complément d'information.
Bonjour. En regardant ce code je dois dire que là je suis vraiment perdu. Je dirai même : autant de code pour récupérer une si petite adresse ! Blague à part par quoi je commence est-ce que j'en sais une application, un OCX, un module jeu ne sait plus trop. Pourrais-tu me donner un début de piste. D'avance merci car je ne suis pas vraiment un grand expert en visuel basique.
"Aski" a écrit dans le message de news: %23Z%231kY%
Salutatoi Zoury,
Tu t'es vachement avancé en affirmant :
Salut ! :O)
Pour y accéder en VB, il faut utiliser les API de gestion du registre. Prévois d'en baver quelques jours pour te familiariser avec cette programmation.
Jètez un oeil à ma classe CRegistry... elle devrait vous faciliter la tâche ;O) http://groups.google.com/group/microsoft.public.fr.vb/msg/5d1c5050c10a3740
Merci Yanick. J'espérais ce complément d'information.
Aski
Aski
Salutatoi Dan,
Tu t'es vachement avancé en affirmant :
Bonjour. En regardant ce code je dois dire que là je suis vraiment perdu. Je dirai même : autant de code pour récupérer une si petite adresse ! Blague à part par quoi je commence est-ce que j'en sais une application, un OCX, un module jeu ne sait plus trop. Pourrais-tu me donner un début de piste. D'avance merci car je ne suis pas vraiment un grand expert en visuel basique.
La classe donnée par Yanick donne toutes les fonctions permettant d'accéder au registre. Il faut choisir dans ces fonctions, celle qui t'intéresse. Dans notre cas, il suffit de lire la valeur de la clé contenant l'adresse.
Aski.
Salutatoi Dan,
Tu t'es vachement avancé en affirmant :
Bonjour.
En regardant ce code je dois dire que là je suis vraiment perdu.
Je dirai même : autant de code pour récupérer une si petite adresse !
Blague à part par quoi je commence est-ce que j'en sais une
application, un OCX, un module jeu ne sait plus trop.
Pourrais-tu me donner un début de piste.
D'avance merci car je ne suis pas vraiment un grand expert en visuel
basique.
La classe donnée par Yanick donne toutes les fonctions permettant d'accéder
au registre. Il faut choisir dans ces fonctions, celle qui t'intéresse.
Dans notre cas, il suffit de lire la valeur de la clé contenant l'adresse.
Bonjour. En regardant ce code je dois dire que là je suis vraiment perdu. Je dirai même : autant de code pour récupérer une si petite adresse ! Blague à part par quoi je commence est-ce que j'en sais une application, un OCX, un module jeu ne sait plus trop. Pourrais-tu me donner un début de piste. D'avance merci car je ne suis pas vraiment un grand expert en visuel basique.
La classe donnée par Yanick donne toutes les fonctions permettant d'accéder au registre. Il faut choisir dans ces fonctions, celle qui t'intéresse. Dans notre cas, il suffit de lire la valeur de la clé contenant l'adresse.
Aski.
Jacques93
Bonjour Dan, Dan a écrit :
Bonjour. En regardant ce code je dois dire que là je suis vraiment perdu. Je dirai même : autant de code pour récupérer une si petite adresse ! Blague à part par quoi je commence est-ce que j'en sais une application, un OCX, un module jeu ne sait plus trop.
C'est pour un jeu ? ;-)
Pourrais-tu me donner un début de piste. D'avance merci car je ne suis pas vraiment un grand expert en visuel basique.
Dans ton projet, tu fais :
Projet => Ajouter un module de classe
tu le nomme CRegistry, tu y fais un copier coller du code contenu dans le lien que t'as indiqué Zoury :
Private Const kIAM = "SoftwareMicrosoftInternet Account Manager"
Private Sub Command1_Click() Dim reg As CRegistry Dim DefaultMailAccount As String Dim SMTPEmailAddress As String
Set reg = New CRegistry DefaultMailAccount = reg.GetValueStr(bkhCurrentUser, _ kIAM, "Default Mail Account") SMTPEmailAddress = reg.GetValueStr(bkhCurrentUser, _ kIAM & "Accounts" & DefaultMailAccount, _ "SMTP Email Address") MsgBox SMTPEmailAddress End Sub
-- Cordialement,
Jacques.
Bonjour Dan,
Dan a écrit :
Bonjour.
En regardant ce code je dois dire que là je suis vraiment perdu.
Je dirai même : autant de code pour récupérer une si petite adresse !
Blague à part par quoi je commence est-ce que j'en sais une application, un
OCX, un module jeu ne sait plus trop.
C'est pour un jeu ? ;-)
Pourrais-tu me donner un début de piste.
D'avance merci car je ne suis pas vraiment un grand expert en visuel
basique.
Dans ton projet, tu fais :
Projet => Ajouter un module de classe
tu le nomme CRegistry, tu y fais un copier coller du code contenu dans
le lien que t'as indiqué Zoury :
Private Const kIAM = "SoftwareMicrosoftInternet Account Manager"
Private Sub Command1_Click()
Dim reg As CRegistry
Dim DefaultMailAccount As String
Dim SMTPEmailAddress As String
Set reg = New CRegistry
DefaultMailAccount = reg.GetValueStr(bkhCurrentUser, _
kIAM, "Default Mail Account")
SMTPEmailAddress = reg.GetValueStr(bkhCurrentUser, _
kIAM & "Accounts" & DefaultMailAccount, _
"SMTP Email Address")
MsgBox SMTPEmailAddress
End Sub
Bonjour. En regardant ce code je dois dire que là je suis vraiment perdu. Je dirai même : autant de code pour récupérer une si petite adresse ! Blague à part par quoi je commence est-ce que j'en sais une application, un OCX, un module jeu ne sait plus trop.
C'est pour un jeu ? ;-)
Pourrais-tu me donner un début de piste. D'avance merci car je ne suis pas vraiment un grand expert en visuel basique.
Dans ton projet, tu fais :
Projet => Ajouter un module de classe
tu le nomme CRegistry, tu y fais un copier coller du code contenu dans le lien que t'as indiqué Zoury :
Private Const kIAM = "SoftwareMicrosoftInternet Account Manager"
Private Sub Command1_Click() Dim reg As CRegistry Dim DefaultMailAccount As String Dim SMTPEmailAddress As String
Set reg = New CRegistry DefaultMailAccount = reg.GetValueStr(bkhCurrentUser, _ kIAM, "Default Mail Account") SMTPEmailAddress = reg.GetValueStr(bkhCurrentUser, _ kIAM & "Accounts" & DefaultMailAccount, _ "SMTP Email Address") MsgBox SMTPEmailAddress End Sub
-- Cordialement,
Jacques.
Aski
Salutatoi Jacques93,
Tu t'es vachement avancé en affirmant :
Pourrais-tu me donner un *début de piste*. D'avance merci car je ne suis pas vraiment un grand expert en visuel basique.
Dans ton projet, tu fais :
Projet => Ajouter un module de classe
tu le nomme CRegistry, tu y fais un copier coller du code contenu dans le lien que t'as indiqué Zoury : et dans une feuille avec un bouton tu colles :
Ben, ce n'est pas vraiment un début ... ;-)
Cordialement
Aski
Salutatoi Jacques93,
Tu t'es vachement avancé en affirmant :
Pourrais-tu me donner un *début de piste*.
D'avance merci car je ne suis pas vraiment un grand expert en visuel
basique.
Dans ton projet, tu fais :
Projet => Ajouter un module de classe
tu le nomme CRegistry, tu y fais un copier coller du code contenu dans
le lien que t'as indiqué Zoury :
et dans une feuille avec un bouton tu colles :
Pourrais-tu me donner un *début de piste*. D'avance merci car je ne suis pas vraiment un grand expert en visuel basique.
Dans ton projet, tu fais :
Projet => Ajouter un module de classe
tu le nomme CRegistry, tu y fais un copier coller du code contenu dans le lien que t'as indiqué Zoury : et dans une feuille avec un bouton tu colles :
Ben, ce n'est pas vraiment un début ... ;-)
Cordialement
Aski
Jacques93
Bonsoir Aski, Aski a écrit :
Salutatoi Jacques93,
Tu t'es vachement avancé en affirmant :
Pourrais-tu me donner un *début de piste*. D'avance merci car je ne suis pas vraiment un grand expert en visuel basique.
Dans ton projet, tu fais :
Projet => Ajouter un module de classe
tu le nomme CRegistry, tu y fais un copier coller du code contenu dans le lien que t'as indiqué Zoury : et dans une feuille avec un bouton tu colles :
Ben, ce n'est pas vraiment un début ... ;-)
Je sais, ce n'est peut être pas la bonne méthode d'un point de vue pédagoqique. Mais, c'est pas gagné, le code de Zoury demande quelques 'révisions' (Ex : RegOpenKeyEx et RegOpenKey sont utilisées, mais une seule est déclarée. En principe ça ne plante qu'à la compil.
dans l'exemple une constante 'rkcLocalMachine', est utilisée ... Selon que Option Explicit est présente ou pas ...
Le conseil que je peux donner à Dan , par rapport au volume du code proposé par Zoury, c'est de tracer le programme avec <F8> il verra que pour ses besoins actuels (clés de type REG_SZ) seule la fonction GetValueStr est utilisée (13 lignes), et de consulter pas à pas là valeur des variables et constantes. Et avec un peu de bonne volonté, il s'appercevra qu'avec ce module de classe il peut (sous réserve des droits d'accès) accéder à n'importe quelle clé du registre.
Le passage aux modules de classe, aux Dll Activex, Exe Activex, et OCX, est loin d'être évidente, et un petit coup de pouce ça peut aider ;-)
PS Pour Zoury : Pourquoi, à moins d'avoir mal vu, n'avoir pas implémenter l'accès aux registre distants, avec RegConnectRegistry :-D
-- Cordialement,
Jacques.
Bonsoir Aski,
Aski a écrit :
Salutatoi Jacques93,
Tu t'es vachement avancé en affirmant :
Pourrais-tu me donner un *début de piste*.
D'avance merci car je ne suis pas vraiment un grand expert en visuel
basique.
Dans ton projet, tu fais :
Projet => Ajouter un module de classe
tu le nomme CRegistry, tu y fais un copier coller du code contenu dans
le lien que t'as indiqué Zoury :
et dans une feuille avec un bouton tu colles :
Ben, ce n'est pas vraiment un début ... ;-)
Je sais, ce n'est peut être pas la bonne méthode d'un point de vue
pédagoqique.
Mais, c'est pas gagné, le code de Zoury demande quelques 'révisions' (Ex
: RegOpenKeyEx et RegOpenKey sont utilisées, mais une seule est
déclarée. En principe ça ne plante qu'à la compil.
dans l'exemple une constante 'rkcLocalMachine', est utilisée ... Selon
que Option Explicit est présente ou pas ...
Le conseil que je peux donner à Dan , par rapport au volume du code
proposé par Zoury, c'est de tracer le programme avec <F8> il verra que
pour ses besoins actuels (clés de type REG_SZ) seule la fonction
GetValueStr est utilisée (13 lignes), et de consulter pas à pas là
valeur des variables et constantes. Et avec un peu de bonne volonté, il
s'appercevra qu'avec ce module de classe il peut (sous réserve des
droits d'accès) accéder à n'importe quelle clé du registre.
Le passage aux modules de classe, aux Dll Activex, Exe Activex, et OCX,
est loin d'être évidente, et un petit coup de pouce ça peut aider ;-)
PS Pour Zoury : Pourquoi, à moins d'avoir mal vu, n'avoir pas
implémenter l'accès aux registre distants, avec
RegConnectRegistry :-D
Pourrais-tu me donner un *début de piste*. D'avance merci car je ne suis pas vraiment un grand expert en visuel basique.
Dans ton projet, tu fais :
Projet => Ajouter un module de classe
tu le nomme CRegistry, tu y fais un copier coller du code contenu dans le lien que t'as indiqué Zoury : et dans une feuille avec un bouton tu colles :
Ben, ce n'est pas vraiment un début ... ;-)
Je sais, ce n'est peut être pas la bonne méthode d'un point de vue pédagoqique. Mais, c'est pas gagné, le code de Zoury demande quelques 'révisions' (Ex : RegOpenKeyEx et RegOpenKey sont utilisées, mais une seule est déclarée. En principe ça ne plante qu'à la compil.
dans l'exemple une constante 'rkcLocalMachine', est utilisée ... Selon que Option Explicit est présente ou pas ...
Le conseil que je peux donner à Dan , par rapport au volume du code proposé par Zoury, c'est de tracer le programme avec <F8> il verra que pour ses besoins actuels (clés de type REG_SZ) seule la fonction GetValueStr est utilisée (13 lignes), et de consulter pas à pas là valeur des variables et constantes. Et avec un peu de bonne volonté, il s'appercevra qu'avec ce module de classe il peut (sous réserve des droits d'accès) accéder à n'importe quelle clé du registre.
Le passage aux modules de classe, aux Dll Activex, Exe Activex, et OCX, est loin d'être évidente, et un petit coup de pouce ça peut aider ;-)
PS Pour Zoury : Pourquoi, à moins d'avoir mal vu, n'avoir pas implémenter l'accès aux registre distants, avec RegConnectRegistry :-D
-- Cordialement,
Jacques.
Picalausa François
"Jacques93" a écrit dans le message de news:
PS Pour Zoury : Pourquoi, à moins d'avoir mal vu, n'avoir pas implémenter l'accès aux registre distants, avec RegConnectRegistry :-D
Hello!
Voici une manière d'implémenter ceci: 'Dans les déclarations, ajouter: Private Declare Function RegConnectRegistry _ Lib "advapi32.dll" _ Alias "RegConnectRegistryA" _ ( _ ByVal lpMachineName As String, _ ByVal hKey As Long, _ phkResult As Long _ ) _ As Long
'ailleurs dans le module: Public Function GetRemoteBaseKey(ByVal MachineName As String, BaseKey As eBaseKeyHandle) As Long If Left$(MachineName, 2) <> "" Then MachineName = "" & MachineName
If RegConnectRegistry(MachineName, BaseKey, GetRemoteBaseKey) <> NO_ERROR Then GetRemoteBaseKey = 0 End If End Function
Public Sub CloseRemoteKey(RemoteBaseKey As Long) RegCloseKey RemoteBaseKey End Sub
Cependant l'utilisation des autres wrappers est alors moins naturelle: Dim RemoteHKCU As Long
'Ouverture de la clé distante RemoteHKCU = reg.GetRemoteBaseKey("toto", bkhCurrentUser)
'Utilisation des autres wrappers Debug.Print reg.KeyExists(RemoteHKCU, "key")
'Fermeture de la clé distante Call reg.CloseRemoteKey(RemoteHKCU)
-- Picalausa François
"Jacques93" <jacques@NoSpam> a écrit dans le message de news:
OiIJgLL3FHA.3600@TK2MSFTNGP12.phx.gbl...
PS Pour Zoury : Pourquoi, à moins d'avoir mal vu, n'avoir pas
implémenter l'accès aux registre distants, avec
RegConnectRegistry :-D
Hello!
Voici une manière d'implémenter ceci:
'Dans les déclarations, ajouter:
Private Declare Function RegConnectRegistry _
Lib "advapi32.dll" _
Alias "RegConnectRegistryA" _
( _
ByVal lpMachineName As String, _
ByVal hKey As Long, _
phkResult As Long _
) _
As Long
'ailleurs dans le module:
Public Function GetRemoteBaseKey(ByVal MachineName As String, BaseKey As
eBaseKeyHandle) As Long
If Left$(MachineName, 2) <> "\" Then MachineName = "\" & MachineName
If RegConnectRegistry(MachineName, BaseKey, GetRemoteBaseKey) <>
NO_ERROR Then
GetRemoteBaseKey = 0
End If
End Function
Public Sub CloseRemoteKey(RemoteBaseKey As Long)
RegCloseKey RemoteBaseKey
End Sub
Cependant l'utilisation des autres wrappers est alors moins naturelle:
Dim RemoteHKCU As Long
'Ouverture de la clé distante
RemoteHKCU = reg.GetRemoteBaseKey("\toto", bkhCurrentUser)
'Utilisation des autres wrappers
Debug.Print reg.KeyExists(RemoteHKCU, "key")
'Fermeture de la clé distante
Call reg.CloseRemoteKey(RemoteHKCU)
PS Pour Zoury : Pourquoi, à moins d'avoir mal vu, n'avoir pas implémenter l'accès aux registre distants, avec RegConnectRegistry :-D
Hello!
Voici une manière d'implémenter ceci: 'Dans les déclarations, ajouter: Private Declare Function RegConnectRegistry _ Lib "advapi32.dll" _ Alias "RegConnectRegistryA" _ ( _ ByVal lpMachineName As String, _ ByVal hKey As Long, _ phkResult As Long _ ) _ As Long
'ailleurs dans le module: Public Function GetRemoteBaseKey(ByVal MachineName As String, BaseKey As eBaseKeyHandle) As Long If Left$(MachineName, 2) <> "" Then MachineName = "" & MachineName
If RegConnectRegistry(MachineName, BaseKey, GetRemoteBaseKey) <> NO_ERROR Then GetRemoteBaseKey = 0 End If End Function
Public Sub CloseRemoteKey(RemoteBaseKey As Long) RegCloseKey RemoteBaseKey End Sub
Cependant l'utilisation des autres wrappers est alors moins naturelle: Dim RemoteHKCU As Long
'Ouverture de la clé distante RemoteHKCU = reg.GetRemoteBaseKey("toto", bkhCurrentUser)
'Utilisation des autres wrappers Debug.Print reg.KeyExists(RemoteHKCU, "key")
'Fermeture de la clé distante Call reg.CloseRemoteKey(RemoteHKCU)