この横にはアイコンを表示することが可能になっています。これを行うには、TreeView_SetImageListでイメージリストを設定します。iImage);hwndTVは、ツリービューのハンドルを指定します。himlは、イメージリストのハンドルを指定します。iImageは、イメージリストのタイプを指定します。通常は、TVSIL_NORMALを指定します。今回のプログラムは、ツリービューにイメージリストを設定します。作成するツリーは、カレントディレクトリに存在するファイル群を基にしています。必要なアイコンは各種ファイルのアイコンになります。SHGetFileInfoにSHGFI_SYSICONINDEXを指定することで取得できます。SHGFI_SMALLICONは小さいアイコンをイメージリストに格納することを意味しています。取得したシステムイメージリストはTreeView_SetImageListに指定します。今回のInsertTreeItemでは、カレントディレクトリのファイルを走査しながらアイテムの追加を行っています。&findData));FindClose(hFindFile);}GetCurrentDirectoryでカレントディレクトリのパスを取得したら、\*という文字列を終端に連結します。これは、FindFirstFileを呼び出すために必要な作業です。これをFindNextFileに指定することで指定ディレクトリのファイルを走査できるようになります。if文によってこれらは考慮しないようにしています。maskにTVIF_IMAGEとTVIF_SELECTEDIMAGEを指定しています。これにより、アイコンのインデックスを表すiImageと、選択されたアイコンのインデックスを表すiSelectedImageが考慮されるようになります。後者のアイコンのインデックスを取得するには、SHGetFileInfoにSHGFI_OPENICON指定することになります。