タグ

ブックマーク / cjohn.hatenadiary.org (2)

  • ミューテックスによる2重起動防止の罠 - Dive to the Software

    Windowsでプロセスの二重起動の防止にはミューテックスが使われます。 サンプルなどをみると簡単なのですが、意外とハマる罠があるので注意しましょう。 ちなみに以下のサンプルコードはVC2008で試しています。 罠1:OpenMutexしてはいけない #include <windows.h> #include <tchar.h> #include <stdio.h> #include <locale.h> //_tsetlocale用 #include <conio.h> //getch用 int _tmain(int argc, _TCHAR* argv[]) { _tsetlocale( LC_ALL, _T("Japanese") ); //_tprintfで日語を表示させるために必要 HANDLE hMutex = ::OpenMutex(MUTEX_ALL_ACCESS, FA

    ミューテックスによる2重起動防止の罠 - Dive to the Software
    replication
    replication 2014/03/14
    ミューテックスの使い方
  • VC2012 Expressで静的コード分析 - Dive to the Software

    ようやくVC2012 Expressをインストールしました。 正式名称でいうと、「Microsoft Visual Studio Express 2012 for Windows Desktop」。 長いです。 VC2012からは無償のExpressでもコード分析できるというとこで使ってみました。 サンプルはこんなコード(※ファイル名がvc2010.cppなのはちょっとしたミス) int _tmain(int argc, _TCHAR* argv[]) { int a[5]; int b = a[5]; return 0; } やりかたは「ソリューションを右クリック」→「ソリューションでコード分析を実行」を選ぶだけ。 とても簡単です 結果は「コード分析」ウィンドウにでます。 項目をクリックすると詳細がでます。 VC2010+WindowsSDKによる分析との最大の違いはメッセージが日語に

    VC2012 Expressで静的コード分析 - Dive to the Software
  • 1