問題タブ [shell-extensions]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
windows - シェル拡張機能はWindowsエクスプローラーでは機能しませんが、他のプログラムでは機能しますか?
「本による」ATLを使用してシェル拡張(、、、&の実装IContextMenu
)をIShellExtInit
作成しました。IExtractIcon
IPersistFile
面白いことに、「TotalCommander」や「FreeCommander」などの一部のファイルマネージャーではすべてが良好ですが、Windowsのエクスプローラーでは完全に失敗します。
TC( "Total Commander")で登録済みのファイル(たとえば)を右クリックすると*.000
、拡張機能が機能します。ログとコンテキストメニューに表示されます。アイコンの付いたエントリが表示されます。
しかし、Win-Explorerを使用しても、何も起こりません。ログエントリは表示されず、コンテキストメニューに証拠はありません-何もありません!PCを完全に再起動しても役に立ちません。
もちろん、エクスプローラーのキーShellEx\MyX\ContextMenuHandlers
とキーを登録しましたが、それらはすべて私のを指しています。私はWindows7を使用しています。ShellEx\IconHandler
...\Shell Extensions\Approved\
CLSID
ここで何が恋しいですか?
windows - すべてのファイル(*。*)のエクスプローラーにメニュー項目(右クリックメニュー)を追加するにはどうすればよいですか?
Winrarをインストールし、ユーザーがファイルを右クリックすると、「アーカイブに追加...」という新しいMuneアイテムが存在します。
私のアプリケーションでこれをどのように行うことができますか?
windows - シェル拡張機能が原因でプログラムがクラッシュする可能性はありますか?
私の会社では、Windows XP で動作する MFC アプリケーションを構築しています。ユーザーがログ ファイルを保存できるようにコモン ファイル ダイアログを開くと、このアプリケーションでクラッシュが発生するという報告が、お客様の 1 人から報告されています。
どの統合システムでも、このクラッシュは確認されていません。顧客は、プログラムがアドレス 160b2d48 でアクセスできないメモリから読み取ろうとしていることを示すクラッシュ ダンプを提供してくれました。アドレスは、そのすぐ上と下にロードされた DLL (15dc0000-16085000 および 160c0000-1611b000) があるため、アドレス空間のコード セクションからのもののように見えますが、そのアドレスには何もロードされていません。クラッシュしたスレッドのスタックは次のとおりです。
このスタックにはアプリケーションからのコードはなく、上記の証拠と組み合わせると、アプリケーションが [保存] ダイアログを表示するときにシェル拡張機能 (スタック トレースを考えると、おそらく情報ヒント ハンドラー) が呼び出されるためにクラッシュが発生するのではないかと思いますが、何らかの理由でプロセスに読み込まれません。
- 私の仮説は妥当ですか?
- もしそうなら、責任のあるシェル拡張を追跡するにはどうすればよいですか?
c# - 画像ファイルのデフォルト プロパティ ウィンドウにタブを追加する
Windows 7で画像ファイルのプロパティダイアログにタブを追加したい。
多くの家族の画像があり、各画像の詳細をウィンドウのプロパティのタブで確認したいです。
「カメラ モデル」、「撮影日」などの詳細は、ペルシャの日付で表示されます。
これはどのように行うことができますか?
c++ - Windons Shell Extension "Property Description Schema" ファイルの正しいエンコーディングは何ですか?
Windows シェル拡張機能、特にファイルのプロパティに必要なコードを作成するために使用しているライブラリ パッケージがあります。プロジェクトで Unicode ファイルとテキストをサポートする必要があるため、プロジェクトを Unicode サポートでコンパイルしますが、dll を regsvr32 に登録すると、ライブラリ パッケージは .propdesc ファイルを自動生成しますが、ファイルを次のように書き出すように見えます。 UTF-16。これを行うと、プロパティがインデクサーに正しく登録されていないように見えます。ただし、dll を Unicode ではなくマルチバイトとしてコンパイルすると、このファイルは ASCII エンコーディングで書き込まれ、登録されます。
.propdesc ファイルは "UTF-8" というヘッダーを持つ XML ドキュメントであるため、エンコーディングは UTF-8 でなければならないと思いますが、Windows が常にこの考えを尊重するとは限りません。インデクサーが UTF-16 の Property Description Scheme ファイルを受け入れるのか、それとも UTF-8/ASCII でエンコードされたファイルのみを受け入れるのか、誰にもわかりませんか?
visual-studio - TFS パワー ツール シェル拡張アイコン オーバーレイが、ソース管理下にないファイル/フォルダーに表示される
Visual Studio 2010 Professional で Windows XP Professional SP3 を実行しています。最近、最新バージョンの TFS パワー ツールをインストールしました。ちょうど今、シェル拡張機能のアイコン オーバーレイが、ログ ファイル、bin、デバッグ、リリース フォルダーなどのソース管理下にないものを含む、チーム プロジェクトのマップされたフォルダー内のすべてのファイル/フォルダーに表示されることがわかりました。
これらのフォルダーを右クリックすると、TFS コンテキスト メニューが表示されます。しかし、履歴を表示しようとすると、アイテムが「ワークスペースに見つからないか、アクセスする権限がありません」というエラー メッセージが表示されます。
同じ TFS サーバーに接続されている別の PC を使用しました。同じチーム プロジェクトをローカル フォルダーにマップしました。シェル拡張アイコンのオーバーレイに問題はありません。ソース管理下にないファイル/フォルダーは、TFS オーバーレイなしで表示されます。
誰でもこれを解決する方法を知っていますか?
c++ - Windows7統合による名前空間拡張の記述
シェル拡張のトピックは初めてで、名前空間拡張に関するリソースを探しています。エクスプローラーでFTPのように参照するためのすべてのオプションを備えたSFTPをサポートする名前空間拡張機能を作成したいと思います。
codeprojectからzengxiの例1、2を読みましたが、正しくコンパイルされず、古いようです。アドレスバーでのフォルダ選択など、多くの変更があったと思います。
誰かが私に正しい方向のいくつかのリソースまたはいくつかの実用的な例を提供できますか?
更新: ソースが無料であることが重要です。これは非営利プロジェクトです。
現時点では、MSDNでExplorer DataProviderSampleという優れたソースを見つけました。これは最新であり、いくつかのエイリアスExplorer Data Provider
とを提供しますShell Data Source
。まだ欠けているのは、ドロップアンドドラッグのサポートとプロトコルリンクをサポートするための接着剤です。
shell data source
将来の使用のために、ファイル拡張子をzipファイルのようなものに関連付ける方法を見つけるのは素晴らしいことです。
c++ - 仮想ファイルへのプロパティの追加
このサンプルに基づいてエクスプローラーデータプロバイダーを開発しています。ドラッグアンドドロップのサポートをすでに追加しました。ここで、ファイルとフォルダーをfiletyp、サイズなどで並べ替えることができます。問題は、スクリーンショットに表示されているように、仮想ファイルにはnameプロパティしかないようです。
コンテンツを並べ替えるためにプロパティまたは列を追加するにはどうすればよいですか?
c++ - C++ でシェル拡張を作成するには?
これはよくある質問のように思えましたが、検索を行った後、実際に答えを見つけることができませんでした. ここにこれに関する記事があります:
http://www.codeproject.com/KB/shell/shellextguide1.aspx
ただし、これは非常に古いバージョンの Visual Studio 用です。私は VS 2008 を使用しているため、指示とインターフェイスが表示されているものと一致していないようです。
C++ を使用して、拡張子が .GZ のファイルのコンテキスト メニューを作成する単純なシェル拡張機能を作成したいと考えています。これらのファイルを右クリックすると、コンテキスト メニュー項目をクリックして、そのファイルに対して何らかの操作を行うためのコールバックをコードに含めることができるはずです。
他のコンテキスト メニュー項目は、なんらかのアクションを実行する前にユーザー入力を受け入れるために modless ダイアログを生成するようなことを行います。
私が見たところ、これには ATL が使用されていますが、ATL を使用したことがないため、すべてのオブジェクト タイプとインターフェイスが非常にわかりにくくなっています。読むべき適切なチュートリアルやドキュメントがあれば、それほど悪くはありません。
誰でも私を助けることができますか?10年以上前のチュートリアルはありませんか?