別件ですが,同じ MQObjectなので返信で報告させてください.
引数なしの MQObject::GetName() でオブジェクト名の最後の1バイトが欠けているようです.正確なバージョンを覚えていませんが数年前のバージョンでは正常に動作していたと記憶しています. また,MQObject::GetNameW() は問題ないので,現状困っていはいません.
ご確認いただけると幸いです.
2021-07-27 21:31
ユニークIDは標準的な状態では必要がないため保存されず、プラグイン内(ボーンやモーフも含む)で必要な場合にのみ保存されます。
SDKではOnSaveDocumentのparam引数内のbSaveUniqueIDが該当します。ここにTRUEを指定した場合にユニークIDが保存されますが、必要のない場合は必ず初期値のFALSEのままにしてください。
GetNameのほうは即答ができないので、また後日確認後に返答させていただきます。
2021-07-27 22:15
返答ありがとうございます.
すみません,OnSaveDocumentの説明を見落としていました.GetUniqueID() の説明からリンクがあると見落とさずに済みそうです.
2021-07-28 09:57
GetNameについても確認しました。
Ver4.7あたりからstd::string戻り値のGetName()で挙動がおかしくなっているようです。
昔からのスタイルのGetName(char*,int)やGetNameW()では問題ありません。
現在では内部で管理される形式がワイド文字なので、GetNameW()が推奨となりますので、こちらをご利用いただいていれば大丈夫です。
ユニークIDについてはわかりやすいようドキュメントに追記しておきます。
2021-07-28 20:34