3

Delphi 2005 から変換された Delphi XE2 で作成されたプログラムがいくつかありますが、Windows 7 では、デスクトップにショートカットを作成すると、恐ろしく縮小されたアイコンが表示されます。

IcoFX を使用して、通常の 4 つのサイズ (256、48、32、16) を含む新しいアイコンを作成し、プログラムを実行して、それぞれの [外観] タブに移動し、新しいアイコンをロードしました。

それらをすべて再構築した後、Windows エクスプローラーを大きなアイコン ビューに切り替えて、Bin フォルダー内のプログラムを調べましたが、新しい 256px アイコンが表示されるのは一部のプログラムのみであることがわかりました。他のものはまだ小さい 48px のものを示しています。

プロジェクトのオプションをもう一度確認しましたが、それらはすべて同じように見えたので、Resource Hacker を使用して EXE を調べました。それらのすべてには、サイズの異なる 1、2、3、4 という名前の 4 つのアイコンが含まれており、4 つのサイズすべてを含む MANICON リソースを含むアイコン グループがすべて含まれています。

そのため、大きなアイコンを正しく表示するものとそうでないものがある理由について、私は途方に暮れています。誰でもこれについて何か考えがありますか?

4

1 に答える 1

8

Windows がアイコンをキャッシュしているようです。すべての実行可能ファイルは、最初に表示されたときに Windows によってアイコンがキャッシュされるため、アイコンを変更しても、Windows はキャッシュされているため古いアイコンを引き続き表示します。

アイコンキャッシュをクリアする必要があります。これを行うには、次の場所にある隠しシステム フォルダにあるファイルを削除する必要があります。

C:\Users\User-Name\AppData\Local\IconCache.db

「User-Name」をユーザー プロファイル フォルダーのフォルダー名に置き換えます。これを削除したら、ログオフして再度ログオンするか、explorer.exeプロセスを強制終了/再起動する必要があります。これを行うと、すべてが正しく表示されるはずです。

于 2013-11-08T00:11:30.277 に答える