C++ SetOaNoCache在哪里定义?
正在尝试禁用BSTR缓存:C++ SetOaNoCache在哪里定义?,c++,visual-studio-2008,disable-caching,C++,Visual Studio 2008,Disable Caching,正在尝试禁用BSTR缓存: SetOaNoCache(); VC++编译器生成输出: 'SetOaNoCache':找不到标识符 不想使用: OANOCACHE=1 问题: 在哪里定义了-头文件 它不是在头文件中定义的,而是在OLEAUT32.dll中定义的。你可以这样称呼它: typedef int(*SETOANOCACHE)(无效) void DisableBSTRCache() { HINSTANCE hLib=LoadLibrary(“OLEAUT32.DLL”); 如果(
SetOaNoCache();
VC++编译器生成输出:
'SetOaNoCache':找不到标识符
- OANOCACHE=1
- 在哪里定义了-头文件
typedef int(*SETOANOCACHE)(无效)
void DisableBSTRCache()
{
HINSTANCE hLib=LoadLibrary(“OLEAUT32.DLL”);
如果(hLib!=NULL)
{
SETOANOCACHE SETOANOCACHE=(SETOANOCACHE)GetProcAddress(hLib,“SETOANOCACHE”);
if(SetOaNoCache!=NULL)
SetOaNoCache();
免费图书馆(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();
}
+1:@sikx-谢谢你,伙计!我来试试:)。我在哪里可以找到更多关于这个的信息?你怎么知道它是在OLEAUT32.dll中的呢?谷歌2分钟:应该声明为“void\uu cdecl SetOaNoCache(void)”。见MSDN文章:
inline void TurnOffCache ()
{
// Function prototype.
extern "C" SetOaNoCache();
// Turn off BSTR caching.
SetOaNoCache();
}