加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

解决:0x80070057 ValueClassMarshaler.ConvertToNative

发布时间:2020-12-17 07:48:27 所属栏目:百科 来源:网络整理
导读:用了整整 7 小时解决掉下面这个问题: 问题: System.ArgumentException: 参数错误。 ( 异常来自 HRESULT:0x80070057(E_INVALIDARG)) 在 System.StubHelpers.ValueClassMarshaler.ConvertToNative(IntPtr dst,IntPtr src,IntPtr pMT,CleanupWorkList pCleanu
用了整整 7 小时解决掉下面这个问题:

问题:

System.ArgumentException:参数错误。(异常来自HRESULT:0x80070057(E_INVALIDARG))

System.StubHelpers.ValueClassMarshaler.ConvertToNative(IntPtr dst,IntPtr src,IntPtr pMT,CleanupWorkList& pCleanupWorkList)

xcsrvb7._CardFile.WriteCard(WFCAS_Card_t& card)

如下图所示:

ArgumentException:参数错误,HRESULT:0x80070057<wbr></p>ValueClassMarshaler.ConvertToNative


解决方法:

项目属性-应用程序-程序集信息-使程序集COM可见(打勾)

ArgumentException:参数错误,HRESULT:0x80070057<wbr></p>ValueClassMarshaler.ConvertToNative


总结:

使程序集COM可见:没有勾选时就会出现如上错误。

xcsrvb7.dll XCSRB6.DLL(VB6写的DLL)TLBIMP生成的。

wfIfSmc4boss.dll 直接调用xcsrvb7.dll

窗体应用程序wfIfSmc4boss.dll_demovb2010直接调用wfIfSmc4boss.dll,不会直接调用xcsrvb7.dll

所有直接使用xcsrvb7.dll的项目都必须作这样的设置(使程序集COM可见:打勾),间接使用的不必打勾,打勾也没问题,不过为防止其它DLL出现类似问题,建议就都打勾。

ArgumentException:参数错误,HRESULT:0x80070057<wbr></p>ValueClassMarshaler.ConvertToNative


环境:

VB.NET2010SP1 @Windows server2012r2


注:

在和另外使用xcsrvb7.dll好几年的项目SMS比较项目设置时才发现解决方法。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读