システムの「フォルダの参照」ダイアログをグローバルに変更できますか?


15

私の知る限り、誰もが「フォルダーの参照」ダイアログを嫌っています。

フォルダーの参照ダイアログ

このダイアログは常に小さすぎ、場所を覚えていることはめったになく、最悪なことです。面倒なツリー構造を使用してコンピュータ全体をナビゲートする必要があります。

さて、公平を期すために、いくつかの問題は、サイズやデフォルトのディレクトリなどを設定するのではなく、アプリがコントロールを呼び出す方法に関係する可能性があります。しかし、面倒なツリーコントロールに関する問題は残ります。

別のコントロールを使用するようにWindowsインストールをカスタマイズする方法はありますか?できれば安全に実行できるアプリ/インストーラーですが、互換性のあるDLLまたは同様の手法を使用しても問題ありません。

それとも、この恐ろしい制御に永遠にこだわっていますか?


苦情のほとんどは、それを使用するソフトウェアによって制御されるオプションです。変更するには、シェル全体を交換する必要があります。
ラムハウンド

1
ユーザーインターフェースの言い訳にはなりません。
aliteralmind 14

2
この恐ろしいUXは毎回私を悩ませます。
ライアン

回答:


1

短い答え、はい、あなたはそれにこだわっています

長い答え:

言及している関数は、Shell32.dllのSHBrowseForFolder()関数です。この関数は何千ものプログラムからリンクされて実行されるため、変更したいダイアログが必要な特定のプログラムを作成している場合を除き、shell32.dll(すべての意図と目的のために、このサイトの範囲外)。

関数のドキュメントは次のとおりです。http//msdn.microsoft.com/en-us/library/windows/desktop/bb762115%28v=vs.85%29.aspx

作成中のプログラム内で単純に変更する場合は、言語/プラットフォームの詳細を検索してチュートリアルを見つけてください(豊富です)。


2
ただ尋ねたかったのですが、少なくともパスをコピー/貼り付けできるので、わずかに使いやすいバージョンのダイアログがあります。それはカスタムダイアログですか、それともいくつかのパラメータを持つSHBrowseForFolder()自体ですか、それとも別の機能がありますか?
カラン

@Karan、私がドキュメントで見ているものから、UFLAGSが0x00000010に設定されているBROWSEINFOインスタンスのアドレスを指すように関数lpbi入力パラメータを設定すると、編集ボックスが表示されます。残念ながら、パラメータであるため、開発者のみがアプリごとに表示するかどうかを選択できます。
フランクトーマス

ありがとう、はい、BIF_EDITBOXフラグを設定する必要があるようです。「開発者のみがそれを表示するかどうかを選択できます」-もちろんです。私は、これがエンドユーザーがバイナリでやりたいと思っていたことを暗示していませんでした。
カラン
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.