kanelab @ ウィキ
http://w.atwiki.jp/kanelab/
kanelab @ ウィキ
ja
2008-12-10T16:16:21+09:00
1228893381
-
C・C++典型処理テンプレート
https://w.atwiki.jp/kanelab/pages/18.html
#contents
*MFCにおける画像読み込みエラー処理
1.構文
char sHoge[40] = "画像名.jpg";
// エラー処理@画像がなかった場合
if( cvLoadImage( sHoge ) == NULL )
{
CString strData;
strData.Format("画像%sは存在しません。",sHoge);
AfxMessageBox(strData,MB_ICONSTOP);
}
else
{
m_iplImage = cvLoadImage( sHoge ); // エラーでなければここでm_iplImageに改めて読み込まれる
}
2.使用条件
(1)MFC、(2)IplImageの読み込み部分、(3)画像イメージがない場合があった
3.Link
[[メッセージボックスの使い方 その1(AfxMessageBox)>>http://www.dinop.com/vc/afxmessagebox.html]]
[[メッセージボックスの使い方 その2(AfxMessageBox)>>http://www.dinop.com/vc/afxmessagebox2.html]]
[[AfxMessageBoxを使う上での注意点>>http://m--takahashi.com/bbs/pastlog/08900/08807.html]]
[[AfxMessageBox の使い方>>http://m--takahashi.com/bbs/pastlog/A3100/A3096.html]]
[[考えのもとになったページ>>http://www.alpha-net.ne.jp/users2/uk413/vc/VCT_Exception.html]]
2008-12-10T16:16:21+09:00
1228893381
-
C・C++Debug日記3
https://w.atwiki.jp/kanelab/pages/17.html
#contents
*ブレークポイントがヒットしない
1.現象
必ず通る箇所にブレークポイントを置き、プログラムを実行させた途端に、ブレークポイントの赤く塗られた●マークが、 ただの赤線の○マークになり、○の中に「!」が表示されるようになった。
[[同じ>>http://rararahp.cool.ne.jp/cgi-bin/lng/vc/vclng.cgi?print+200607/06070045.txt]][[ような>>http://hpcgi1.nifty.com/MADIA/Vcbbs/wwwlng.cgi?print+200807/08070022.txt]][[現象が>>http://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?topic=2348&forum=7&9]][[たくさん>>http://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?topic=9660&forum=7]][[あるらしい>>http://forums.microsoft.com/msdn-ja/showpost.aspx?postid=2635378&siteid=7]]
[[最悪MS側のバグの可能性もある>>http://support.microsoft.com/default.aspx?scid=kb;ja;JP316447]]
2.解決方法
ツール→オプション→→デバッグ
で「元のバージョンと完全に一致するソースファイルを必要とする」のチェックボックスをオフにする。
3.Link
[[まったく同じ解決方法>>http://www.langedge.jp/blog/?&blogid=1&archive=2006-6-14]]
[[MSのバグ情報>>http://support.microsoft.com/default.aspx?scid=kb;ja;JP316447]]
[[掲示板1>>http://rararahp.cool.ne.jp/cgi-bin/lng/vc/vclng.cgi?print+200607/06070045.txt]]
[[掲示板2>>http://hpcgi1.nifty.com/MADIA/Vcbbs/wwwlng.cgi?pri
2009-01-20T13:54:15+09:00
1232427255
-
OpenCVDebug日記2
https://w.atwiki.jp/kanelab/pages/15.html
#contents
*cvcompat.hでC4819が出る
0.ErrorMessage
警告 4 warning C4819: ファイルは、現在のコード ページ (932) で表示できない文字を含んでいます。データの損失を防ぐために、ファイルを Unicode 形式で保存してください。 c:\program files\opencv\cv\include\cvcompat.h 784 Dialog
1.原因
保存形式の違い?
2.解決方法
改めて保存すればよい。cvcompat.h で一文字書いて消すなどの処理の後ビルドする。
3.Link
[[ChiharaLabにあった…>>http://chihara.naist.jp/opencv/?Visual%20C%2B%2B%202008%20Express%20Edition]]
[[cvcompat.hについて>>http://www.kotaete-net.net/Default.aspx?pgid=14&qid=160600965689]]
*gif画像が読み込めない
1.ErrorMessage
---------------------------
OpenCV GUI Error Handler
---------------------------
Bad argument (Array should be CvMat or IplImage)
in function cvGetSize, C:\User\VP\opencv\cxcore\src\cxarray.cpp(1453)
Press "Abort" to terminate application.
Press "Retry" to debug (if the app is running under debugger).
Press "Ignore" to continue (this is not safe).
---------------------------
中止(A) 再試行(R) 無視(I)
---------------------------
2.原因
仕様?かも
2008-11-26T18:04:48+09:00
1227690288
-
C・C++Debug日記2
https://w.atwiki.jp/kanelab/pages/14.html
#contents
*ダイアログベースのMCFでメインダイアログのIDを変えてしまった!
1.現象
エラーメッセージなし。デバッグ画面に飛ばされる。
デバッグでは
Question.exe の 0x78a5b4d9 (mfc90ud.dll) でハンドルされていない例外が発生しました: 0xC0000005: 場所 0xfefeff66 を読み込み中にアクセス違反が発生しました。
と書かれ、winmain.cppファイルの42行目の
pThread->m_pMainWnd->DestroyWindow();
部分が指定される。
2.原因
タイトル通りメインとなるダイアログのIDを誤って変更してしまった。
3.解決方法
もう一つダイアログベースのMFCプログラムをテンプレートから作成しIDの名前の傾向を確認した。IDの名前は
IDD_プロジェクト名_DIALOG
となっている模様。これを探し、選択するべし。
*Debug Assertion Failed!2
1.ErrorDialog
---------------------------
Microsoft Visual C++ Debug Library
---------------------------
Debug Assertion Failed!
Program: ...kolab\~~.exe
File: f:\dd\vctools\crt_bld\self_x86\crt\src\strftime.c
Line: 832
Expression: ( "Invalid format directive" , 0 )
For information on how your program can cause an assertion
failure, see the Visual C++ documentation on asserts.
(Press Retry to debug the application)
---------------------------
中止(A) 再試行(R) 無視(I)
---------------------------
2.現象
ビルドは通る。実行すると上記のダイアログ
2008-12-10T16:07:46+09:00
1228892866
-
OpenCVDebug日記
https://w.atwiki.jp/kanelab/pages/13.html
#contents
*"cv099.dllがない"と言われて動かない
1.原因
OpenCVのバージョン変更をプログラムが理解していない。
2.解決方法
(1)リンカの中間ファイルの削除
タスクバー→ビルト→ソリューションのリビルド
で中間ファイルを削除しプロジェクト全体をリビルドする。
(2)開発環境の再設定
開発環境を再起動させる。
*cvReleaseImageHeaderが誤動作する
1.エラーメッセージ
---------------------------
OpenCV GUI Error Handler
---------------------------
Unknown error code -49 (Deallocation error)
in function cvFree_, C:\User\VP\opencv\cxcore\src\cxalloc.cpp(129)
Press "Abort" to terminate application.
Press "Retry" to debug (if the app is running under debugger).
Press "Ignore" to continue (this is not safe).
---------------------------
中止(A) 再試行(R) 無視(I)
---------------------------
2.現象
Bumblebee2を使った連続処理(廊下・障害物検出)において
cvReleaseImageHeader( &DispImageH81D );
cvReleaseImageHeader( &iplDispImage );
と二つ関数が並んでいた時、デバック中上のcvReleaseImageHeader( &DispImageH81D );が動作すると下の&iplDispImageの中身がおかしくなる。で、その式を動作させると上記のエラーメッセージが出てくる。
&DispImageH81Dと&iplDispImageの順序を上下逆にすると下になったIplImageHeaderの値がおかしくなる。
3.原因
このプログラムは前回メモリリークによる連
2008-10-15T12:44:08+09:00
1224042248
-
C・C++Debug日記
https://w.atwiki.jp/kanelab/pages/12.html
#contents
*fprintfで画像のRGB値が格納されない
1.現象
fprintfでImage[R][G][B]を格納しようとすると「ハンドルされていない例外」が発生する。ビルドは通る面倒なタイプ。
2.原因
Image[R][G][B]の各値をcharで定義していたため?charの範囲は0~255まで(符号なしの場合)それ以上はオーバーロードされてしまう。
3.解決策
面倒だがintへ変換する必要がある。
*外部シンボルエラー@MFC
1.Error Message
エラー 1 error LNK2001: 外部シンボル "___argv" は未解決です。 nafxcwd.lib
2.意味・原因
今回はあらかじめ用意したライブラリ内の関数が使われていないので動作しないという意味?リンカの設定ミス。
3.解決方法
メニューバー→プロジェクト→~のプロパティ(ソリューションエクスプローラーから表示してもよい)→構成プロパティ→全般→プロジェクトの既定値→MFCの使用
で「スタティックライブラリでMFCを使用する」に変更する。
4.後日談
上記の変更によってビルド、実行共に問題なくできたが、再び「標準Windowsライブラリを使用する」に変更してもビルドが可能になってしまった。リビルドで中間ファイルを削除してもビルドできてしまった。なぜ?
5.Link
[[似たような解決方法>http://www.gac.jp/article/index.php?stats=question&category=8&id=8020&command=msg]]
[[外部シンボルエラーに関する記述(最下)>http://www.nitoyon.com/vc/reference/error.htm]]
[[あまり関係ない>http://rararahp.cool.ne.jp/cgi-bin/lng/vc/vclng.cgi?print+200203/02030078.txt]]
*もらったプログラムのエントリポイントが見つからない
1.現象
池田さんからシミュレーションのプログラムをもらったけど、「main」も「_tmain」も「WinMain」も見つからない。どこから始まったのかわからん!!
2.原因
MFCを使って作られたプロ
2008-10-15T12:41:43+09:00
1224042103
-
プラグイン/コメント
https://w.atwiki.jp/kanelab/pages/11.html
* コメントプラグイン
@wikiのwikiモードでは
#comment()
と入力することでコメントフォームを簡単に作成することができます。
詳しくはこちらをご覧ください。
=>http://atwiki.jp/guide/17_60_ja.html
-----
たとえば、#comment() と入力すると以下のように表示されます。
#comment
2009-06-07T18:52:57+09:00
1244368377
-
プラグイン/関連ブログ
https://w.atwiki.jp/kanelab/pages/10.html
* 関連ブログ
@wikiのwikiモードでは
#bf(興味のある単語)
と入力することで、あるキーワードに関連するブログ一覧を表示することができます
詳しくはこちらをご覧ください。
=>http://atwiki.jp/guide/17_161_ja.html
-----
たとえば、#bf(ゲーム)と入力すると以下のように表示されます。
#bf(ゲーム)
2008-10-14T19:42:18+09:00
1223980938
-
プラグイン
https://w.atwiki.jp/kanelab/pages/9.html
@wikiにはいくつかの便利なプラグインがあります。
-----
#ls
-----
これ以外のプラグインについては@wikiガイドをご覧ください
=>http://atwiki.jp/guide/
2008-10-14T19:42:18+09:00
1223980938
-
プラグイン/動画(Youtube)
https://w.atwiki.jp/kanelab/pages/8.html
* 動画(youtube)
@wikiのwikiモードでは
#video(動画のURL)
と入力することで、動画を貼り付けることが出来ます。
詳しくはこちらをご覧ください。
=>http://atwiki.jp/guide/17_209_ja.html
また動画のURLはYoutubeのURLをご利用ください。
=>http://www.youtube.com/
-----
たとえば、#video(http://youtube.com/watch?v=kTV1CcS53JQ)と入力すると以下のように表示されます。
#video(http://youtube.com/watch?v=kTV1CcS53JQ)
2008-10-14T19:42:18+09:00
1223980938