オブジェクトのコピーを指定したファイルに保存する。
IPersistFile_Save this, pszFileName, fRemember
this : [comobj] IPersistFile インターフェースの COM オブジェクト変数 pszFileName : [wstr] オブジェクトが保存されるファイルの絶対パス。pszFileName が NULL の場合、オブジェクトは現在のファイル(存在する場合)にデータを保存するべきである。 fRemember : [int] pszFileName パラメーターを現在の作業ファイルとして使用するかどうかを示す。TRUE の場合、pszFileName が現在のファイルとなり、オブジェクトは保存後にダーティフラグをクリアするべきである。FALSE の場合、この保存操作は「コピーを別名で保存...」操作である。この場合、現在のファイルは変更されず、オブジェクトはダーティフラグをクリアするべきでない。pszFileName が NULL の場合、実装は fRemember フラグを無視するべきである。
(プラグイン / モジュール : com_misc.dll)
オブジェクトのコピーを指定したファイルに保存する。 [戻り値] オブジェクトが正常に保存された場合、戻り値は S_OK。そうでなければ S_FALSE。このメソッドはさまざまなストレージエラーを返すこともある。 [備考] このメソッドは 3 通りの方法で指定したファイルにオブジェクトを保存するために呼び出せる。 実装者は呼び出し側が要求している保存操作の種類を判断しなければならない。pszFileName パラメーターが NULL の場合は Save が要求されている。pszFileName パラメーターが NULL でない場合、fRemember パラメーターの値を使って Save As と Save a Copy As を区別する。Save または Save As 操作では、IPersistFile::Save は保存後に内部ダーティフラグをクリアし、任意のアドバイザリ接続に IAdviseSink::OnSave 通知を送る(IOleAdviseHolder::SendOnSave も参照)。また、これらの操作ではオブジェクトは IPersistFile::SaveCompleted 呼び出しを受け取るまで NoScribble モードになる。NoScribble モードではオブジェクトはファイルに書き込んではならない。Save As シナリオでは、実装は任意のアドバイザリ接続に IAdviseSink::OnRename 通知を送るべきである(IOleAdviseHolder::SendOnRename も参照)。Save a Copy As シナリオでは、実装は保存後に内部ダーティフラグをクリアしない。呼び出し側へのメモ OLE は IPersistFile::Save を呼び出さない。通常、アプリケーションはオブジェクトを直接ファイルに保存している場合を除いてこれを呼び出さない。それは一般にエンドユーザーに任されている。
| プラグイン / モジュール | com_misc.dll |
| バージョン | 1.0 |
| 作成日 | 2026/04/16 |
| 著作者 | IronHSP / CsWin32 bridge |
| URL | https://github.com/inovia/IronHSP |
| 備考 | Win32 API の com_misc.dll 関数群。CsWin32 + win32metadata から自動生成。
hsp3net 専用 (intptr / NSTRUCT / wstr を使用)。 |
| タイプ | 拡張命令 |
| グループ | Win32API |
| 対応環境 |
|
| hs ファイル | hsphelp\win32_com_misc_gen2.hs |