Win32APIのWaitForSingleObject関数を使って、アプリケーションの終了を監視する際に、OpenProcessで取得したIDを使う場合に、ハマったので備忘録的な記事として投稿します。
カテゴリー: C++
Visual C++ 関連のネタ
Visual C++のOLEオートメーションへのアクセス
VC++からOLEオートメーション(COMの呼び出し)をする場合の手続きの話。 続きを読む Visual C++のOLEオートメーションへのアクセス
アプリケーションを正しく初期化できませんでした。[0xc000007b]
64ビット環境で自己実行可能形式(EXE)ファイルを実行した時に、「アプリケーションを正しく初期化できませんでした(0xc000007b)。[OK]をクリックしてアプリケーションを閉じてください。」というメッセージの話。 続きを読む アプリケーションを正しく初期化できませんでした。[0xc000007b]
プロジェクトのビルド構成で「操作を完了できませんでした。ポインターが無効です」が表示される
古いVisual Studioのコードをアップグレードした際に、テストで作成したような要らないビルド構成を削除する時に「操作を完了できませんでした」メッセージが表示される困った現象を解消した話。 続きを読む プロジェクトのビルド構成で「操作を完了できませんでした。ポインターが無効です」が表示される
C++で64ビットアプリケーションをビルド時のエラーメッセージを回避する
古いVisual Studioで作成したMFCプロジェクトを変換して64ビットアプリケーションをビルドした場合のエラーを回避する話。 続きを読む C++で64ビットアプリケーションをビルド時のエラーメッセージを回避する
MFCでアンマネージコードをマネージコードで使う場合
C++/MFCで作成したコード(アンマネージコード)を.NET Framework(マネージコード)で利用する場合には、プロジェクトの設定変更が必要になるという話。 続きを読む MFCでアンマネージコードをマネージコードで使う場合
CryptAcquireContextでエラー(NTE_EXISTS)が発生する場合
MicrosoftのCryptoAPIを利用する場合には、最初の手続きとしてCryptAcquireContext関数を呼び出して必要となる鍵ペアを取得するところから始まります。 続きを読む CryptAcquireContextでエラー(NTE_EXISTS)が発生する場合
C++からWebサービスに接続する
正味の話が、Visual StudioのC++プロジェクトのメニューで[Web参照の追加]ができるかという話。
VC++はVisual Studioのバージョンアップの度に「取り残された感」が強くて、C#やASP.NETのように出来ることが増えていくのではなく、制限されていく方向にあるのは間違いない。(VS2003.NETの時にはWebサービスのテンプレートがあったのにVS2005では、あっさり無くなってしまったり)
CFileFindでファイル一覧を取得
VBやC#だと、System.IO.Directoryクラスで簡単にできてしまうことがC++では一苦労ということが多々あります。大昔に作ったソースコードを掘り当てて、同じことをする処理を備忘録。
続きを読む CFileFindでファイル一覧を取得std::stringとCStringの変換
VC++(C++)を使っていく以上、避けて通れない文字列変換。とにかく型やクラスがが多すぎてキャストだけでは無理な場合が多い。今回は、CStringクラスとstd::stringでハマったので備忘録に投稿します。
続きを読む std::stringとCStringの変換