error C2679: binary '=' : no operator defined which takes a right-hand operand of type 'const int' (or there is no acceptable conversion)STDMETHODIMP CNiceCLSAPI::CapiGetConStatus(VARIANT *isConnect, long *nRetCode)
{
MyBOOL isConnected = FALSE;
MyBOOL isEvConnected = FALSE; try
{
*nRetCode = clsConnectionStatus ( &isConnected, &isEvConnected );
if( *nRetCode == CLS_RC_SUCCESS )
{
*isConnect = isConnected;//此行出错
}
return S_OK;
}
catch(...)
{
*nRetCode = CLS_RC_GENERAL_FAILURE;
return S_FALSE;
}
}
{
MyBOOL isConnected = FALSE;
MyBOOL isEvConnected = FALSE; try
{
*nRetCode = clsConnectionStatus ( &isConnected, &isEvConnected );
if( *nRetCode == CLS_RC_SUCCESS )
{
*isConnect = isConnected;//此行出错
}
return S_OK;
}
catch(...)
{
*nRetCode = CLS_RC_GENERAL_FAILURE;
return S_FALSE;
}
}
解决方案 »
- 在MFC dialog调用dll接口动态创建在主dialog显示的webbrowser控件失败!!?
- 怎么改变按钮类的字体?
- 为什么我弹出的对话框得不到鼠标消息?
- 内存中保存好友信息的数据结构
- 高分求解!本人实现了一个特定符号输入栏,在程序中需要创建和修改模型的时候,弹出非模态对话框需要输入这些特定符号。谢谢!但是对话框
- 关于键盘扫描码的问题
- 请教手机编程代码
- 就要请假了,散分
- 哪位大哥有unicode的汉字编码表,高分向求!
- 如何让文本框禁止输入(即变成灰色)?
- 求救!多国语言版程序,用了Arial字体,在中文98下显示不美观,怎么办?
- 国产的office visio, 正在搜集二次开发的需求,请大家提提自己的需求。
VARTYPE vt;
union {
short iVal; // VT_I2.
long lVal; // VT_I4.
float fltVal; // VT_R4.
double dblVal; // VT_R8.
DATE date; // VT_DATE.
BSTR bstrVal; // VT_BSTR.
…
short * piVal; // VT_BYREF|VT_I2.
long * plVal; // VT_BYREF|VT_I4.
float * pfltVal; // VT_BYREF|VT_R4.
double * pdblVal; // VT_BYREF|VT_R8.
DATE * pdate; // VT_BYREF|VT_DATE.
BSTR * pbstrVal; // VT_BYREF|VT_BSTR.
};
}; 显然,VARIANT类型是一个C结构,它包含了一个类型成员vt、一些保留字节以及一个大的union类型。例如,如果vt为VT_I2,那么我们可以从iVal中读出VARIANT的值。同样,当给一个VARIANT变量赋值时,也要先指明其类型。例如:VARIANT va;
:: VariantInit(&va); // 初始化
int a = 2002;
va.vt = VT_I4; // 指明long数据类型
va.lVal = a; // 赋值 为了方便处理VARIANT类型的变量,Windows还提供了这样一些非常有用的函数: VariantInit —— 将变量初始化为VT_EMPTY; VariantClear —— 消除并初始化VARIANT; VariantChangeType —— 改变VARIANT的类型; VariantCopy —— 释放与目标VARIANT相连的内存并复制源VARIANT。