[スレッド全体]

2014/5/13 (火) 18:25:12 LR4  
Mozilla/5.0 (Windows NT 6.1; rv:29.0) Gecko/20100101 Firefox/29.0
[2177] Re6:不具合:「開きません」のキャンセルが存在しません
[trunk2_VMessageBoxF_fix_c.patch]
19行目: STR_BACKUP_ERR_DELETE は STR_BACKUP_ERR_MOVE の誤りではないか?
45行目: pszMsg は LS マクロで取得したポインタなのにローカルコピーしていない
→ ここまでチェックしたところで中断(他にパッチ不足とかの問題もあるかもです)。

この様子だと、労力も過多ですし将来のミス防止も難しいかな?と思いました。
次に、費用対効果が高そうな代替案パッチを貼っておきます。
採用の可否についてはお任せします。

【代替案の説明】
[MessageBoxF.h]
マクロ MessageBox は MessageBoxA/W ではなく Wrap_MessageBox に
展開するように変更

[MessageBox.cpp]
Wrap_MessageBox() は タイトル/メッセージをローカルバッファに
コピーし、明示リンクで MessageBoxA/W を呼び出す。

MessageBoxF.h は StdAfx.h に入っているので、すべての .cpp で
MessageBox が Wrap_MessageBox に展開されます。
メッセージボックス表示がすべて Wrap_MessageBox 経由になるため、
これでビルドした sakura.exe を Dependency Walker で確認すると、
USER32.dll の MessageBoxA/W への暗黙リンクは無くなっているはずです。

[▼次のスレッド]
INCM/CMT
Cyclamen v3.81
[ut:0.000][st:0.000]