VC++

C/C++

VC++のデバッグビルドで動作するコードがリリースビルドで動作しない件

VC++で、デバッグ構成でビルドしたプログラムでは動作するコードがリリース構成でビルドすると動かないよ?ということが稀にある。これはVC++の最適化によるものかもしれない。例えば、次のコード。void func() { int a; a =...
C/C++

MFC のボタンをマウスオーバーでイメージ切り替えできるようにする

MFC の CButton を継承して、マウスオーバーでイメージが切り替わるボタンをつくってみる。
C/C++

MFC で OnPaint をオーバーライド

MFC の CWnd を継承したクラスでカスタム描画処理を書きたい場合は、 OnPaint() (WM_PAINT のメッセージハンドラ) をオーバーライドするのだけど、 これを派生クラス側でオーバーライドすると、既定の描画処理が動かなくな...
C/C++

VC++ で文字列 → 日付変換

sscanf() で数値拾って CTime とかに突っ込むか? とか考えてたけど、文字列から一発で日付型に変換する方法があった。 const CString strDate = _T("2011/02/01 00:00:00"); C...
C/C++

クラスを他のクラスのメンバにすると C2079 エラー

VC++ で、例えば次のような書き方をしたとする。 class Test2;// 宣言 class Test1 { public: Test1(); ~Test1(); Test2 m_test2; // ← Test2 をメンバに持たせ...
C/C++

LoadLibrary が失敗する原因

Win32でDLLを明示的ロードするとき、LoadLibrary API関数を使用するのだけど、この引数に渡すDLLファイルのパスが正しいにも関わらず失敗(戻り値 0)することがある(フルパスで指定しても失敗する)。 引数に渡したDLLが...
C/C++

Visual C++ で作った DLL でメモリリーク

Visual C++ 2010 で MFC 拡張 DLL を作成して、同じく VC++ で作成した MFC アプリケーションからロードするとメモリリーク(解放漏れ)することがある。 DLL では特に何も処理していない。ウィザードで作成され...
C/C++

VC++2010 の R6034 エラー

VC++2010(Visual Studio 2010)で、以前のバージョンのVC++でつくられたDLLをリンクして起動すると、R6034というランタイムエラーが出ることがある。...というか出た。 状況としては、DLLとそのlibがあり...
C/C++

デバイスコンテキストの内容をファイルに出力する方法

いわゆるスクリーンショットを撮るみたいなもの。 void SaveBitmap(HDC hdc, DWORD dwWidth, DWORD dwHeight, LPCTSTR lpszFn) { DWORD dwSize,dwFSize,d...
タイトルとURLをコピーしました