error C2065: 'GetRunningObjectTable' : undeclared identifier
error C2065: 'CreateItemMoniker' : undeclared identifier
我用的是EVC 4.0+SP4
你去VC下找找看能不能找到这两个函数的源码
我家里的机器还没有安装VC和evc
有空我去看看
网上资料:
NET Framework 类库
UCOMIBindCtx.GetRunningObjectTable 方法
返回对与此绑定进程相关的运行对象表 (ROT) 的访问权。
[Visual Basic]
Sub GetRunningObjectTable( _
ByRef pprot As UCOMIRunningObjectTable _
)
[C#]
void GetRunningObjectTable(
out UCOMIRunningObjectTable pprot
);
[C++]
void GetRunningObjectTable(
[
Out
] UCOMIRunningObjectTable** pprot
);
[JScript]
function GetRunningObjectTable(
pprot : UCOMIRunningObjectTable
);
参数
pprot
成功返回时对 ROT 的引用。
备注
有关更多信息,请参见 MSDN Library 中有关 IBindCtx::GetRunningObjectTable 的现有文档。
要求
平台: Windows 98, Windows NT 4.0, Windows ME, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 系列
包含Objbase.h头文件了吗
====================================
我加过了,不行!
GetRunningObjectTable CreateItemMoniker
在eVC里面不支持的. 请换一个...
一般来说,你可以选中GetRunningObjectTable 然后按F1 就知道在eVC下是不是含有这个函数.
我用的SDK是人家开发板上的SDK,之前用他们给的SDK_STUDY在模拟器上跑完全没问题.但后来他们给我现在板子用的新SDK就不行了,就出现这2个函数没定义.
我想问要是换一个函数,EVC下有相同功能的函数吗?谢谢大家了
void CMLS_Multimedia::AddToObjectTable(void)
{
IMoniker * pMoniker = 0;
IRunningObjectTable * objectTable = 0;
if(SUCCEEDED((GetRunningObjectTable(0, &objectTable)))
{
WCHAR wsz[256];
wsprintfW(wsz, L"FilterGraph %08p pid %08x", (DWORD_PTR)m_pGraphBuilder, GetCurrentProcessId());
HRESULT hr = CreateItemMoniker(L"!", wsz, &pMoniker);
if(SUCCEEDED(hr))
{
hr = objectTable->Register(0, m_pGraphBuilder, pMoniker, &m_dwObjectTableEntry);
pMoniker->Release();
}
objectTable->Release();
}
}
//=============================================================================
//
void CMLS_Multimedia::RemoveFromObjectTable(void)
{
IRunningObjectTable * objectTable = 0;
if(SUCCEEDED(GetRunningObjectTable(0, &objectTable)))
{
objectTable->Revoke(m_dwObjectTableEntry);
objectTable->Release();
m_dwObjectTableEntry = 0;
}
}
有些函数在VC下支持,但在WinCE下是不支持的,要看MSDN,并且在不同平台下也是有区别的
不支持很正常阿,evc的函数本来就要大大小于VC的函数,要看evc的msdn,,
这些函数都是支持的,在 Documents 里面都写明了。
OS Versions: Windows CE 3.0 and later.
Header: Objbase.h.
Link Library: Ole32.lib.
你没Link Library吧