[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。
USERTYPE.datを置くフォルダ
file:///C:/Program%20Files/Microsoft%20Visual%20Studio%208/Common7/IDE/USERTYPE.dat
[おれのUSERTYPE.datの中身(ただのテキスト)]
USERTYPE.DAT
_TCHAR
BOOL
BYTE
CHAR
CONST
DWORD
FLOAT
FALSE
INT
LONG
size_t
SIZE_T
SSIZE_T
SHORT
TCHAR
TBYTE
TRUE
UINT
ULONG
USHORT
UCHAR
VOID
WORD
WCHAR
LONGLONG
ULONGLONG
こんな感じで任意のキーワードを記述して上記フォルダ内に置くと、指定キーワードが青くなる。
::TIFFGetField(tiffimg, TIFFTAG_XRESOLUTION, &m_dXres);
これdouble型でとったらおかしくなりました。
でも、float型でとったらうまくいったんだこれが!
1日ビットとか調べたりした割には大したことなかった。
単純にフォーマットの理解ができてなかったせいだ。
プログラムとは謎解きの連続であることを実感する。
だけど、こういう引っ掛かりがプログラムの嫌なところなんだ。
float(笑)
■libtiffの入手
http://www.remotesensing.org/libtiff/
[Latest Stable Release] → [Master FTP SiteMaster]から、
とりあえず最新版安定のzipをGET、解凍。
■libtiffのビルド
VCのコマンドプロンプトを立ち上げる。
・メニュー → Microsoft VisualStudio 2008
→ VisualStudio Tools → VisualStudioコマンドプロンプト
コマンドプロンプトでlibtiffフォルダに移動する。"nmake /f Makefile.vc all”を実行する。
・libtiff.lib
・libtiff_i.lib
・libtiff.dll
・libtiff.dll.manifest
すると、libtiffフォルダ内に、これらが生成される。
多分libtiff_i.libのほうがrelease用libだと思う。
VCに組み込んだ時、libtiff_i.libのほうを使わないと
なんだかエラーがたくさん出るので、
debugにはlibtiff.lib、releaseにはlibtiff_i.libを使用。
ライブラリファイルはdebug/releaseともに作られるが、
この手順で作成したdllファイルはRelease版である。
debug版が欲しいという場合は、nmake.optファイル117行目を変更する。
release:OPTFLAGS = /Ox /MD /EHsc /W3 /D_CRT_SECURE_NO_DEPRECATE
debug:OPTFLAGS = /Ox /MDd /EHsc /W3 /D_CRT_SECURE_NO_DEPRECATE
デフォルトではreleaseになっています。
■VCに組み込む
適当に「libtiff」フォルダでも作って、そこに以下ヘッダファイルをぶち込む。
libファイルも一緒に入れてしまえば管理が楽かもね。
・tiff.h
・tiffconf.h
・tiffio.h
・tiffvers.h
プロジェクト設定は下記のようにする。
・プロジェクトプロパティ→マニフェストツール→入力と出力
追加のマニフェストにlibtiff.dll.manifestを追加する。
・プロジェクトプロパティ→リンカ→全般
追加のライブラリディレクトリ(ディレクトリ分けした場合)に相対パスを記述。
・プロジェクトプロパティ→リンカ→入力
追加の依存ファイルに、debugはlibtiff.lib、releaseはlibtiff_i.libを記述。
・プロジェクトファイルがおいてある階層にlibtiff.dllとlibtiff.dll.manifestを置く。
・プロジェクトプロパティ→リンカ→入力
特定のライブラリの無視に、MSVCRT.libを記述。debugのみ。
競合するライブラリがあり,構成がアプリとライブラリで食い違っていると、
いらない警告が出てしまうが、これで消える。
これでビルド、実行ともにできると思う。
再配布するときに必要なDLLは下記にあったりする。
C:\Program Files\Microsoft Visual Studio 9.0\VC\redist\x86\Microsoft.VC90.CRT