J'ai testé une petite extension shell en référence au projet de code article. Bien que le processus est assez compliqué, j'ai une certaine idée comment ce sont les follwoing methodsand qu'est-ce que Thet faire .:Comment enregistrer l'extension Shell avec une certaine extension de fichier
Initialize,DragQueryFile,GetCommandString,InvokeCommand,QueryContextMenu
Mais après avoir lu ce que je ne comprends pas comment notre extension ContextMenu est associée à Fichier .txt.
L'article explique si nous allons jeter un oeil à l'intérieur .rgs fichier, nous pouvons voir qu'il créer une entrée de registre comme ceci:
HKCR
{
NoRemove txtfile
{
NoRemove ShellEx
{
NoRemove ContextMenuHandlers
{
ForceRemove SimpleShlExt = s '{5E2121EE-0300-11D4-8D3B-444553540000}'
}
}
}
}
Mais réelle, après avoir suivi l'article et l'écriture du code, lorsque J'ai ouvert SimpleShlExt.rgs
Il ressemble à ceci:
--edit comme dans CodeProject--
HKCR
{
NoRemove CLSID
{
ForceRemove {1E569362-E0A6-4DEA-AB1F-67D6D3DEF1A5} = s 'SimpleShExt Class'
{
InprocServer32 = s '%MODULE%'
{
val ThreadingModel = s 'Apartment'
}
}
}
}
Est-ce que le registre crée dynamiquement tout mappage entre les entrées CLSID et txtfile reg. Si tel est le cas, si je veux modifier le comportement d'un autre fichier, par exemple pour un fichier mp3 ou un lecteur lui-même et que mon menu contextuel soit affiché ou affiché, alors comment y remédier. Parce que je ne connais pas le CLSID pour ça.
Si vous avez un code Spinet ou un article connexe s'il vous plaît – Simsons
@Subhen je l'ai fait avec regedit - donc pas d'exemple: P Peut-être cela aide http://msdn.microsoft.com/en-us/library/cc144171%28v= VS.85% 29.aspx http://msdn.microsoft.com/fr-fr/library/bb776095%28v=VS.85%29.aspx –