我用MFC编写了一组件,用ASP调用正常,为什么在ASP.NET下出错(远程调用出错)? 先谢了! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 那你就是着用.net做个组件吧。 asp.net下是托管代码,调用COM组件是有写差别的,你确定代码没有问题吗? .net中应该也可以调用com组件的 http://comcamp.myrice.com/techarticles/com/2013.htm看看对你有没有用 因为还未完全解决问题,先散20分!COM组件中属性如下:VRRIANT m_VarPZSJ;void CNewWritePZ::SetPZSJ(const VARIANT FAR newValue) { if((newValue.vt&VT_ARRAY)==0) return; if((newValue.vt&VT_VARIANT)==0) return; if(newValue.vt&VT_BYREF) SafeArrayCopy(*(newValue.pparray),&m_VarPZSJ); else SafeArrayCopy(newValue.parray,&m_VarPZSJ);}然后用SafeArray方法得到各项的值。在VB.NET中用如下调用方法: Dim tt As New LiwSoft.NewWritePZ() Dim A(11) A(0) = "123" A(1) = "123" A(2) = "123" A(3) = "123" A(4) = "123" A(5) = "123" A(6) = "123" A(7) = "123" A(8) = "123" A(9) = "123" A(10) = "123" tt.PZSJ = A其中最後一行报错,说类型不匹配。用ASP调用是正确的。还有,如何在用aspx调用的情况下调试组件? 这个问题你在这里问怎么可以,应该到.net版块中啊类型不匹配是不是因为你使用了不适合.net公共语言环境的类型?在.net下调用使用非托管代码写的组件使用DllImport导入,然后声明static类型函数 如何分辨是哪个客户端发送过来的数据? 为新生儿起名,求祝福! 软键盘和程序之间如何通讯 如何实现程序自动更新 如何在双击自定义文件类型时执行新的程序??? HTTP CLILEN T 问题(XMLHTTP问题) 如何改变ClistCtrl 中 Column header 颜色(Report类型的)? 病急乱投医生了!,问问:在linux,unix下能否开发支持中文的应用程序阿? 关于代理服务器的问题 图上有几块黑色的闭和区域,怎么标示他们,比如闭合区域1(坐标),闭合区域2(坐标),.... 寻算法!! 一大早就来问个问题
看看对你有没有用
COM组件中属性如下:
VRRIANT m_VarPZSJ;
void CNewWritePZ::SetPZSJ(const VARIANT FAR newValue)
{
if((newValue.vt&VT_ARRAY)==0)
return;
if((newValue.vt&VT_VARIANT)==0)
return;
if(newValue.vt&VT_BYREF)
SafeArrayCopy(*(newValue.pparray),&m_VarPZSJ);
else
SafeArrayCopy(newValue.parray,&m_VarPZSJ);
}
然后用SafeArray方法得到各项的值。
在VB.NET中用如下调用方法:
Dim tt As New LiwSoft.NewWritePZ()
Dim A(11)
A(0) = "123"
A(1) = "123"
A(2) = "123"
A(3) = "123"
A(4) = "123"
A(5) = "123"
A(6) = "123"
A(7) = "123"
A(8) = "123"
A(9) = "123"
A(10) = "123"
tt.PZSJ = A
其中最後一行报错,说类型不匹配。用ASP调用是正确的。
还有,如何在用aspx调用的情况下调试组件?
类型不匹配是不是因为你使用了不适合.net公共语言环境的类型?
在.net下调用使用非托管代码写的组件使用DllImport导入,然后声明static类型函数