COMスレから紹介されてやってまいりました。どうか力をお貸しくだせえ。

[やりたいこと]
1. MFCアプリでHTMLファイルからHTMLドキュメントオブジェクトを作成。
2. そのオブジェクトにDOMのメソッドで変更を加える。
3. 変更結果をファイルに保存。

で,いくつか方法を試してみたのですがなかなかうまくいきません。

A. HTMLエレメントからIHTMLElement::GetouterHTML()で文字列を取り出して
CFileを使ってがりがり書く。
→モトのHTMLファイルのエンコーディング方法に合わせてエンコードしなくては
いけないので気が遠くなりそう。

B. HTMLドキュメントからIPersistFileを取得してSaveメソッドで保存。
→なぜか変更前の状態で保存される。

C. それならばともうひとつHTMLドキュメントをCoCreateInstanceして
モトからinnerText()で取得した文字列をwrite()で書きこむ。
→書き込み中にスクリプトエラー。onloadでしかスクリプトは呼ばれないはずなのに…。

D. じゃあこれでどうだとwrite()ではなくinsertAdjacentHTML()で
ドキュメントを複製してIPersistFile::Save()。
→insertAdjacentHTML()を呼ぶ前の状態で保存される。

E. ためしにIHTMLDocument2::execCommand( "SaveAs" )で保存。
→MSHTML.DLLからアクセスバイオレーションが飛んでくる。
ブラウザウィンドウが存在しないから?

というわけで万策尽き果てた気分です。どーにかならんでしょうか。
「こういうメソッドはどうよ?」くらいでもいいのでアドバイスもらえると嬉しいっす。