Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

associer un prgm à un type de fichier

2 réponses
Avatar
moi
Bonjour,

Je cherche à mettre au point script pour corriger
des associations brisées...

Tout ça se passe dans un domaine 2003.
avec profil itinérants , OUs et tout l'bazar ;o)
J'ai plusieurs possibilités :

1. assoc suivi de ftype :
par exemple
assoc .tll=tralala_fichier
ftype tralala_fichier="C:\Windows\Notepad.exe %1"

pour associer les *.tll à Notepad ;o)

mais j'ai l'impression qu'il faut avoir
des privilèges étendus pour faire ça.

2. dans la BdR HK_Class_root
ou HKLM\software\class

donne plus de possibilités que le cas 1.
mais pose les mêmes problèmes ?

3. dans HKCU\software\class

Là plus de pb d''autorisations
mais le rafraichissement d'une partie de l'info
n'est pas immédiate...

En fait je me pose des questions
sur le chargement des ruches et les différents types de script

un script venu d'une GPO "machine"
peut-il déjà accéder à HKLM ?
un script venu d'une GPO "utilisateur"
peut-il déjà accéder à HKCU ?
Un script de profil (type machin.bat)
peut-il déjà accéder à HKCU ?

Merci avance pour vos lumières..

HB

2 réponses

Avatar
Gilles LAURENT [MVP]
"moi" a écrit dans le message de
news:
| Bonjour,

Bonsoir,

| Je cherche à mettre au point script pour corriger
| des associations brisées...
|
| Tout ça se passe dans un domaine 2003.
| avec profil itinérants , OUs et tout l'bazar ;o)
| J'ai plusieurs possibilités :
|
| 1. assoc suivi de ftype :
| par exemple
| assoc .tll=tralala_fichier
| ftype tralala_fichier="C:WindowsNotepad.exe %1"
| pour associer les *.tll à Notepad ;o)
| mais j'ai l'impression qu'il faut avoir
| des privilèges étendus pour faire ça.

"All Users" donc nécessite de posséder le droit Admin
=> HKLMSoftwareClasses

| 2. dans la BdR HK_Class_root
| ou HKLMsoftwareclass
|
| donne plus de possibilités que le cas 1.
| mais pose les mêmes problèmes ?

"All Users" donc nécessite de posséder le droit Admin
Note: HKCR est un alias de HKLMSoftwareClasses

| 3. dans HKCUsoftwareclass

"Per User"
Note: HKCU est un alias de HKU<SID>

| Là plus de pb d''autorisations
| mais le rafraichissement d'une partie de l'info
| n'est pas immédiate...

SHChangeNotify (SHCNE_ASSOCCHANGED, ...)

En VBScript (via le wrapper DynaCall)
http://ourworld.compuserve.com/homepages/Guenter_Born/WSHBazaar/WSHDynaCall.htm

--- Coupez ici : AssocChangeNotify.vbs ---
' initialisation du composant Dynacall
' et déclaration de l'API Win32 utilisée (prototype)
Set oDyn=CreateObject("DynamicWrapper")
oDyn.Register "Shell32.dll","SHChangeNotify","f=s","i=llll"

' mise à jour du cache (icône, extension, ...)
oDyn.SHChangeNotify &H8000000,0,0,0
--- Coupez ici : AssocChangeNotify.vbs ---

| En fait je me pose des questions
| sur le chargement des ruches et les différents types de script
|
| un script venu d'une GPO "machine"
| peut-il déjà accéder à HKLM ?

Oui. Le script s'exécute sous l'autorité LocalSystem
=> la ruche est montée

| un script venu d'une GPO "utilisateur"
| peut-il déjà accéder à HKCU ?

Oui. Le script s'exécute sous l'autorité de l'utilisateur connecté
=> la ruche est montée (HKU<SID> = HKCU)

| Un script de profil (type machin.bat)
| peut-il déjà accéder à HKCU ?

Oui. Le script s'exécute sous l'autorité de l'utilisateur connecté
=> la ruche est montée (HKU<SID> = HKCU)

--
Gilles LAURENT
MVP Windows Server - Admin Frameworks
http://glsft.free.fr
Avatar
moi
Bonjour,

et,

merci beaucoup !!!
pour ces précieuses précisions.

A+

HB