错误CS0234:类型或命名空间名称';CustomMarshallers';不存在于命名空间';Sy

本文关键字:命名空间 不存在 Sy CustomMarshallers CS0234 类型 错误 | 更新日期: 2023-09-27 18:01:01

using System;    
using System.Collections; 
using System.Reflection; 
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
using System.Runtime.InteropServices.CustomMarshalers;
namespace mshtml
{
    [DefaultMember("item"), CompilerGenerated, Guid("3050F21F-98B5-11CF-BB82-00AA00BDCE0B"), TypeIdentifier]
    [ComImport]
    public interface IHTMLElementCollection : IEnumerable
    {
        void _VtblGap1_3();
        [DispId(-4)]
        [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef = typeof(EnumeratorToEnumVariantMarshaler))]
        IEnumerator GetEnumerator();
    }
}

上面的代码给了我以下错误:

错误CS0234:命名空间"System.Runtime.InteropServices"中不存在类型或命名空间名称"CustomMarshallers"(是否缺少程序集引用?(

Pleae建议如何修复?这是一个反编译的代码,我是C#的初学者。

错误CS0234:类型或命名空间名称';CustomMarshallers';不存在于命名空间';Sy

您必须包含CustomMarshallers.dll
示例:
使用Project添加引用->添加引用->浏览->转到位置"C:''Windows''assembly''GAC_32''CustomMarshallers''2.0.0.0__b03f5f7f11d50a3a">->选择CustomMarshalles.dll

很抱歉恢复了一个旧线程。对于Framework 4.72,您可以使用项目->添加引用->程序集->选中CustomMarshallers旁边的框。