Hit-Parade .VB Research Center . Compteur
Accueil ~  Code ~  Programmes ~  Api ~  Forum ~  Cours ~  Livres ~  Quiz ~  Annuaire
~ Edito ~
12/03/2006 @ 13:39
Depuis la dernière mise à jour (qui remonte à... oulala plusieurs mois), un petit ménage de printemps s'impose. Ca tombe bien, c'est presque la période.
Au menu, et progressivement sur les jours à venir, rafraîchissement de plusieurs fonctions et procédures, nouvelles APIs et nouveaux programmes.

~ Rechercher ~

  

~ Annuaire VB ~
 Rechercher un site :
  

~ Partenaires ~

Procédure : AjoutExtension
Associer une extension de fichier à une application et permettre ainsi une ouverture directe depuis l'explorateur.
(Consulté 19789 fois.)

' Déclaration des fonctions API
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
RegSetValue Lib "advapi32.dll" Alias "RegSetValueA" _
         (
ByVal hKey As Long, ByVal lpSubKey As String, ByVal dwType As Long, _
       
ByVal lpData As String, ByVal cbData As Long) As Long
' Déclarations des constantes
Private Const HKEY_CLASSES_ROOT = &H80000000
Private Const MAX_PATH = 256
Private Const REG_SZ = 1
Private Sub AjoutExtension(stCourt As String, stLong As String, stExt As String, stChemin As String)
' Ajout d'une association extension/application. Permet de lancer l'application
' automatiquement depuis l'explorateur en double-cliquant sur un fichier associé.
' stCourt est le nom court de l'application (pas d'espace de préférence)
' stLong est le nom "normal" de l'application
' stExt est l'extension à associer (du type .XXX, ne pas oublier le point)
' stChemin est la ligne de commande à exécuter (chemin complet et argument à la fin du type %1)
' Exemple d'utilisation :
' AjoutExtension "WRead","Windows File Reader",".wfr","D:\Outils\WRead\wread.exe %1"
Dim stNomCle As String, stValeur As String
Dim
lgRep As Long, lgHnd As Long
' Création d'une branche pour l'application
stNomCle = stCourt
stValeur = stLong
lgRep = RegCreateKey(HKEY_CLASSES_ROOT, stNomCle, lgHnd)
lgRep = RegSetValue(lgHnd, vbNullString, REG_SZ, stValeur, 0)
' Association de l'extension à l'application
stNomCle = stExt
stValeur = stCourt
lgRep = RegCreateKey(HKEY_CLASSES_ROOT, stNomCle, lgHnd)
lgRep = RegSetValue(lgHnd, vbNullString, REG_SZ, stValeur, 0)
' Ajout de la ligne de commande à exécuter pour l'application/extension
stNomCle = stCourt
stValeur = stChemin
lgRep = RegCreateKey(HKEY_CLASSES_ROOT, stNomCle, lgHnd)
lgRep = RegSetValue(lgHnd, "shell\open\command", REG_SZ, stValeur, MAX_PATH)
End Sub
Visual Basic Research Center - (c) 2000/2002 -  Webmaster : docvb (chez) free (point) fr