none
SHGetFileInfoでFTPサーバ側のアイコンとファイル種別を取得する方法について RRS feed

  • 質問

  • C++でFTPクライアントを作っていますが、FTPサーバに接続後にサーバ側のカレントディレクトリ内のサブディレクトリ、ファイルをリストコントロールにアイコン及びファイル種別を表示するようにしたいのですが、クライアント側(マイコンピュータ)ではSHGetFileInfoで取得することはできたのですが、サーバ側は取得できません。どのようにすれば出来るでしょうか。
    2012年7月24日 10:48

回答

  • 単純に「拡張子」だけを渡せば取得できませんか?

    なお、クライアント側に登録されていない or 登録が異なる、サーバー側に登録されている拡張子情報(アイコン・説明)、サーバー側に配置されている exe のアイコン、サーバー側の画像のサムネイルは、取得できません。
    これらを取得したいのであれば、一度ダウンロードするしか手がないので、仕様として切った方がよいと思います…。(サーバー側の拡張子情報はダウンロードしても手に入りませんが…)

    2012年7月24日 13:59
    モデレータ
  • ついでに言うと、Visual Studioの.slnのようなファイルの中身に応じでアイコンが変化する(中身を見て対応するVisual Studioのバージョンのアイコンを表示する)場合も同様に取得できません。普段とは異なるアイコンが表示されることでしょう。

    Windows ExplorerもFTPクライアントになれますから、どのようなアイコンが表示されるのか参考にするといいかと。

    • 回答の候補に設定 山本春海 2012年7月31日 8:31
    • 回答としてマーク 山本春海 2012年8月2日 9:07
    2012年7月25日 0:04

すべての返信

  • 単純に「拡張子」だけを渡せば取得できませんか?

    なお、クライアント側に登録されていない or 登録が異なる、サーバー側に登録されている拡張子情報(アイコン・説明)、サーバー側に配置されている exe のアイコン、サーバー側の画像のサムネイルは、取得できません。
    これらを取得したいのであれば、一度ダウンロードするしか手がないので、仕様として切った方がよいと思います…。(サーバー側の拡張子情報はダウンロードしても手に入りませんが…)

    2012年7月24日 13:59
    モデレータ
  • ついでに言うと、Visual Studioの.slnのようなファイルの中身に応じでアイコンが変化する(中身を見て対応するVisual Studioのバージョンのアイコンを表示する)場合も同様に取得できません。普段とは異なるアイコンが表示されることでしょう。

    Windows ExplorerもFTPクライアントになれますから、どのようなアイコンが表示されるのか参考にするといいかと。

    • 回答の候補に設定 山本春海 2012年7月31日 8:31
    • 回答としてマーク 山本春海 2012年8月2日 9:07
    2012年7月25日 0:04