BSTRキャッシングを無効にしようとしています:
SetOaNoCache();
VC ++コンパイラビルド出力:
'SetOaNoCache': identifier not found
使用したくない:
- OANOCACHE = 1
質問:
- SetOaNoCache はどこで定義されていますか-ヘッダーファイル?
BSTRキャッシングを無効にしようとしています:
SetOaNoCache();
VC ++コンパイラビルド出力:
'SetOaNoCache': identifier not found
使用したくない:
質問:
これはヘッダー ファイルでは定義されておらず、OLEAUT32.dll 内にあります。次のように呼び出すことができます。
typedef int (*SETOANOCACHE)(void);
void DisableBSTRCache()
{
HINSTANCE hLib = LoadLibrary("OLEAUT32.DLL");
if (hLib != NULL)
{
SETOANOCACHE SetOaNoCache = (SETOANOCACHE)GetProcAddress(hLib, "SetOaNoCache");
if (SetOaNoCache != NULL)
SetOaNoCache();
FreeLibrary(hLib);
}
}
そうではありません。C++ Builder に同梱されている Win32 API ライブラリから:
Requirements
Windows XP: Requires Windows XP Service Pack 2 or later.
Windows 95/98: Not supported.
Header: Not supplied. Declare prototype as shown.
Library: Use oleaut32.lib.
プロトタイプは次のとおりです。
inline void TurnOffCache ()
{
// Function prototype.
extern "C" SetOaNoCache();
// Turn off BSTR caching.
SetOaNoCache();
}