共有の場合はあまりテストしたことが無いのですが、MakeIndex()を
呼び出す前に、HamlogClose()を呼び出す必要があると思います。
var cdsBff: TCOPYDATASTRUCT;
cdsBff.cbData := 0;
cdsBff.dwData := 27; // HamlogClose
SendMessage(ThwHwnd, WM_COPYDATA, Handle, LPARAM(@cdsBff));
MakeIndex();
cdsBff.dwData := 28; // HamlogOpen
SendMessage(ThwHwnd, WM_COPYDATA, Handle, LPARAM(@cdsBff));
うまくいかなかったらごめんなさい。
hQSLでは、共有モードでない場合はこのコマンドを使ってHAMLOGに
フィイルを閉じさせ、QSOデータを操作しています。