引用 COM 对象 ActiveD 或 MSXML2 时出现大量构建警告

2023-11-24

将项目从 .NET 1.1 移动到 .NET 2.0 后,MsBuild 会针对某些 COM 对象发出大量警告。

用于测试的示例代码(实际代码并不重要,只是用于创建警告):

using System;
using System.DirectoryServices;
using ActiveDs;
namespace Test
{
    public class Class1
    {
        public static void Main(string[] args)
        {
            string adsPath = String.Format("WinNT://{0}/{1}", args[0], args[1]);
            DirectoryEntry localuser = new DirectoryEntry(adsPath);
            IADsUser pUser = (IADsUser) localuser.NativeObject;
            Console.WriteLine("User = {0}", pUser.ADsPath);
        }
    }
}

警告消息看起来像

C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Microsoft.Common.targets :警告:运行时封送处理程序无法封送“ITypeLib.RemoteGetLibAttr”的至少一个参数。因此,此类参数将作为指针传递,并且可能需要不安全的代码来操作。

观察结果:

  • ActiveD(11 个警告)和 MSXML2(54 个警告)会发生这种情况。
  • 我们自己的 COM 对象没有看到。
  • <Reference>.csproj 文件中的条目包含属性WrapperTool = "tlbimp"
  • 尽管有所有警告,但在运行的系统中没有观察到任何问题。

知道如何摆脱警告吗?


我遇到了同样的问题,并按照此处的建议通过编辑项目文件(.csproj)来修复它:

https://social.msdn.microsoft.com/Forums/vstudio/en-US/7a7c352b-20cb-4931-b3b5-27e899016f75/turning-off-msbuild-warnings-msb3305?forum=msbuild

我将以下键添加到每个构建配置的属性组中:

<ResolveComReferenceSilent>True</ResolveComReferenceSilent>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

引用 COM 对象 ActiveD 或 MSXML2 时出现大量构建警告 的相关文章

随机推荐

  • 如何管理 AngularJS 中加载指令模板的 404 错误

    在 AngularJS 指令中templateUrl参数是动态定义的 templates content id html 我不想建立规则来检查是否content id值有效并将其管理为 404 错误 即如果模板不存在 服务器在加载模板时返回
  • 如何区分InputBox取消和确定按钮?

    快速提问 我正在使用一个Microsoft VisualBasic Interaction InputBox在我的 C 代码中允许用户将网站添加到列表中 但我不希望他们输入空字符串 因此我会弹出错误窗口 以防发生这种情况 但是 如果用户按
  • 如何删除向量的每个第三个元素?

    我有以下向量 myList c 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 如何删除每个第三个元素 不是这样的 myList myList 3 myList myList 6 我需要以下输出 1 2 4 5 7
  • 无法在AWS Lambda函数上使用ES6;如何在 Lambda 中导入 ES6 模块

    我有一个图书馆foo这是用 ES6 编写的 import export并在打字稿中 我有一个应用程序bar它使用foo bar也是用导出和 Typescript 编写的 我想得到bar在 AWS Lambda 上运行 据我所知 我不能使用i
  • =+ Python 运算符语法正确

    我无意中写道 total acc accuracy 代替 total acc accuracy 我在网上搜索没有找到anything 那么发生了什么 为什么 Python 认为我正在输入的内容是什么意思 Computers trust us
  • 从 python BeautifulSoup 的输出中删除新行 '\n'

    我正在使用 python Beautiful soup 来获取以下内容 div class path a href abc a a href def a a href ghi a div 我的代码如下 html doc div class
  • 使用 Google-Maps-iOS-SDK (1.8.1) 时架构 armv7 的未定义符号

    我正在尝试添加使用 cocoapods 0 33 1 的 Google Maps iOS SDK 1 8 1 部署目标版本 iOS 7 0 我添加了这个 Pod pod Google Maps iOS SDK gt 1 8 正确下载并安装了
  • 如何在没有 Storyboard 的情况下在 UITableViewRowAction 中自定义字体和颜色

    我有经典的 TableView 如果您滑动并单击按钮 您可以删除项目 我知道如何在单元格上设置自定义背景 但我找不到如何为其设置自定义字体和颜色 谢谢你的帮助 func tableView tableView UITableView edi
  • java 中的 Servlet - getWriter() 和 getOutputStream()

    为什么在一个实例上ServletResponse both getWriter and getOutputStream 不能被调用吗 一个设计决定 Writer 和 OutputStream 都维护自己的缓冲区 如果您分别创建一个 那么它们
  • 从 ArrayList 创建格式化字符串

    考虑以下代码 ArrayList
  • Unity 的 Mathf.PingPong 实际上是做什么的?

    Unity 文档用于数学乒乓球 says 乒乓球的价值t 因此它永远不会大于length并且永远不会小于0 我知道它正在 0 到 0 之间旋转一个值length 我不明白的是价值是什么t它与 PingPong 的运作方式有何关系 如果我设置
  • 枚举与架构不匹配:jaxb 或 xsd 有问题吗?

    我正在尝试使用 JAXB 来解组这个文件转换为 Java 对象 我知道 J6 中的 SAX 有一个问题 拒绝 maxOccurs 行 我已将其更改为unbounded 然而 当我xjc它 它没有创建我需要的所有类和枚举 例如 应该有一个ed
  • 命令行 perl 脚本中的进度条

    我正在尝试在命令提示符中以 形式打印进度 但它无法正常工作 我想将进度打印为 Status 10 Completed 当 20 完成时 它将显示状态 20 已完成 在同一个地方而不是在新行中 请你帮助我好吗 Code count per c
  • DataTables 插件 - 在 tfoot 标签下方显示滚动条?

    我使用 jQuery DataTables 插件 scrollX true用于水平滚动 为什么上面会出现滚动条tfoot标签 如何让它出现在页脚下方 var table example DataTable scrollX true scro
  • Django 表单集分页

    我有一个模型表单集 我想使用 Django 的 Paginator 一次显示 10 个表单 但不能像这样完成paginator Paginator formset 10 如果有办法的话 正确的方法是什么 这是我发现的问题解决方案的通用示例
  • F#:从 seq 中删除重复项很慢

    我正在尝试编写一个函数 根据给定的相等函数确定 从seq lt a gt 但有一个转折 我需要last从一系列重复项中进行复制 使其进入结果序列 例如 如果我有一个序列 a 1 b 2 b 3 b 4 c 5 我正在使用fun x1 y1
  • Java(Android)中的静态类——使用或不使用

    最近我开始使用 Java 进行 Android 开发 我的想法是创建一个静态类 它将在开始时加载大量内容并在应用程序的整个生命周期中存储结果 我一直在阅读很多如何在活动之间共享对象的文章 我认为最好的方法是创建一个静态类 你怎么认为 我应该
  • IEEE“双精度”的精确文本表示

    我需要以人类可读的文本形式表示 IEEE 754 1985 双 64 位 浮点数 条件是文本形式可以解析回exactly相同的 按位 数字 如果不打印原始字节 这是否可能 实用 如果是 那么执行此操作的代码将不胜感激 最佳选择 使用 C99
  • phing 已安装但“未找到”且不在 pear 列表中

    我正在尝试在 CentOS 上安装 Propel ORM 它依赖于 phing 我已经成功运行了以下命令 pear channel discover pear phing info pear install phing phing pear
  • 引用 COM 对象 ActiveD 或 MSXML2 时出现大量构建警告

    将项目从 NET 1 1 移动到 NET 2 0 后 MsBuild 会针对某些 COM 对象发出大量警告 用于测试的示例代码 实际代码并不重要 只是用于创建警告 using System using System DirectorySer