it-mure.jp.net

HKCRでは、コンテキストメニュー構成のディレクトリとフォルダの違いは何ですか

SO( 特定の場所でcmdウィンドウを開くにはどうすればよいですか? )でこの質問をフォローアップします)Open CommandPromptを追加する効果的な方法を探していますここにコンテキストメニューへのショートカットがあります。さまざまなソリューションがHKCR\Folderにエントリを追加することを提案し、他のソリューションはHKCR\Directoryにエントリを追加することを提案しています。

この質問( Directory Vs. Folder )に基づくと、ディレクトリは常に「実在」であるのに、フォルダは仮想であるかどうかは不明です。ベン図では、フォルダが大きな円になり、ディレクトリがフォルダの円で完全に囲まれた小さな円になります。

コマンドプロンプトのために、おそらく「実際の」フォルダまたはディレクトリのみを扱っていると想定するのは正しいですか?

質問は次のとおりです。仮想ディレクトリでコマンドプロンプトウィンドウを開くことはできますか。また、これを行う理由として考えられるものは何ですか。コンテキストメニュー項目をHKCR\Folderにのみ追加すると、すべてのベースがカバーされ、次に一部がカバーされますか? HKCR\Directoryにのみコンテキストメニュー項目を追加すると、いくつかの項目が欠落することになりますか?

最後に、ブラウニーポイントについて:フォルダアイコンではなくフォルダ内をクリックしてコマンドプロンプトを開くためのエントリを追加できるようにするにはどうすればよいですか?この機能を取得するには、どのコンテキストメニュー項目を使用する必要がありますか?

6
music2myear

私がそれをした最善の方法は、Openコマンドプロンプトをすべてのオブジェクトに追加することでした。開くコマンドPromptは作業ディレクトリ(cmd/k pushd%d ")を渡し、右クリックしたオブジェクトの作業ディレクトリでコマンドPromptを取得します。

ほとんどの場合、仮想フォルダーでコマンドプロンプトを開くことができます。しかしそれは異なります。たとえば、DFSフォルダはUNCでコマンドプロンプトを返します。ただし、検索フォルダー内のオブジェクトに対してコマンドプロンプトを取得しようとすると、オブジェクトの実際の場所が取得されます。

編集:

背景を右クリックしたときにコマンドプロンプトを表示するには、シェル拡張機能を作成する必要があります。また、Microsoftが主張しているためシェル拡張はネイティブコードで記述されています!me :(シェル拡張メニューのMSDNを参照してください。

http://msdn.Microsoft.com/en-us/library/cc144067(v = vs.85).aspx

または、次のプログラムをダウンロードすることもできます:Context Console ShellExtension。

http://code.kliu.org/cmdopen/

3
surfasb

おまけの質問について:変更できるレジストリキーはありません。インストール ContextConsole その機能を取得します。この場合、フォルダの背景をクリックするとオブジェクトが選択されていないため、シェル拡張が必要です。

その他の質問の場合:ファイルシステム内の実際のフォルダー(例:FontsまたはStart Menu)に支えられている場合は、コマンドプロンプトで仮想フォルダーにCDを挿入できます。純粋な仮想フォルダ(例:Control Panel)にはファイルシステムパスがないため、CDに接続する方法はありません。

PowerShellは名前空間の拡張をサポートし、場所をレジストリパスに設定するなどの操作を実行できます。

PS C:\> Set-Location HKLM:\Software\Classes\Directory
PS HKLM:\Software\Classes\Directory> Get-ChildItem


    Hive: HKEY_LOCAL_MACHINE\Software\Classes\Directory


SKC  VC Name                           Property
---  -- ----                           --------
  2   0 Background                     {}
  0   1 DefaultIcon                    {(default)}
  2   1 Shell                          {(default)}
  4   0 shellex                        {}

RegキーをHKCR\Directoryに追加する場合、それらを表示する必要がある場合はHKCR\Driveにも追加し、ドライブのルートフォルダも取得します。

1
afrazier