首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >C++/WinRT natvis在新安装中不工作

C++/WinRT natvis在新安装中不工作
EN

Stack Overflow用户
提问于 2020-12-03 22:00:46
回答 1查看 292关注 0票数 1

我怎么能麻烦-拍这个?

我将this question中的natvis示例与C++/WinRT控制台模板结合起来,并成功地获得了Matrix2d工作的natvis,而不是Uri

代码语言:javascript
运行
AI代码解释
复制
#include "pch.h"

using namespace winrt;
using namespace Windows::Foundation;

struct Matrix2d
{
    Matrix2d(int r, int c) : m_numRows(r), m_numCols(c), m_elements(r* c, 0) {}
    // Column first ordered elements
    std::vector<int> m_elements;
    int m_numRows;
    int m_numCols;
};


int main()
{
    init_apartment();
    Uri uri(L"http://aka.ms/cppwinrt");
    Matrix2d g(4, 3);

    printf("Hello, %ls!\n", uri.AbsoluteUri().c_str());
}

我不确定natvis文件cppwinrt将产生什么(.natvis或.pdb)以及它们将位于何处。

下面是Natvis调试输出。它显示只有我的自定义Natvis文件(\ConsoleApplication2\ConsoleApplication2\NatvisFile.natvis)和系统范围内的Natvis文件(%VSINSTALLDIR%\Common7\Packages\Debugger\Visualizers)正在加载。

Studio\2019\Community\Common7\Packages\Debugger\Visualizers\atlmfc.natvis.:解析

文件: C:\Program (x86)\MicrosoftNatvis:解析natvis文件: C:\Program (x86)\Microsoft Visual Studio\2019\Community\Common7\Packages\Debugger\Visualizers\concurrency.natvis.Natvis:解析natvis文件: C:\Program (x86)\Microsoft Visual Studio\2019\Community\Common7\Packages\Debugger\Visualizers\cpp_rest.natvis.Natvis:解析natvis文件: C:\Program (x86)\Microsoft Visual Studio\2019\Community\Common7\Packages\Debugger\Visualizers\ObjectiveC.natvis.Natvis:解析natvis文件: C:\Program (x86)\Microsoft Visual Studio\2019\Community\Common7\Packages\Debugger\Visualizers\stl.natvis.Natvis:解析natvis文件: C:\Program (x86)\Microsoft Visual Studio\2019\Community\Common7\Packages\Debugger\Visualizers\Windows.Data.Json.natvis.Natvis:解析natvis文件: C:\Program (x86)\Microsoft Visual Studio\2019\Community\Common7\Packages\Debugger\Visualizers\windows.devices.geolocation.natvis.Natvis:解析natvis文件: C:\Program (x86)\Microsoft Visual Studio\2019\Community\Common7\Packages\Debugger\Visualizers\windows.devices.sensors.natvis.Natvis:解析natvis文件: C:\Program (x86)\Microsoft Visual Studio\2019\Community\Common7\Packages\Debugger\Visualizers\windows.media.natvis.Natvis:解析natvis文件: C:\Program (x86)\Microsoft Visual Studio\2019\Community\Common7\Packages\Debugger\Visualizers\windows.natvis.Natvis:解析natvis文件: C:\Program (x86)\Microsoft Visual Studio\2019\Community\Common7\Packages\Debugger\Visualizers\winrt.natvis.Natvis:解析natvis文件: C:\Users\a\source\repos\ConsoleApplication2\ConsoleApplication2\NatvisFile.natvis.Natvis:忽略ConsoleApplication2.pdb中的NatvisFile.natvis;加载的项目中已经存在同名的文件。Natvis: C:\Users\a\source\repos\ConsoleApplication2\ConsoleApplication2\NatvisFile.natvis(17,6):成功地在上下文'Matrix2d‘中解析了表达式'0’。Natvis: C:\Users\a\source\repos\ConsoleApplication2\ConsoleApplication2\NatvisFile.natvis(18,6):成功地在上下文'Matrix2d‘中解析了表达式'i < m_numRows’。Natvis: C:\Program (x86)\Microsoft Visual x86成功地解析了上下文类型为'std::vector‘的表达式'_Mypair._Myval2._Myend - _Mypair._Myval2._Myfirst’。Natvis: C:\Program (x86)\Microsoft Visual x86成功地解析了上下文类型为'std::vector‘的表达式'_Mypair._Myval2._Mylast - _Mypair._Myval2._Myfirst’。Natvis: C:\Program (x86)\Microsoft Visual Studio\2019\Community\Common7\Packages\Debugger\Visualizers\stl.natvis(1064,29):成功地在上下文类型'std::vector中解析了表达式'size()‘。Natvis: C:\Program (x86)\Microsoft Visual Studio\2019\Community\Common7\Packages\Debugger\Visualizers\stl.natvis(1066,52):成功地解析了上下文类型为'std::vector‘的表达式“能力()”。Natvis: C:\Program (x86)\Microsoft Visual x86成功地在上下文'std::vector‘中解析了表达式'_Mypair’。Natvis: C:\Program (x86)\Microsoft Visual Studio\2019\Community\Common7\Packages\Debugger\Visualizers\stl.natvis(1069,15):成功地在上下文类型'std::vector中解析了表达式'size()‘。Natvis: C:\Program (x86)\Microsoft Visual x86成功地在上下文'std::vector‘中解析了表达式'_Mypair._Myval2._Myfirst’。Natvis: C:\Users\a\source\repos\ConsoleApplication2\ConsoleApplication2\NatvisFile.natvis(19,23):成功地在上下文'Matrix2d‘中解析了表达式'&m_elementsi * m_numCols,m_numColsna’。Natvis: C:\Users\a\source\repos\ConsoleApplication2\ConsoleApplication2\NatvisFile.natvis(19,8):成功地在上下文'Matrix2d‘中解析了表达式'i’。Natvis: C:\Users\a\source\repos\ConsoleApplication2\ConsoleApplication2\NatvisFile.natvis(20,12):成功地在上下文'Matrix2d‘中解析了表达式'++i’。

