static LRESULT wndproc(HWND w, UINT message,WPARAM wParam,LPARAM lParam,LPVOID arg){
    switch(message){
        case TWM_COMMAND:    {
            HTEXT text = w.v.text;// 対象になるテキスト
            vcmdpre(w.v);
            BOOL ret = FALSE;
printf("cmd=%d\n", wParam);
            switch(wParam){
                case 1182523096: //ID_OPEN:
                {
                    printf("opened: %s\n", text.clm_fname);
                    break;
                }
               
                case ID_SAVE: {
                    ret = save(text);
                    printf("saved: %s\n", text.clm_fname);
                    break;
                }
            }
            vcmdpost(w.v, ret?wParam:0);
            return ret;// 0(FALSE)以外を返すと標準のコマンド処理はスキップされます。
このプラグインを組みこんでファイルを開いて保存すると
cmd=1182523096
loaded: C:\test.txt
cmd=1182523096
loaded: C:\test.txt
cmd=888557
saved: C:\test.txt
となって二度開かれるメッセージが飛んでくるのはなぜ?
1182523096 から ID_XXX を割り出すのはどうやるの?