
KernelBase.dllについてお聞きしたいことがあります。
2013/11/1618:52:10
KernelBase.dllについてお聞きしたいことがあります。
プログラム初心者です。
cv::CalibrateCamera();を実装しようと思い、試しに下記のサンプルコードを動かしてみることにしました。
URL→https://github.com/daviddoria/Examples/blob/master/c%2B%2B/OpenCV/C...
私はopencv2.4.2とC++2010expressを使用しています。
インクルード部分(サンプルコードの1行目~8行目)を
#include "stdafx.h"
#include <opencv2/opencv.hpp>
#pragma comment (lib,"opencv_core242d.lib")
#pragma comment (lib,"opencv_imgproc242d.lib")
#pragma comment (lib,"opencv_calib3d242d.lib")
#pragma comment (lib,"opencv_highgui242d.lib")
#include <iostream>
#include <string>
#include <vector>
に書き換えました!(同サイトのsolvePnP.cxxというサンプルコードでも同様の書き換えで成功したので)
こうするとビルドは通るのですが、サンプルコードの50行目の cv::CalibrateCamera(); の位置で、
「 ハンドルされていない例外が発生しました: Microsoft C++ の例外: cv::Exception 」
というエラーらしきウインドウが表示され、
呼び出し履歴を見てみると
「 下のフレームは間違っているか、または見つかりません。kernelBase.dll に対して読み込まれたシンボルはありません。 」
と出ていました。
下のフレームというのはこのメッセージの下の欄に書いてあった
「 KernelBase.dll!75c9969b() 」
「 opencv_core242d.dll!005d60cc() 」
の事だと思われるのですが、これはどういったエラーなのでしょうか??
KernelBase.dllについて調べてみましたが、サイトからダウンロードしていれてみても解決できなかったという記述が多く見られました。
どのようにすれば解決できると思われますか???
ご教授いただけるととてもうれしいです!!
<(_ _)>
ベストアンサーに選ばれた回答
2013/11/1817:24:48
(1)このエラーは何?
これは確かに初心者の方には難しい。でも C/C++ ではよくあることなんですよね。早速ご説明しましょう。
「 下のフレームは間違っているか、または見つかりません。kernelBase.dll に対して読み込まれたシンボルはありません。 」
フレームって、いきなり専門用語ですね。スタックフレームのことでしょう。デバッガが表示する関数の呼び出し経路というのは、ある意味、想像を含んでいるわけです。当たらない場合もある。呼ばれている関数の仕様がよくわかっていると良いんだけど、そうでない場合は Visual C++ のデバッガとしても困る。で、どうもうまい具合に呼び出しの履歴を表示できていないのですよ、とほほ、という趣旨のメッセージを表示しているのです。
このようなメッセージが表示された場合、上級者は「読み込まれたシンボルはありません」に着目します。「シンボル」というのは簡単に言えば関数名。シンボルを加えてやれば良いのです。そのための操作法とかもありますけど、でもどうでしょう。初心者の方は混乱するだけかも知れないので、その説明は省略します。
それで、意味合いとしてはですね、このメッセージが出される以前に異常が起きていて、それについて詳しく掘り下げることが出来ませんでしたということです。だから、その前の
「 ハンドルされていない例外が発生しました: Microsoft C++ の例外: cv::Exception 」
が本当のエラー。そこに注意を払えばOKです。
(2)KernelBase.dllって何?
前述の通り、これは気にしなくて良いものなんだけど、でも気になるということがあるのでは?一応、簡単に説明しましょう。Windows の核(kernel)ですよ。大事なものがそこにたくさん詰まっているのです。Windows Vista までだったら、Kernel32.dll ということ。Windows 7 になって、関数の再配置が行われました。それまで Kernel32.dll に入っていた多くの機能が KernelBase.dll に引っ越したわけです。互換性のこともありますので kernel32.dll は残っていますよ。でも、実際の機能はそこに無くて、たいていの場合、KernelBase.dll 内の関数に飛んでいたりするのです。更にその先に、ntdll.dll というものが居るのですけどね。
え、ダウンロードなさったんですか?それは危険ですよ。お使いの Windows のバージョンに密接に絡んでいるものですから、異なるバージョンの KernelBase.dll を持ってきても混乱のもと。傷がさらに深くなってしまいますから。
(3)どうすれば解決できる?
サンプルコードということで、それ自体には、おそらく問題はないのでしょう。とすると、opencv の環境か。それとも…、デバッグ版のライブラリをインポートされているようですが(#pragma comment(lib, ...) の記述群で)、もしかしてリリース版でビルドしていたりしませんか?その辺の不整合があると、この種のエラーが発生します。
あと、思いつくものが無いのですけれども、ともかく KernelBase.dll についてはエラー事象とは無関係だというのを念頭に置いてデバッグをなさると良いというお話でした。
あわせて知りたい
- とあるexeファイルが動作? しなくなった件についての質問です。 先日使い心地...
- 「問題が発生したため、Internet Explorerを終了します。」 が頻発します。改善す...
- 突然、このような表示が出ました。 どのような症状で解決したら良いでしょうか?...
- あるソフトが急に起動できなくなって困っています。 エラー内容はこれです ロ...
- CSSで特定の部分にスタイルを反映させない方法 スタイルシートでHPを作っています...
- Every Little Thingのメンバー二人の間柄、関係を教えてください...
- VC++、ユーザーコントロールについておしえてください。 VC++で、windows...
- PCL (Point Cloud Library)の実行時に次のエラーが出ます http://www.pointcloud....
- kernel32.dllを置き換える方法ってありますか? アマレココやAviUtlを立ち...
- Visual studio 2013 professional で プログラムを書いてデバックを開始したら ...
- win10で、デュアルモニターにしています。 タスクバーのシステムアイコン(時計・...
- 引数がfloatへ変換できないというエラーが出ます。 重大度レベル コード 説明 プ...
- 最近PCを起動して、30秒位すると「runtime error 217 at 40032896」と表示される...
- リストボックスで選択した値を、サブフォームのクエリの抽出条件として使用したい...
- ワード2010が起動後に100%落ちるようになってしまいました。 2年位使用しているP...
- 私は貯金箱は意味が無いと思います。500円貯金とか特に無意味だと思います。なぜ...
- postgreSQLでバックアップしたデータをリストアする際、データが大きいと、「No b...
- Stopエラー コード 0x00000019の解決にみなさんの力を貸してください。 Stopエラ...
- Windows PEを使ったHDDのコピー(バックアップ)方法について Windows XPの...
- Excel VBAでCtrl+V(貼り付け)をCtrl+Bに変更するにはどうやればいいですか? C...
「KernelBase.dll、pragma comment」に関する質問
このカテゴリの回答受付中の質問
- visual studioを使用していますが、regionで指定した範囲を閉じたままにすること...
- python3.5のクラスについて質問です。 別ファイル(test.py)にBMIを測定する関...
- MediaElementの現在の再生位置をC#でスライダーに表示させたいのですが、どうすれ...
- c++ strange bank 下のコードが何をしているかわからないです。 解説していただ...
- Visual Studio 2017 のプロジェクトプロパティの Visual Studio ホスティング ...
- texに関する質問です。 texを走らせたところ次のようなエラーがでました。 -----...
- 今年の1月にあった2級情報技術検定の答えを教えてください。C言語です。
- ラズベリーパイ Windows 10 IoT Coreアプリ開発をしているのですが、配置エラーと...
- c++ ThePalindrome 問題は文字列sが与えられたとき、最小で何文字の回文にできる...
- Unityてやわらない少し固いスライム状の物体を作るのはどうすればいいですか?
このカテゴリの投票受付中の質問
- アルディーノで下記のプログラムを作成したいのですが、 うまく動かないので教え...
- 海外版サムスンnote9を使っているんですが、設定についての質問です。まず、 設...
- WinAPI クライアント領域を16:9の比率を保ちながらウィンドウのサイズ変更を...
- c言語の二分木のプログラムでSegmentation falt: 11が出ました。 printf("check\n...
- 現在、Windowsプログラミングを勉強中で、一つのソースファイルだけだと管理や書...
- directx12でのゲーム開発について。dx12でuwpゲーム作ろうと思って、いろいろやっ...
- c++ c 辞書式順序再び 下のコード16行目以下で何が行われているか教えてください...
- c/c++ のデバッカーで配列見ると先頭の値だけ表示されており、各々の値が閲覧でき...
- picマイコンについての質問です pic16f1939は命令長14bitなので、1ワードは14...
- C言語プログラムです。 void setup() { Serial.begin(9600); } void loop()...
この質問につけられたタグ
カテゴリQ&Aランキング
- 戻る
- 次へ
総合Q&Aランキング
Yahoo!知恵袋カテゴリ
お客様自身の責任と判断で、ご利用ください。

