1

「本による」ATLを使用してシェル拡張(、、、&の実装IContextMenu)をIShellExtInit作成しました。IExtractIconIPersistFile

面白いことに、「TotalCommander」や「FreeCommander」などの一部のファイルマネージャーではすべてが良好ですが、Windowsのエクスプローラーでは完全に失敗します。


TC( "Total Commander")で登録済みのファイル(たとえば)を右クリックすると*.000、拡張機能が機能します。ログとコンテキストメニューに表示されます。アイコンの付いたエントリが表示されます。

しかし、Win-Explorerを使用しても、何も起こりません。ログエントリは表示されず、コンテキストメニューに証拠はありません-何もありません!PCを完全に再起動しても役に立ちません。

もちろん、エクスプローラーのキーShellEx\MyX\ContextMenuHandlersとキーを登録しましたが、それらはすべて私のを指しています。私はWindows7を使用しています。ShellEx\IconHandler...\Shell Extensions\Approved\CLSID

ここで何が恋しいですか?

4

1 に答える 1

0

@SevaTitovは私の質問に答えましたが、コメントとして、この問題に遭遇した人のための将来の参照のために:

@SevaTitov:

OSが64ビットの場合、エクスプローラーも64ビットになり、すべてのシェル拡張機能も64ビットである必要があります。TotalCommanderの現在のバージョンは32ビットのみのようです

レジストリリダイレクトというものがあります。32ビットプログラムを使用している場合は、64ビットレジストリを非表示(「リダイレクト」)します。その逆も同様です。

32ビットのregistry-viewer-appでこれらのキーを確認できたので混乱しましたが、レジストリの一部しか表示されないことに気づいていませんでした(64ビットの部分は64ビットのビューアで表示する必要があります。 64ビットWindowsマシンのデフォルトのregedit.exe)

于 2011-10-10T11:59:34.660 に答える