i_ShellExt (サムネイル表示する DLL )を利用するためのサンプルプロジェクトです.
i_ShellExt と組み合わせて利用します.
ISE.2013.11.09.zip
VS 2005 のプロジェクトで,C# や VB.NET のサンプルがあります.
EMF を求めるための関数は,クラスライブラリとして利用しています.
VS 2005 やそれ以降の VS で,ビルド可能になっていると思います.
SmpCS(C# による iShelExt.dll の利用)の説明
参照の追加で,Lib_ISE.dll を追加(Lib_ISE.ise.GetPathEMF を利用しない場合は必要なし). フォームに 2 つのボタン,「開く」と「保存」を追加.Open と Save に. OpenFileDialog と SaveFileDialog を追加. Form1_Load , From1_Paint , Open_Click , Save_Click を追加. Form1_Load 縮小表示を有効にするために ShellEx\\{BB2E617C-0920-11d1-9A0B-00C04FC2D6C1} を登録. 拡張子は,ise_cs としている. Form1 クラスに,変数 NameEMF を追加. このサンプルでは,Form1_Paint で EMF を表示する様にしているため. Form1 クラスに,CreateEMF 関数の追加. ドキュメント名から対応する EMF 名を求める. ドキュメント名.EMF とする場合は,Lib_ISE.dll は必要ない. SmpCP (C++ 版) では,Lib_ISE.dll は利用しないで,ドキュメント名.EMF としている. ファイル名と,更新日時の文字列のメタファイルを生成している. 文字の色は,時分秒を R , G , B として利用している. Form_Paint NameEMF にファイル名があれば,それを表示. Open_Click 「開く」ダイアログを表示し,ファイルが指定されると上の CreateEMF を呼び出し. このサンプルでは指定されたファイルを開いてはいない. Save_Click 「保存」ダイアログを表示し,ise_cs を生成. ファイルの中身は特に意味はなし. ファイル名と保存日時をテキストファイルとして書込んでいる.