草庐IT

Microsoft

全部标签

c++ - Kinect 2 - AcquireLatestFrame() 大部分时间都失败

下面给出了连续从Kinect2获取最新帧的C++代码。intmain(){setupKinect();acquireFrames();return0;}templateinlinestaticvoidsafeRelease(Interface*&interfaceToRelease){if(interfaceToRelease!=nullptr){interfaceToRelease->Release();interfaceToRelease=nullptr;}}voidacquireFrames(){while(true){if(bodyFrameReader!=nullptr){I

c++ - 我什么时候不希望在 Microsoft Visual Studio 中启用 “Control Flow Guard”?

引自MSDN:ControlFlowGuard(CFG)isahighly-optimizedplatformsecurityfeaturethatwascreatedtocombatmemorycorruptionvulnerabilities.Byplacingtightrestrictionsonwhereanapplicationcanexecutecodefrom,itmakesitmuchharderforexploitstoexecutearbitrarycodethroughvulnerabilitiessuchasbufferoverflows.Westronglye

c++ - Microsoft Visual Studio 2012 C++ 循环引用

我有一个问题要问。同一个解决方案下项目之间是否可以互相引用?例如,项目A和B都有自己的导出函数。项目A引用项目B,项目B引用项目A。两个项目都需要访问彼此导出的函数。从技术上讲,这可能吗? 最佳答案 从技术上讲,这是可能的,但它有问题。当您构建2个DLL时,DLLA需要B的lib文件,B需要A的lib文件。我们是这样实现的:首先项目A不依赖B,只有B依赖A。A导出2个函数funcA1和funcA2,同时我们可以构建DLLA,然后我们可以构建B并生成B.lib。因为我们有文件B.lib,所以我们可以让A依赖于B并添加代码以使用从B导出

c++ - MSBuild 使用错误的(平台)版本的 Tracker.exe

我正在使用VS2010(专业版)和VS2015Express。最近(可能是安装其他软件的结果)我所有的32位构建都开始失败TRACKER:错误TRK0002:无法执行命令:“"C:\ProgramFiles(x86)\MicrosoftVisualStudio10.0\VC\bin\CL.exe"@C:\Users....rsp"。句柄无效。(64位构建继续工作)问题似乎是MSBuild调用了64位版本的Tracker。Google告诉我其他人遇到了相反的问题,即64位构建得到相同的错误,而32位构建成功查看procmon我发现MSBUILD(1)打开注册表HKLM\SOFTWARE\

c++ - 为什么 Microsoft 的 std::string 实现需要堆栈上的 40 个字节?

最近看了thisvideo关于facebook的string实现,我很想看看Microsoft实现的内部结构。不幸的是,字符串文件(在%VisualStudioDirectory%/VC/include中)似乎不包含实际定义,而只是包含转换函数(例如atoi)和一些运算符重载。我决定从用户级程序中对它进行一些探索和研究。当然,我做的第一件事就是测试sizeof(std::string)。令我惊讶的是,std::string需要40个字节!(无论如何在64位机器上。)前面提到的视频详细介绍了facebook的实现如何只需要24个字节而gcc的实现需要32个字节,所以这至少可以说是令人震惊

c++ - msvc2010 - 如何建立一个干净的输出目录?

我在使用visualstudio2010时遇到问题,因为它现在在构建时使我的输出目录充满.pdb和其他文件。在以前版本的msvc中,我将中间目录设置为输出目录以外的其他目录,并在那里生成了.pdb文件(以及其他所有内容):$(IntDir)/$(ProjectName).pdb说。现在,在新版本的msvc中,它似乎仍然在那里构建.pdb,但出于某种我不知道的原因,还在我的输出目录中放置了一个.pdb文件(我不想要)。如果我设置增量链接,.ilk文件似乎也会发生同样的事情,但这不太重要,因为我可以禁用增量链接,但.pdb对于调试程序是必不可少的。我认为这是msvc中的一个错误,但我只在c

c++ - 在 Microsoft Windows 上安装 RQuantLib

我需要在MicrosoftWindows机器上安装R包RQuantLib。这个包没有二进制文件,所以我下载了tar源。我打开它,它包含QuantLibC++库。所以我需要编译这个包。我不想安装VisualStudio,我使用的是eclipseIDE。我可以使用编译器cygwin来编译RQuantLib包的C代码吗?R在我的Windows机器上是否可以使用生成的编译代码?谢谢你的帮助。 最佳答案 开始无耻的外挂我写了关于howtobuildRQuantLibonWindows在我的博客上。我没有用Cygwin试过,但你可以用MinGW

c++ - 如何为 C++ (MSVC 2008) 解决方案创建语言附属 DLL?

我们最终要本地化我们的应用程序,需要为字符串表创建附属DLL(从源代码中取出硬编码字符串需要一个月的时间)。我一直在查看MSDN和其他帮助,但我对实际构建语言DLL的机制感到很困惑。我们在EXE本身中有英文资源。根据我的理解,我们现在需要创建名为MyAPPXXX.dll的DLL项目。我不确定我们应该怎么做。是否只有一个资源/rc文件和文件中的不同部分,或者是否为每种语言复制了rc文件并替换了翻译?我在尝试按照我在其他地方看到的有关如何执行此操作的说明时迷路了。是否每种语言都需要一个DLL,或者我们是否有具有多种配置的同一个项目-如果是后者,如何完成?这是我读过的有关此内容的页面列表-但

c# Microsoft UI Automation

MicrosoftUIAutomation(UIA)是一种用于自动化Windows应用程序用户界面(UI)的框架。它允许开发人员编写自动化测试脚本、辅助技术应用程序和其他需要与应用程序交互的工具。以下是一些关于MicrosoftUIAutomation的重要信息:对象模型:UIA提供了一个层次化的对象模型,用于表示Windows应用程序的用户界面。每个UI元素都是一个可访问的对象,可以通过UIAAPI进行操作和检查。支持多种应用程序类型:UIA不仅支持传统的Win32应用程序,还支持现代的应用程序类型,如WPF、WinForms、Web应用程序以及一些第三方应用程序。辅助技术支持:UIA为辅助

c++ - VC++ 构建 directshow 基类

我是DirectXSDK、PlatfromSDK和DirectShow的新手。我下载了最新的PlatformSDK和DirectXSDKAugust'09。我试图在文件夹中构建示例项目:MicrosoftPlatformSDK\Samples\Multimedia\DirectShow\Capture\PlayCap\并且有以下构建错误:LINK:fatalerrorLNK1181:cannotopeninputfile'D:\ProgramFiles\MicrosoftPlatformSDK\samples\multimedia\directshow\baseclasses\WIN2