10月にWindowsの大幅なアップデートがあったと思うのですが
それ以降、自作のソフトの調子が悪く VisualStuio 2013 で悪戦苦闘しております。
アプリでの症状は「印刷後」上書き保存をすると「引数が違います」
とのエラーダイアログが表示されます
印刷をしなければ上書きしてもエラーダイアログはでません
この状態をVisual Studio 2013 でデバッグして行きますと
このアサート終了です。
MFCの filelist.cpp の221行目なのは分かります
MFCの filelist.cpp の抜粋です
問題は関数
CRecentFilelist::Add(LPCTSTR lpszPathName, LPCTSTR lpszAppID)
内の217行目の
hr = _AfxSHCreateItemFromParsingName(なんちゃら)
で hr が正常値ではないので 次の
ENSURE(SUCCEEDED(hr));
でアサートします
印刷を実行しなければアサートしない・・・
なんでだろ?
名前を付けて保存なら問題ありません
OnfileSave() をオーバーライドしても最終的には
この関数が呼ばれるのでアサートします
だれもこんな症状でてないのかな?
とっても不思議です。
分かる方がいましたら教えてください。
どうしても解決できないので
ここを通らない方法を考えました
ユニコード対応に書き直してビルドし直そうと思ってます
UTF化も結構大変です、エラー出まくりで
ひとつひとつつぶして行くしかありません
印刷しなけりゃ実害ないし、保存は出来てるし
もう投げたくなってきた!

