ドキュメントのサムネイルを表示可能にするシェル拡張です.
i_SE_153.zip
Category: i_ShellExt
ドキュメントのサムネイルを表示可能にするシェル拡張です.
i_ShellExt 2017.04
ドキュメントのサムネイルを表示可能にするシェル拡張です.
また,対象ドキュメントがテキストの場合,内容の一部を表示します.
iShelExt.2017.04.10.zip
i_3DV 2015.10
3D データのビューアです.
AMF , VRML , AC3D , PLY ascii などへの対応を追加しました.
i3DV.2015.10.zip
i3DV.2016.11.zip
VC 12 x86 ランタイムが必要です.
3D model viewer 3MF , 3DS , AC , AMF , DAE , OBJ , WRL , X3D , ZAE , MQO , PLY , STL
i_ShellExt をインストールすると,エクスプローラでサムネイル表示が可能になります.
i_ShellExt 2015.10
2015/10/14
一部の環境で,explorer.exe が「応答なし」になる現象を確認.
2015/11/29
i_SE_146.zip
i_ShellExt 1.47.2015.12
テキストファイルの場合,infotip にその内容の一部を表示する様にしました.
Shell Extension dll Thumbnail
{00021500-0000-0000-C000-000000000046} {BB2E617C-0920-11d1-9A0B-00C04FC2D6C1}
i_ShellExt 2014.12
iShelExt.2014.12.09.zip
~.doc.emf などをサムネイルの対象に.
DocTh.exe に,emf をドキュメントフォルダにコピーする機能を追加.
i_ShellExt 未定義ドキュメントのサムネイルを表示可能に
DocTh 2013.12.07
i_ShellExt に含んでいる,ドキュメントに対するサムネイルを登録する exe です.
ドロップされた exe やドキュメントを記憶する様に変更しました.
Win 8 などで,デスクトップアプリケーションの起動に利用できます.
DocTh.2013.12.07.zip
i_ShellExt サンプル
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 を生成. ファイルの中身は特に意味はなし.ファイル名と保存日時をテキストファイルとして書込んでいる.
SmpTxt バグ
i_ShellExt のサンプルプロジェクト SmpTxt の SmpTxtDc.cpp のバグ
// …
else {
#ifdef _UNICODE
{
LPWSTR lpText = TextData.GetBuffer(rBuf.GetSize()+1) ;
memset(lpText,0,(rBuf.GetSize()+1)*2) ;
#if (_MSC_VER >= 1400)
size_t cnvSize = 0 ;
::mbstowcs_s(&cnvSize,lpText,rBuf.GetSize()+1,LPSTR(rBuf.GetData()),rBuf.GetSize()) ;
#else
::mbstowcs ( lpText, LPSTR(rBuf.GetData()),rBuf.GetSize()) ;
#endif
TextData.ReleaseBuffer() ;
}
#else
// …
#endif
}