这是新安装的Windows 10和VS19 (16.8.2)。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-12-07 02:50:31

看起来cppwinrt团队已经从v6插件中删除了Visualizer:

从V6 #792 - https://github.com/microsoft/cppwinrt/pull/792中删除Visualizer

我不知道为什么他们决定移除Visualizer,但我设法让Visualizer再次工作了

https://github.com/microsoft/cppwinrt

  • add“调用.nuget\nuget.exe还原vsix\vsix.sln”到"build_vsix.cmd“,否则,我在步骤4中出现了一个错误:一些nuget包是missing.

  • create,文件"build_vsix.cmd“使用2019年开发人员prompt.

  • remove (当前的C++/WinRT插件),并安装创建的插件(at ./v6/bin/x86/

/ )

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/65138675

复制
相关文章
C++都从事哪些工作能挣钱不?
java大行其道的今天我们来谈谈c++,现在学c++的人越来越少了。问题在哪?互联网盛行的年代,能吸引眼球的就是能赚钱的。所以一看招聘,发现做java开发是抢手货,起步价比c++高。 再则学习c++难度都比其它语言较高。而它的学习难度,太复杂性。现在c++的使用范围比以前已经少了很多,java、C#、python等语言在很多方面已经可以代替c++。但是也有很多地方是其他语言完全无法替代的,主要集中在需要运行效率比较高的行业,比如游戏、高效的服务器,网络等。 一、游戏开发 游戏开发都有哪些,引擎开发(
程序员互动联盟
2018/03/15
2.8K0
C++都从事哪些工作能挣钱不?
不找C++的工作,为什么要学习C++?
许多学编程的认为,特别是新手会觉得:“我又不找c语言的工作,需不需要学c语言?”,就象“我又不找C语言的工作,应不应该学c++”一样;我觉得答案不源于你做不做C++的工作,而取决于你做不做程序编程行业的工作。
诸葛青云
2019/09/11
2.2K0
不找C++的工作,为什么要学习C++?
WinRT app guide
Creating a WinRT application step by step: From idea to publishing WinRT app guide: Step 1: The idea WinRT app guide: Step 2: The Plan WinRT app guide: Step 3: Creating the basic UI WinRT app guide: Step 4: Adding RadControls for WinRT/Metro WinRT app guid
张善友
2018/01/30
5780
WinRT:WebAuthenticationBroker For OAuth认证
之前开发过QQ互联的OAuth 的.NET/Mono/Windows Phone SDK,具体可以 QQ互联OAuth2.0 .NET SDK 发布以及网站QQ登陆示例代码。到了Windows 8的Metro 程序如何使用QQ互联的API呢,今天做了一些实验性的代码验证。使用OAuth的最大挑战就是获得AccessToken,在OAuth的一个App AccessToken从本质上来说就是用户的验证登陆和用户的权限授权,获取到用户的accessToken后,就可以使用AccessToken 对REST AP
张善友
2018/01/22
6420
WinRT:WebAuthenticationBroker For OAuth认证
WPF 不安装 WindowsAppSDK 使用 WinRT 功能的方法
安装 Microsoft.WindowsAppSDK 库会限制应用程序只能分发 windows 10 应用,如果自己的应用程序依然需要兼容 Win7 等旧系统,那直接采用安装 WindowsAppSDK 方法将会丧失兼容旧系统能力。本文和大家介绍无需安装 Microsoft.WindowsAppSDK 即可使用 WinRT 功能的方法,此方法可以让应用程序继续兼容旧系统,可以在应用程序内判断系统版本之后自行决定调用 WinRT 功能
林德熙
2023/04/27
5320
UE4在vscode环境中开发调试
Engine\Extras\UnrealVS\VS* 目录下vsix文件,双击运行安装
sofu456
2022/05/06
2K0
UE4在vscode环境中开发调试
为啥await在forEach中不生效?
前两天要写循环遍历请求接口,于是就在forEach中用到了await,但是根本不是我想要的啊!
用户3258338
2019/10/29
2.6K0
Windows Runtime(WinRT) 揭秘
看了个BUILD的PPT,Windows Runtime (RT)并不是一些新闻网站说的那样微软自废.NET武功,而是恰恰相反,WinRT是Win32API的现代版,其中有很深的.NET的基因,是Metro UI的.NET基础,如果考察Metadata的变化,WinRT的API定义的元数据是基于标准ECMA 335,也就是.NET的标准 ,WinRT也是一个沙箱的环境,针对AppStore环境设计的。 视频 基础知识 微软以推出Windows 8为契机,以解决Windows长期存在的问题,并带来了新的用户界
张善友
2018/01/22
1.2K0
【Rust日报】2020-06-08 - Rust/WinRT快速入门
Apache Benchmark style http bench tool written in async rust.
MikeLoveRust
2020/06/11
7310
Windows凭据不工作
如果不是敲错IP、用户名、密码,报凭据不工作,一般情况下执行这几句命令后重启远程服务就正常了
Windows技术交流
2021/06/15
6.2K0
UE4 vscode
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
sofu456
2019/10/22
3.1K2
UE4 vscode
C++尝鲜:在C++中实现​​​LINQ!
导语 | 在正式分析libunifex之前,我们需要了解一部分它依赖的基础机制,方便我们更容易的理解它的实现。本篇介绍的主要内容是关于c++ linq的,可能很多读者对c++的linq实现会比较陌生,但说到C#的linq,大家可能马上就能对应上了。没错,c++的linq就是在c++下实现类似C# linq的机制,本身其实就是在定义一个特殊的DSL,相关的机制已经被使用在c++20的ranges库,以及不知道何时会正式推出的execution库中,作为它们实现的基础之一。本篇我们主要围绕已进入标准的range
腾讯云开发者
2022/06/24
2K0
C++尝鲜:在C++中实现​​​LINQ!
在C++中调用Python
虽然现在Python编程语言十分的火爆,但是实际上非要用一门语言去完成所有的任务,并不是说不可以,而是不合适。在一些特定的、对于性能要求比较高的场景,还是需要用到传统的C++来进行编程的。但是C++的一个缺点是比较难找到很好的轮子,这也是很多人专用Python的一个重要原因。这篇文章我们要介绍的是一个比较特殊的场景——用C++的代码去调用Python函数中实现的一些功能。这样的话,如果代码的主体还是用C++完成的,而部分功能为了简便,引入一些Python中已经封装好的函数,这样就可以很好的结合两种语言各自的特点。而另一种工作方式:通过Python来调用一些C++或者Fortran中实现的高性能函数,可以参考这一篇博客。这两种不同的使用方法各有优劣,但是如果以Python为主导,就很难避开GIL的问题,这里我们就不过多的展开。
DechinPhy
2021/05/27
4.3K0
C++中fstream_在使用中
C++中处理文件类似于处理标准输入和标准输出。类ifstream、ofstream和fstream分别从类 istream、ostream和iostream派生而来。作为派生的类,它们继承了插入和提取运算符(以及其他成员函数),还有与文件一起使用的成员和构造函数。可将文件<fstream> 包括进来以使用任何fstream。如果只执行输入,使用ifstream类;如果只执行输出,使用 ofstream类;如果要对流执行输入和输出,使用fstream类。可以将文件名称用作构造函数参数。
全栈程序员站长
2022/10/02
5.7K0
C++中fstream_在使用中
PageHelper在SpringBoot的@PostConstruct中不生效
在使用PageHelper的过程中,出现了一个很奇怪的问题,假设在数据库中存放有30条Country记录,我们用下面的方法使用PageHelper进行分页查询,那么我们希望得到的page.size是10。
翎野君
2023/05/12
1K0
您的凭据不工作 之前用于连接到******的凭据无法工作。请输入新凭据。
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/huyuyang6688/article/details/49077665
DannyHoo
2018/09/13
57.4K6
您的凭据不工作 之前用于连接到******的凭据无法工作。请输入新凭据。
await 只在 async 函数中工作
关于 promise 的一种更优雅的写法 async/await 中,await 只会出现在 async 函数中,我们使用 async/await 时,几乎不需要 .then,因为 await 为我们处理等待;但是在代码的顶层,当我们在 async 函数的外部时,我们在语法上是不能使用 await 的,所以通常添加 .then/catch 去处理最终结果或者 error。
前端开发博客
2020/11/04
1.5K0
await 只在 async 函数中工作
在IT开发中工作种类的分类
可能很多同学在学习python之前都听说过什么:前端程序员,后端程序员,安全工程师,运维,爬虫,全栈程序员等等各种各样的头衔名称,搞得大家都不知道该怎么选择了。我当初学编程之前也有过类似的经历,所以这里我尽可能给大家解释明白。
python自学网
2021/11/27
9890
在IT开发中工作种类的分类
为什么不建议在 Docker 中跑 MySQL?
—1— 前言 容器的定义:容器是为了解决“在切换运行环境时,如何保证软件能够正常运行”这一问题。 目前,容器和 Docker 依旧是技术领域最热门的词语,无状态的服务容器化已经是大势所趋,同时也带来了一个热点问题被大家所争论不以:数据库 MySQL 是否需要容器化? 认真分析大家的各种观点,发现赞同者仅仅是从容器优势的角度来阐述 MySQL 需要容器化,几乎没有什么业务场景进行验证自己的观点;反过来再看反对者,他们从性能、数据安全等多个因素进行阐述 MySQL不需要容器化,也举证了一些不适合的业务场景。下
玄姐谈AGI
2022/03/03
3.6K0
为什么不建议在 Docker 中跑 MySQL?
点击上方“芋道源码”,选择“设为星标” 管她前浪,还是后浪? 能浪的浪,才是好浪! 每天 10:33 更新文章,每天掉亿点点头发... 源码精品专栏 原创 | Java 2021 超神之路,很肝~ 中文详细注释的开源项目 RPC 框架 Dubbo 源码解析 网络应用框架 Netty 源码解析 消息中间件 RocketMQ 源码解析 数据库中间件 Sharding-JDBC 和 MyCAT 源码解析 作业调度中间件 Elastic-Job 源码解析 分布式事务中间件 TCC-Transaction
芋道源码
2022/03/04
4.2K0

相似问题

Visual & Natvis不工作

37

WinRT GetGeopositionAsync在JavaScript中工作,而不是在C++中?

16

Winrt滚动条不工作

10

CanvasDrawingSession.DrawSvg()在C++/winrt中能工作吗?

10

在C++/WinRT中实现ICustomProperty

11
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档