在非 Metro 应用程序中使用自定义 Windows 运行时组件

2024-03-12

想象一个场景,您有一个复杂的 WinRT 代码框架,您希望从 C++ Metro 应用程序和 C# 桌面应用程序访问该框架。

有没有办法将 WinMD 包含在非 Metro 应用程序中?


UPDATE:这仅适用于 Windows 8。Microsoft 在 Windows 8.1 中禁用了此功能。

就在这里。尝试通过引用管理器添加它们时的块似乎是在 Visual Studio 本身内部实现的。添加后,Visual Studio 将像对待任何其他 WinMD 文件一样对待引用的文件。

NOTE:微软不支持此解决方法!

要将自定义 WinMD 文件添加到任何非 Metro 应用程序,您必须首先确保您的目标是 .NET 4.5。这不适用于任何早期版本的 .NET Framework。

一旦您以 .NET 4.5 为目标,请卸载项目文件并打开它进行编辑。然后在最后的后面添加如下代码<PropertyGroup>在项目文件中:

  <PropertyGroup>
    <TargetPlatformVersion>8.0</TargetPlatformVersion>
  </PropertyGroup>

接下来,找到<ItemGroup>包含您的参考文献并添加以下内容:

<Reference Include="{Namespace}">
  <HintPath>{Path to WinMD file}</HintPath>
</Reference>

虽然我不能保证这样做不会出现任何问题,并且考虑到 Microsoft 已经非常清楚这一事实,即无论您使用哪个框架配置文件,CLR 都会加载相同的程序集,但我强烈怀疑这不会导致任何问题伤害。

关于类库的注释。如果您将 WinMD 包含到非 Metro 类库中,然后在非 Metro 应用程序中引用该库;如果不引用应用程序中的 WinMD 文件或提供包装器类型,您将无法访问类库公开的任何自定义 WinRT 类型。

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

