レジストリまたは .INI ファイルの指定のセクションにバイナリ データを書き込む。
WriteProfileBinaryを使います。
OSのバージョンによって格納先が変わります。
WINDOWPLACEMENT wp;
GetWindowPlacement(&wp); //ウィンドウの位置を取得
AfxGetApp()->WriteProfileBinary("セクション名","エントリ名",(LPBYTE)&wp,sizeof(wp));
復元する場合、OnInit***等で
WINDOWPLACEMENT *pwp;
UINT nl;
if(AfxGetApp()->GetProfileBinary("セクション名", "エントリ名", (LPBYTE*)&pwp, &nl)){
SetWindowPlacement(pwp);
delete [] pwp;
}
GetProfileBinaryは内部でnewしたメモリを返してくれるようです。
MSDNでは、呼び出し元でdelete[]するように書かれています。
Copyright 1997-2008 BBB All rights reserved.