OVH Cloud OVH Cloud

Chemin complet du navigateur

3 réponses
Avatar
pfeuh
Bonjour,

J'ai essayé de trouver le chemin complet du navigateur par défaut
en VB, je ne l'ai pas trouvé dans les variables d'environement. C'est
pour faire une aide en HTML à partir la fonction "shell" qui
appellerait ledit navigateur avec en paramètre le chemin de la page
d'accueil. Merci d'avance,

Pfeuh

3 réponses

Avatar
Bismark Prods
HKEY_CLASSES_ROOThttpshellopencommand


"Pfeuh" a écrit dans le message de
news:
Bonjour,

J'ai essayé de trouver le chemin complet du navigateur par défaut
en VB, je ne l'ai pas trouvé dans les variables d'environement. C'est
pour faire une aide en HTML à partir la fonction "shell" qui
appellerait ledit navigateur avec en paramètre le chemin de la page
d'accueil. Merci d'avance,

Pfeuh


Avatar
pfeuh
Bonjour,

Voilà de la réponse concise et claire, merci! Après avoir
consulté la base de registres, j'ai bien trouvé mon naviguateur à
l'endroit indiqué. Par contre, tout ce que je connais comme fonction
VB pour le récupérer, c'est GetSetting. Et là, j'avoue ne pas savoir
comment faire avec les paramètres : Dans
HKEY_CLASSES_ROOThttpshellopencommand, où sont appname, section et
key? :o( Il y a un déclic qui ne veut pas se produire!

Merci d'avance,

Pfeuh

"Bismark Prods" wrote in message news:...
HKEY_CLASSES_ROOThttpshellopencommand


Avatar
Bismark Prods
je pense que tu ne peux pas utiliser get et set setting pour recupérer ce
genre d'information ! ces deux méthodes servent a gerer une partie bien
définie de la base de registre je crois mais je suis pas sur !

en revanche je sais qu'il y a des API qui permette de gérer la base de
registre (qui n'est en realité q'un gros fichier, mais c'est pas le sujet,
lol)

Voila un exemple betement tiré de API-Guide !

'This program needs 3 buttons
Const REG_SZ = 1 ' Unicode nul terminated string
Const REG_BINARY = 3 ' Free form binary
Const HKEY_CURRENT_USER = &H80000001
Private Declare Function RegCloseKey Lib "advapi32.dll" (ByVal hKey As Long)
As Long
Private Declare Function RegCreateKey Lib "advapi32.dll" Alias
"RegCreateKeyA" (ByVal hKey As Long, ByVal lpSubKey As String, phkResult As
Long) As Long
Private Declare Function RegDeleteValue Lib "advapi32.dll" Alias
"RegDeleteValueA" (ByVal hKey As Long, ByVal lpValueName As String) As Long
Private Declare Function RegOpenKey Lib "advapi32.dll" Alias "RegOpenKeyA"
(ByVal hKey As Long, ByVal lpSubKey As String, phkResult As Long) As Long
Private Declare Function RegQueryValueEx Lib "advapi32.dll" Alias
"RegQueryValueExA" (ByVal hKey As Long, ByVal lpValueName As String, ByVal
lpReserved As Long, lpType As Long, lpData As Any, lpcbData As Long) As Long
Private Declare Function RegSetValueEx Lib "advapi32.dll" Alias
"RegSetValueExA" (ByVal hKey As Long, ByVal lpValueName As String, ByVal
Reserved As Long, ByVal dwType As Long, lpData As Any, ByVal cbData As Long)
As Long
Function RegQueryStringValue(ByVal hKey As Long, ByVal strValueName As
String) As String
Dim lResult As Long, lValueType As Long, strBuf As String, lDataBufSize As
Long
'retrieve nformation about the key
lResult = RegQueryValueEx(hKey, strValueName, 0, lValueType, ByVal 0,
lDataBufSize)
If lResult = 0 Then
If lValueType = REG_SZ Then
'Create a buffer
strBuf = String(lDataBufSize, Chr$(0))
'retrieve the key's content
lResult = RegQueryValueEx(hKey, strValueName, 0, 0, ByVal strBuf,
lDataBufSize)
If lResult = 0 Then
'Remove the unnecessary chr$(0)'s
RegQueryStringValue = Left$(strBuf, InStr(1, strBuf, Chr$(0)) - 1)
End If
ElseIf lValueType = REG_BINARY Then
Dim strData As Integer
'retrieve the key's value
lResult = RegQueryValueEx(hKey, strValueName, 0, 0, strData, lDataBufSize)
If lResult = 0 Then
RegQueryStringValue = strData
End If
End If
End If
End Function
Function GetString(hKey As Long, strPath As String, strValue As String)
Dim Ret
'Open the key
RegOpenKey hKey, strPath, Ret
'Get the key's content
GetString = RegQueryStringValue(Ret, strValue)
'Close the key
RegCloseKey Ret
End Function
Sub SaveString(hKey As Long, strPath As String, strValue As String, strData
As String)
Dim Ret
'Create a new key
RegCreateKey hKey, strPath, Ret
'Save a string to the key
RegSetValueEx Ret, strValue, 0, REG_SZ, ByVal strData, Len(strData)
'close the key
RegCloseKey Ret
End Sub
Sub SaveStringLong(hKey As Long, strPath As String, strValue As String,
strData As String)
Dim Ret
'Create a new key
RegCreateKey hKey, strPath, Ret
'Set the key's value
RegSetValueEx Ret, strValue, 0, REG_BINARY, CByte(strData), 4
'close the key
RegCloseKey Ret
End Sub
Sub DelSetting(hKey As Long, strPath As String, strValue As String)
Dim Ret
'Create a new key
RegCreateKey hKey, strPath, Ret
'Delete the key's value
RegDeleteValue Ret, strValue
'close the key
RegCloseKey Ret
End Sub
Private Sub Command1_Click()
Dim strString As String
'Ask for a value
strString = InputBox("Please enter a value between 0 and 255 to be saved as
a binary value in the registry.", App.Title)
If strString = "" Or Val(strString) > 255 Or Val(strString) < 0 Then
MsgBox "Invalid value entered ...", vbExclamation + vbOKOnly, App.Title
Exit Sub
End If
'Save the value to the registry
SaveStringLong HKEY_CURRENT_USER, "KPD-Team", "BinaryValue",
CByte(strString)
End Sub
Private Sub Command2_Click()
'Get a string from the registry
Ret = GetString(HKEY_CURRENT_USER, "KPD-Team", "BinaryValue")
If Ret = "" Then MsgBox "No value found !", vbExclamation + vbOKOnly,
App.Title: Exit Sub
MsgBox "The value is " + Ret, vbOKOnly + vbInformation, App.Title
End Sub
Private Sub Command3_Click()
'Delete the setting from the registry
DelSetting HKEY_CURRENT_USER, "KPD-Team", "BinaryValue"
MsgBox "The value was deleted ...", vbInformation + vbOKOnly, App.Title
End Sub
Private Sub Form_Load()
'KPD-Team 1998
'URL: http://www.allapi.net/
'E-Mail:
Command1.Caption = "Set Value"
Command2.Caption = "Get Value"
Command3.Caption = "Delete Value"
End Sub

ET je sais que François ou Zoury vont péter un cable quand ils verront qu'il
n'y a pas de mise en forme !


"Pfeuh" a écrit dans le message de
news:
Bonjour,

Voilà de la réponse concise et claire, merci! Après avoir
consulté la base de registres, j'ai bien trouvé mon naviguateur à
l'endroit indiqué. Par contre, tout ce que je connais comme fonction
VB pour le récupérer, c'est GetSetting. Et là, j'avoue ne pas savoir
comment faire avec les paramètres : Dans
HKEY_CLASSES_ROOThttpshellopencommand, où sont appname, section et
key? :o( Il y a un déclic qui ne veut pas se produire!

Merci d'avance,

Pfeuh

"Bismark Prods" wrote in message


news:...
> HKEY_CLASSES_ROOThttpshellopencommand