在非 Metro 应用程序中使用自定义 Windows 运行时组件 的相关文章

  • 如何将数据插入 Microsoft Access 数据库?

    我正在尝试将数据插入 Microsoft Access 数据库 我将数据插入到 Access 数据库中 但只有第一次和第二次显示我插入的数据 当我重建应用程序时 我插入的数据消失了 我不知道他们去了哪里并且没有出现 我使用 C 和 NET
  • “System.Int32”类型的表达式不能用于返回类型“System.Object”

    我正在尝试制作一个简单的脚本系统 用于打印标签 我过去曾通过反射完成此操作 没有任何问题 但我现在尝试使用 Lambda 函数来完成此操作 以便可以缓存函数以供重用 到目前为止我的代码如下 public static string GetV
  • C#、Visual Basic.NET 和托管 C++ 之间的字符串文字有何区别?

    我指的是在代码中编写字符串的语法 包括多行字符串和逐字字符串 上下文 我正在开发一个扫描代码的工具 确定令牌何时位于字符串内非常重要 Thanks 这是语言之间的快速细分 托管 C 以与普通 C C 或 C 类似的方式支持字符串文字 也就是
  • 编译时和运行时转换 C#

    我想知道为什么 C 中的某些强制转换会在编译时进行检查 而在其他情况下则将责任转嫁给 CLR 如上所述 两者都是不正确的 但处理方式不同 class Base class Derived Base class Other static vo
  • 如何嘲笑一切?

    我了解如何模拟接口或虚拟方法调用 但是像 TypeMock 这样的框架可以模拟框架中的所有内容 使用哪些 NET机制来提供此类功能 例如 Typemock Isolator 使用 CLR分析器API http msdn microsoft
  • wait task.delay 有助于加快 UI 刷新速度,但是如何实现呢?

    我有一个视图模型 它正在获取一行记录并显示在 Windows Phone UI 上 这个获取数据的视图模型方法正在执行大量任务 所有任务都标记为等待操作 如下所示 async Task GetData var dataCollection
  • WCF - 如何增加消息大小配额

    我有一个 WCF 服务 它将 1000 条记录从数据库返回给客户端 我有一个 ASP NET WCF 客户端 我在 asp net Web 应用程序项目中添加了服务引用来使用 WCF 当我运行客户端应用程序时 我收到以下消息 传入消息的最大
  • 如何在 C# 中捕获等待的异步方法的异常?

    我基本上想知道在 C 中我应该如何捕获通过等待的异步方法的异常await关键词 例如 考虑以下小控制台程序 其中最重要的是包含一个名为AwaitSync AwaitSync calls TestAsync 它返回一个任务 执行时会抛出异常
  • 如何从对Web服务发出的请求中获取客户端IP地址

    我的 IIS 中托管有一个 Web 服务 当客户端直接使用我的服务时 我需要找出客户端 IP 地址 like http MyIpAddress MyApplication MyWebServiceClass asmx http MyIpAd
  • 作为服务运行时未找到 PowerShell 模块

    我有一个项目 我将 Office 365 许可证分配给用户 有一个 Web 项目允许管理员查看可用许可证并为用户选择许可证 在后台 有一项服务每 15 分钟执行一次实际的许可证分配 以及许多其他任务 我们不直接分配许可证的原因是用户可能尚未
  • VB.NET 是否优化字符串文字的串联?

    如同this https stackoverflow com questions 288794 does c optimize the concatenation of string literals问题 但对于 VB NET 来说 因为我
  • C#“var”关键字在 VB.NET 中的等价物是什么?

    例如 我如何获得 VB NET静态类型局部变量是static赋值右侧的表达式的类型 像这样 Dim http msdn microsoft com en us library 7ee5a7s1 aspx我的变量 3 你还需要 选项推断 ht
  • HttpUtility.ParseQueryString 不解码特殊字符

    Uri uri new Uri redirectionUrl NameValueCollection col HttpUtility ParseQueryString uri Query uri Query已经被解码 那么我有什么办法可以阻
  • 当应用程序终止时,我可以安全地依赖 Threads 中的 IsBackground 吗?

    我正在 GUI 中运行一些后台线程 目前 我正在实现个人线程取消代码 但线程中有 IsBackground 属性 根据 MSDN 它们会自行取消 我知道它将进入 Thread Abort 这很令人讨厌 但是在这个后台线程中没有任何事情需要我
  • 如何将 Excel 中的图表导出为图形

    我有一系列 Excel 电子表格 每个电子表格至少包含一页数据和一页根据数据创建的图表 我需要捕获 不从数据中重新生成 将现有图表作为网络友好图像 这可以通过 Java 或 Net 实现吗 我知道 POI 的东西 Java 不会这样做 或者
  • 当移动到控件的 ScrollBar 上时触发 MouseLeave 事件

    由于无法解决问题 我重新发布此问题 原始here https stackoverflow com questions 2024393 treeview mouseleave event fires when moves over scrol
  • 导入 IronPython 的嵌入式库

    我已通过 NuGet 将 IronPython 标准库添加到我的 c net4 项目中 后来获得了一些参考资料 IronPython IronPython Modules IronPython SQLite IronPython Wpf M
  • 对 ExecuteNonQuery() 的单次调用是原子的

    对 ExecuteNonQuery 的单次调用是否是原子的 或者如果单个 DbCommand 中有多个 sql 语句 那么使用事务是否有意义 请参阅我的示例以进行说明 using var ts new TransactionScope us
  • 如何从 WinRT StreamSocket 读取所有可用数据并清空 inputStream?

    我想在向套接字写入新数据之前读取当前正在等待套接字的所有数据 WinRT中的读取方法都是异步的 所以我不能简单地while直到套接字为空 由于我确实想丢弃套接字上的数据 因此我不想使用读取器 而是直接从套接字读取数据IInputStream
  • 如何调试.NET Windows Service OnStart方法?

    我用 NET 编写的代码仅在作为 Windows 服务安装时才会失败 该故障甚至不允许服务启动 我不知道如何进入 OnStart 方法 如何 调试 Windows 服务应用程序 http msdn microsoft com en us l

