CEditViewのシリアライズについて – プログラミング – Home

CEditViewのシリアライズについ...
 
通知
すべてクリア

[解決済] CEditViewのシリアライズについて


Hiro
 Hiro
(@Hiro)
ゲスト
結合: 24年前
投稿: 40
Topic starter  

MDIの簡単なテキストエディタを作成してるのですが、SerializeRawを使った保存や
読み込みができません。
デバッグで追跡してみたところ、LockBuffer等のハンドル(だと思うのですが)
にかかわる部分で誤ったデータが渡されているようです。
具体的には、

半角文字が最初にある場合は最初の1バイトのみ。
全角文字が最初にある場合は全角文字が終わるまで。

しか渡されないようです。
また読み込みでは完全に文字化けしてしまいます。

ドキュメントテンプレートの作成で

CMultiDocTemplate(IDR_MemoTYPE,
RUNTIME_CLASS(CMemoDoc),
RUNTIME_CLASS(CChildFrame),
RUNTIME_CLASS(CMyMemoView));

としサンプルのmultipadとほぼ同じコードにしても直りませんでした。

どこに問題があるのかまったくわからず困っています、よろしくお願いします。

Windows XP
VC++ .NET


引用未解決
トピックタグ
Hiro
 Hiro
(@Hiro)
ゲスト
結合: 24年前
投稿: 40
Topic starter  

自己レスです。

他の掲示板の過去ログで原因と解決方法がみつかりまして、

プログラムにマニフェストをつけてXP のビジュアルスタイルを使用して
CEditViewを使うと正常に動かない、

との事で、リソースエディタで、RT_MANIFEST配下にあるリソースを削除する
ことで正常に動くようになりました。
なぜそうなるのかまでは解りませんでしたが一応解決しました。


返信引用

返信する

投稿者名

投稿者メールアドレス

タイトル *

プレビュー 0リビジョン 保存しました
共有:
タイトルとURLをコピーしました