質問: windowsエクスプローラーは、vista64の32ビットモードでさまざまなサードパーティのコンテキストメニューを表示します windowsエクスプローラーでファイルを右クリックして有効にするメニューにアクションを追加するサードパーティアプリケーションがいくつかあります。これらはtortoisesvnなどのツールです。通常は正常に動作しますが、一部のアプリケーションは、これらのメニューがないwindowsエクスプローラーウィンドウを開きます。たとえば、explorer . &を使用してcygwinからwindowsエクスプローラーウィンドウを起動するか、eclipseで「ファイルの探索」アクションを使用すると、このような状態になります。これはvistaのバグですか? windowsエクスプローラーを一貫して動作させるためにできることはありますか?説明の編集:実際、よく調べてみると、呼び出しモードによっては実際にはdifferentメニューアイコンが表示されているようです。例えば。 「unlocker」アプリケーションは「spawned」バージョンでのみ表示されますが、tortoiseおよびdiffmergeアイコンは直接起動されたバージョンで表示されます。これは、私のマシンで「通常の」windowsエクスプローラウィンドウがどのように表示されるかを示しています。これは、winkey-eショートカットを使用して開くか、dosコマンドシェルから呼び出されました。cygwinから起動したとき(同じディレクトリ内の同じファイルを調べる)は次のようになります。説明編集2:eclipseとcygwinから起動すると、次の違いが見られます。 tortoisesvnおよびtortoisegitアイコンオーバーレイが表示されない notepad ++で編集しても表示されない tortoisesvnおよびtortoisegitメニューが表示されない diffmergeメニューが表示されない 消しゴムメニューが表示されない 7zipメニューが表示されない ロック解除メニューdoが表示されます 私の記憶では、これらのアプリケーションのうち、この問題を観察したときはnotepad ++とtortoisesvn、およびkdiff3のみがインストールされていました(後でトラブルシューティングを試みるためにkdiff3コンテキストメニューをアンインストールしました)。また、私が64ビットvistaを使用していることも関係があるかもしれません。更新3:greechの提案のおかげで、32ビットバージョンと64ビットバージョンの両方のshellexviewをインストールして実行しました。私が推測していたように、2人は異なるセットアイテムが利用可能であるのを見ました。shellexview32ビットおよびshellexview64ビットの画面キャプチャは次のとおりです。これらは、microsoft以外のすべてのエントリに制限されています。(画像を新しいタブ/ウィンドウで開いてフルサイズで表示します)32ビット:64ビット:したがって、問題は次のようになります。windowsエクスプローラーが生成されると2ビットアプリケーションから 64ビットから起動される場合とは異なるメニューセットが表示されます。これを確認するために、%windir%\syswow64\cmd.exeを使用して32ビットコマンドプロンプトを起動し、その中でexplorer .を起動しました。予想どおり、32ビットアプリケーションメニューが表示されました。結論はい、問題は、64ビットosで32ビットeclipseを実行していて、64ビットtortoisesvn/tortoisegitメニューがフックされていない32ビットバージョンのwindowsエクスプローラーを生成することです。解決策は次のとおりです。 tortoisesvnダウンロードページ に記載されているように、32ビットtortoiseバージョンを並べてインストールするには: x64ユーザーへの注意:32ビットバージョンと64ビットバージョンの両方を並べてインストールできます。これにより、32ビットアプリケーションでもtortoisesvn機能が有効になります。 適切な質問をしてくれたarjanと、根本的な問題を診断するための重要なツールを提案してくれたgreechに感謝します。 harrymcの答えは、実際には根本的な答えに最も近いので、受け入れるつもりです。賞金を共有する方法はないと思いますが、皆さんの助けが重要であることを皆さんに知ってもらいたいと思います。
回答: 同様の問題が次のスレッドで処理されました: vista 64ビットのhgtortoiseがコンテキストメニューを表示しない 。そこで受け入れられた答えは、次のコマンドを使用して、vista64ビットで32ビットwindowsエクスプローラーを実行する方法でした。 %systemroot%\ syswow64\explorer.exe /別 スレッドへのその後の更新は言った: 更新:tortoisehg 0.8(2009-07-01リリース)は、インストーラーに32ビットと64ビットの両方のシェル拡張機能が含まれるようになり、windows7でも機能します。以下で説明する回避策は不要になりました。 したがって、問題は、一部の製品が32ビットと64ビットのいずれかの拡張機能の1つのバージョンのみをインストールすることであるように思われます。 32ビットのシェル拡張機能は64ビットのwindowsエクスプローラーにロードできないため、これは正常です。その逆も同様です。その場合の解決策は、そのような製品ごとに、不足しているシェル拡張32/64ビットバージョンを見つけて、適切な環境にインストールすることです。