5 个解决方案
#1
这个错误的提示为:
"因为系统在 %1 此路径运行失败,所以无法初始化系统。 系统错误码就是相关数据。"
把你那个调用存储过程的方法封在一个try...catch里
try
{
//调用的存储过程
}
catch(_com_error &e)
{
AfxMessageBox(e.ErrorMessage());
}
"因为系统在 %1 此路径运行失败,所以无法初始化系统。 系统错误码就是相关数据。"
把你那个调用存储过程的方法封在一个try...catch里
try
{
//调用的存储过程
}
catch(_com_error &e)
{
AfxMessageBox(e.ErrorMessage());
}
#2
不明白。
我已经把存储过程的方法封在try...catch里了,我的记录集返回多条记录,前两条记录取的都很正常,可是第三条取到中间一个字段时就出现“IDispatch error #3105 ” 的错误。
这个字段的代码如下:
result5=m_pRecordset->GetCollect((long)4);//库存市值
if(result5.vt!=NULL)
{
result5.ChangeType(VT_BSTR);
CString strResult5=result5.bstrVal;
strcpy(kcsz,strResult5);
WriteFile(hFile,kcsz,strlen(kcsz), (ULONG *)&nLen, NULL);
}
result5返回值是VT_DECIMAL类型,不知是不是result5.ChangeType(VT_BSTR)这句转换有问题?后来我把它代码改为
result5=m_pRecordset->GetCollect((long)4);//库存市值
if(result5.vt!=NULL)
{
CString strResult5;
strResult5.Format("%f",result5.decVal);!!!不知这样改行不行?!!!!
strcpy(kcsz,strResult5);
WriteFile(hFile,kcsz,strlen(kcsz), (ULONG *)&nLen, NULL);
}
我已经把存储过程的方法封在try...catch里了,我的记录集返回多条记录,前两条记录取的都很正常,可是第三条取到中间一个字段时就出现“IDispatch error #3105 ” 的错误。
这个字段的代码如下:
result5=m_pRecordset->GetCollect((long)4);//库存市值
if(result5.vt!=NULL)
{
result5.ChangeType(VT_BSTR);
CString strResult5=result5.bstrVal;
strcpy(kcsz,strResult5);
WriteFile(hFile,kcsz,strlen(kcsz), (ULONG *)&nLen, NULL);
}
result5返回值是VT_DECIMAL类型,不知是不是result5.ChangeType(VT_BSTR)这句转换有问题?后来我把它代码改为
result5=m_pRecordset->GetCollect((long)4);//库存市值
if(result5.vt!=NULL)
{
CString strResult5;
strResult5.Format("%f",result5.decVal);!!!不知这样改行不行?!!!!
strcpy(kcsz,strResult5);
WriteFile(hFile,kcsz,strlen(kcsz), (ULONG *)&nLen, NULL);
}
#3
上帝救救我吧!!
#4
高手在吗?
#5
up
#1
这个错误的提示为:
"因为系统在 %1 此路径运行失败,所以无法初始化系统。 系统错误码就是相关数据。"
把你那个调用存储过程的方法封在一个try...catch里
try
{
//调用的存储过程
}
catch(_com_error &e)
{
AfxMessageBox(e.ErrorMessage());
}
"因为系统在 %1 此路径运行失败,所以无法初始化系统。 系统错误码就是相关数据。"
把你那个调用存储过程的方法封在一个try...catch里
try
{
//调用的存储过程
}
catch(_com_error &e)
{
AfxMessageBox(e.ErrorMessage());
}
#2
不明白。
我已经把存储过程的方法封在try...catch里了,我的记录集返回多条记录,前两条记录取的都很正常,可是第三条取到中间一个字段时就出现“IDispatch error #3105 ” 的错误。
这个字段的代码如下:
result5=m_pRecordset->GetCollect((long)4);//库存市值
if(result5.vt!=NULL)
{
result5.ChangeType(VT_BSTR);
CString strResult5=result5.bstrVal;
strcpy(kcsz,strResult5);
WriteFile(hFile,kcsz,strlen(kcsz), (ULONG *)&nLen, NULL);
}
result5返回值是VT_DECIMAL类型,不知是不是result5.ChangeType(VT_BSTR)这句转换有问题?后来我把它代码改为
result5=m_pRecordset->GetCollect((long)4);//库存市值
if(result5.vt!=NULL)
{
CString strResult5;
strResult5.Format("%f",result5.decVal);!!!不知这样改行不行?!!!!
strcpy(kcsz,strResult5);
WriteFile(hFile,kcsz,strlen(kcsz), (ULONG *)&nLen, NULL);
}
我已经把存储过程的方法封在try...catch里了,我的记录集返回多条记录,前两条记录取的都很正常,可是第三条取到中间一个字段时就出现“IDispatch error #3105 ” 的错误。
这个字段的代码如下:
result5=m_pRecordset->GetCollect((long)4);//库存市值
if(result5.vt!=NULL)
{
result5.ChangeType(VT_BSTR);
CString strResult5=result5.bstrVal;
strcpy(kcsz,strResult5);
WriteFile(hFile,kcsz,strlen(kcsz), (ULONG *)&nLen, NULL);
}
result5返回值是VT_DECIMAL类型,不知是不是result5.ChangeType(VT_BSTR)这句转换有问题?后来我把它代码改为
result5=m_pRecordset->GetCollect((long)4);//库存市值
if(result5.vt!=NULL)
{
CString strResult5;
strResult5.Format("%f",result5.decVal);!!!不知这样改行不行?!!!!
strcpy(kcsz,strResult5);
WriteFile(hFile,kcsz,strlen(kcsz), (ULONG *)&nLen, NULL);
}
#3
上帝救救我吧!!
#4
高手在吗?
#5
up