HSPポータル
サイトマップ お問い合わせ


HSPTV!掲示板


未解決 解決 停止 削除要請

2009
1106
SOU1COMによるThumbs.db内の画像読み込み2解決


SOU1

リンク

2009/11/6(Fri) 03:37:44|NO.28710

HSPで可能かどうかも怪しいのですが……
http://hongliang.seesaa.net/article/36488102.html
こちらを参考にThumbs.dbから画像が読み込めるのではないかと思い
http://msdn.microsoft.com/en-us/library/bb773967(VS.85).aspx
こちらのソースを見てIID_IShellImageStoreやCLSID_ShellThumbnailDiskCache
あたりまでは辿り着いたのですが、

#define IID_IShellImageStore "{48C8118C-B924-11d1-98D5-00C04FB687DA}" #define CLSID_ShellThumbnailDiskCache "{1EBDCF80-A200-11d0-A3A4-00C04FD706EC}" #define IID_IPersistFolder "{000214EA-0000-0000-C000-000000000046}"
具体的にIPersistFolderをどう使うのかがよく分かりませんでした。
#usecomと#comfuncを使ってInitialize等を登録するのかと思ったりしましたが
そもそもメソッドindexの調べ方も分かりませんでした。
COMの知識が欠乏しているのがそもそもいかんとは思うのですが、
どなたかCOMに詳しい方がおられましたら
IShellImageStoreインターフェイスを使う為のヒント等
御教授頂けませんでしょうか?



この記事に返信する


SOU1

リンク

2009/11/9(Mon) 15:30:54|NO.28788

あっさり動いてしまって驚きました
ソースを参考に勉強させて頂こうかと思います
大変助かりました ありがとうございました

hbmpに返ってきているのはBMPのデータで
サムネイルの幅/高さはhbmpのヘッダ位置を読めば
取得出来る、という事で良いんでしょうか?

まだ試せてませんがお礼の報告だけ先にという事で……



SOU1

リンク

2009/11/9(Mon) 16:52:18|NO.28789


#func global GetObject "GetObjectA" sptr,sptr,sptr
を追加して

dim bitmap,6 GetObject hbmp,24,varptr(bitmap) w=bitmap(1):h=bitmap(2)
で幅/高さを取得出来ました。
本当にありがとうございました。



ONION software Copyright 1997-2023(c) All rights reserved.