Ancia0.8.0.6で分かったBSTRのパラメータ渡し誤りのバグを修正しています。そのほか、あまりバージョンアップしていなかったので、気になったところを直しています。SimpleFavPanelのアイコンを変更していますが、元のアイコンは、削除していないので、パネルのアイコン設定から変更できます。
BSTRのパラメータ渡し誤りというのは、
inline void func(BSTR bstr){ ・・・ } 関数1
inline void func(LPWCSTR psz) 関数2
{
BSTR bstr=SysAllocString(psz);
func(bstr);
SysFreeString(bstr);
}
というのがあるとき、
TCHAR sz[256]; //CStringもなぜか、関数1が呼ばれる
lstrcpy(sz, _T(“aaa”));
func(sz);
が、関数2ではなく関数1を呼んでしまうというものです。これは、オーバーロードの仕様?で、constより、完全一致のBSTR(WCHAR*)が優先的に一致していることだと思います。関数1の名前を変更したので、全て直っているはずです。直した後はAnciaで落ちなくなりました。
v1.4.0の4/25日のインストーラで、インストールが不十分だったので、インストーラを差し替えています。もし、v1.4.0をインストールした方は、v1.4.1をインストール、または、再度v1.4.0のインストールをお願いします。