随机推荐

  • 如何使用 Linq.Expressions 查询集合

    我构建了一个自定义 IQueryable 提供程序 例如 提供者转换查询 c PurchaseDate new DateTime 2011 11 29 c Name Elizabeth Brown 从底层代码到 System Linq Ex
  • Google 地图 V3 可见标记上的 fitBounds

    发现很难获得关于此的清晰信息 但我想要实现的是可见标记上的 fitBounds 该数组定义标题 类别 纬度 经度和 href 它将所有标记添加到地图 但仅显示第一个类别 当您单击其他类别时 它也会显示这些类别 我可以让 fitBounds
  • 在python2虚拟环境中安装python3

    我有一个在 Python 2 虚拟环境中运行的 Flask 应用程序 我想要运行Python 3程序 所以我需要将python3安装到虚拟环境中 我该怎么做呢 我必须重新创建环境吗 这是一次艰难的迁移吗 不建议混合使用多个版本的Python
  • React Router 与 Spring Boot 路由冲突

    我正在前端使用 React 创建 Spring Boot 应用程序 我可以在浏览器中打开该页面 但在后端出现错误 RequestRejectedException The request was rejected because the U
  • Core Audio (iOS 5.1) Reverb2 属性不存在,错误代码 -10877

    我正在玩苹果的示例项目 LoadPresetDemo 我添加了混响音频单元AudioUnit kAudioUnitSubType Reverb2如图所示 这是唯一可用的 iOS 混响 在 CoreAudio 头文件 AudioUnitPar
  • Javascript DOM .querySelector() null 问题

    我正在用纯 JavaScript 编写代码 有很多场景我会使用querySelector 方法 我多次遇到问题 比如 对于以下代码 未捕获类型错误 无法读取 null 的属性 classList document querySelector
  • 使用 Docker compose 传递 Dockerfile 的参数

    我正在尝试在构建阶段使用参数化我的 dockerfiles 并在 Docker compose 中使用参数 例如 在 Docker compose 中 我定义了一项名为 bpp 的服务 如下所示 bpp build context dock
  • 如何在 Flutter 中检测另一个应用程序是否打开?

    已编辑 我想创建一个阻止使用社交媒体应用程序的应用程序 就像他们打开 Instagram 或其他东西一样 Flutter 应用程序就会知道 当我的 Flutter 应用程序打开时 如何检测另一个应用程序 例如 Instagram 或 Twi
  • 数据集可扩展吗?像 myspace 这样的网站会使用它们进行数据检索吗?

    数据集的可扩展性如何 团队成员希望使用数据集进行数据检索和操作 使用内置的数据完整性等来使用对象执行数据更新等 我们的系统预计将扩展到数百万用户 我读到的所有内容都是针对企业环境中的数据集的 我在这里错了还是什么 免责声明 这些是我根据个人
  • 使用 Objective-C 以编程方式释放系统内存

    所以 这就是我想做的 释放系统内存 非活动内存 以同样的方式purge命令确实如此 尽管是以编程方式 我已经尝试过这里的代码 其作者声称它有效 但它所做的只是导致 Mac OS X 冻结 void free up memory int c
  • Prolog - 回文函子

    我正在尝试写一个谓词palindrome 1在 Prolog 中 当且仅当其列表输入由回文列表组成时 这才是正确的 例如 palindrome 1 2 3 4 5 4 3 2 1 is true 有什么想法或解决方案吗 回文列表是一个向后读
  • AutoLayout,无法同时满足约束

    刚刚开始学习 iOS AutoLayout 界面构建器非常简单 但是当我尝试在代码上存档相同的内容时 self view addConstraints NSLayoutConstraint constraintsWithVisualForm
  • 防止 ASP.NET 对输出中的字符串进行编码

    当页面呈现时 如何阻止 ASP Net 对列表项中的锚标记进行编码 我有一个对象的集合 每个对象都有一个链接属性 我执行了 foreach 并尝试在 BulletedList 中输出链接 但 ASP 对所有链接进行了编码 任何想法 谢谢 这
  • RxJava-在 Observable 链中执行 peek() 或 void 操作?

    Java 8 lambda 流有一个peek 运算符允许您对每个项目执行 void 操作 这通常用于调试 但它也是一种欺骗和启动 void 操作而不映射到某些内容的好方法 RxJava 中有类似的东西吗 也许我没有遵循良好的实践或反应性思考
  • 如何在 Aptana Studio 3 中设置默认文件权限?

    每次我将文件上传到远程主机并尝试打开它时 我都会收到 内部服务器错误 消息 并且文件权限设置为 666 需要设置为 644 才能打开 如何将默认文件权限设置为 644 打开首选项对话框 Window gt Preferences 然后前往
  • Python Flask Heroku 无法导入模块

    我收到以下错误 ModuleNotFoundError No module named class1 结构 hello world src init main class1 Procfile The main1文件看起来像这样 from c
  • Objective_C 中 UIView 的背景颜色是如何处理的?

    我一直在玩一些苹果的示例代码 http developer apple com library ios samplecode TableViewSuite Introduction Intro html apple ref doc uid
  • jQuery Mobile - 无法将 pagebeforechange 绑定到页面 id?

    我只能将 pagebeforechange 绑定到整个 jquery mobile 文档 而不是单个页面 谁能解释为什么this http jsfiddle net kenw232 HYzYJ 不起作用 div data role page
  • 什么算作解析请求?

    由于条款的更改 Parse 现在限制了每秒的请求数量 这是一件好事 但是 Parse Push 和 Parse Analytics 算作请求吗 每当您通过 iOS Android JavaScript Windows Xamarin Uni
  • 在非 Metro 应用程序中使用自定义 Windows 运行时组件

    想象一个场景 您有一个复杂的 WinRT 代码框架 您希望从 C Metro 应用程序和 C 桌面应用程序访问该框架 有没有办法将 WinMD 包含在非 Metro 应用程序中 UPDATE 这仅适用于 Windows 8 Microsof