草庐IT

Microsoft零信任

全部标签

c++ - MSBuild:VS2010 中 native C++ 项目的 Custom.After.Microsoft.Common.targets

我读过“Custom.Before.Microsoft.Common.targets”和“Custom.After.Microsoft.Common.targets”的使用,以便在每个项目构建之前/之后执行自定义目标,我会喜欢在我们的TeamCity构建服务器上构建时使用此技术来更改版本信息。问题是,虽然它适用于C#项目,但它似乎不适用于nativeC++项目。在深入研究Microsoft.Cpp.targets文件后,我发现对于nativeC++项目,这似乎是通过设置$(ForceImportBeforeCppTargets)和$(ForceImportAfterCppTargets

c++ - new[] 表达式不遵守 Microsoft VC++ 中的对齐方式

如果使用new[]表达式来创建具有析构函数的对象数组,数组中的对象可能没有正确对齐#include#include#pragmapack(8)structA{int64_ti;chardummy;~A(){}};intmain(){A*pa=newA[2];printf("sizeof(A)=%d,pointer=%p",sizeof(A),pa);}(我用VC++2010express构建32位目标)输出(在我的电脑上)是:sizeof(A)=16pointer=00344f4c(sizeof(A)=16表明编译器理解A的对齐要求并且该结构用7个字节填充[编辑:__alignof(A

AI发展方向 可解释AI理论 发明与发现 AI智能可解释它的原理吗? 理解不了就难以信任 没有意图更安全?

发明与发现只有我们刻意设计,并清晰了解其运作原理的东西才是发明。例如,望远镜是发明,但通过望远镜看到木星,知道它有自己的卫星,这是一个发现。大语言模型更像是发现。我们经常为它们的能力感到惊奇。它们并不是设计出来的产物。至于AI对人类生存的潜在危害,贝索斯展示出乐观的态度:我们人类有很多种方法让我们自己灭亡。这些技术有可能帮助我们不去做这些事,反倒会救了我们。将大型语言模型(如ChatGPT)视为一种“发现”是一个有趣的观点。确实,这些模型的运作和能力在很多方面超出了设计者的直接控制和预期,展示了学习和自适应的能力,有时甚至会展现出设计者未预见的行为。然而,这些模型的基本框架和算法仍是人类设计和

c++ - 为什么 Microsoft 在其 DirectX10 管道变量中使用 "g_"命名约定?

Microsoft的DirectXSDK中的大多数示例代码都包含使用g_前缀作为WindowsAPI变量的变量,以及DirectX管道变量,例如交换链。以下是一些示例:D3D10_DRIVER_TYPEg_driverType;ID3D10Device*g_pd3dDevice;IDXGISwapChain*g_pSwapChain;ID3D10RenderTargetView*g_pRenderTargetView;ID3D10Effect*g_pEffect;ID3D10EffectTechnique*g_pTechnique;ID3D10InputLayout*g_pVertex

c++ - Microsoft _s 函数,它们现在是 C++ 标准的一部分吗?

我最近刚将我的IDE更改为来自MSVC++6的MSVisualStudio2005,我收到了很多弃用警告。我没有忽略警告,而是开始将它们更改为_s等价物。但是,我随后发现这些是仅限Microsoft的实现。我在某处读到他们正在插入这些成为标准的一部分。是吗?使用这些_s函数是个好主意吗?还是我应该使用其他东西?谢谢。 最佳答案 *_s()函数不是C标准的一部分,但是有一份待定的“技术报告”建议添加它们(我不确定TR中的例程是否与Microsoft的完全相同,或者只是相似)。TR24731-1:C库扩展第I部分:边界检查接口(inte

c++ - 信任返回值优化

您如何着手使用返回值优化?在任何情况下我都可以信任现代编译器使用优化,还是我应该始终采取安全的方式并返回某种类型的指针/使用引用作为参数?是否有已知的无法进行返回值优化的情况?,在我看来,返回值优化对于编译器来说执行起来相当容易。 最佳答案 只要启用编译器优化(在大多数编译器中,即使优化被禁用),RVO也会发生。NRVO稍微不太常见,但大多数编译器也会执行此优化,至少在启用优化时是这样。你是对的,优化对于编译器来说相当容易执行,这就是编译器几乎总是这样做的原因。唯一“无法实现”的情况是优化不适用的情况:RVO仅在您返回未命名的临时文

c++ - 如何从 C API 在其自己的环境中执行不受信任的 Lua 文件

我想通过调用lua_setfenv()在自己的环境中执行不受信任的.lua文件这样它就不会影响我的任何代码。虽然该函数的文档只解释了如何调用函数,但没有解释如何执行文件。目前要运行我使用的文件:interror=luaL_loadfile(mState,path.c_str())||lua_pcall(mState,0,0,0);我是否必须使用lua_setfenv从CAPI调用“dofile”lua函数,还是有更优雅的方式来实现? 最佳答案 请参阅sandboxing的Lua用户Wiki上的讨论。,以及更一般的话题scriptse

.NET CORE,N层应用程序,如果服务层对Microsoft.extensions.options.dll具有依赖性

直接问题是:microsoft.extensions.options.ioptions是否仅在伞应用程序的上下文(在这种情况下为Web应用程序)或类库中使用?例子:在N层ASP.NET核心应用中,我们拥有的服务层取决于来自来自的某些设置appsettings.json文件。我们首先从startup.cs中的这些线开始的东西:services.Configure(options=>{options.OptionProperty1=Configuration["OptionXSection:OptionXProperty"];});然后在服务构造函数中:ServiceConstructor(IOp

使用Microsoft Graph Client SDK您如何使用搜索ODATA查询

使用MicrosoftGraphClientSDK,如果主题或身体包含某个搜索词,则如何使用搜索ODATA查询查找。$searchodata查询参数可在GraphClientAPI中获得,但是我找不到如何使用客户端SDK来使用C#的client参数。看答案您可以通过传递在列表中添加任何查询参数QueryOptions到Request方法。Listoptions=newList{newQueryOption("$search","lunch")};varmessages=awaitclient.Me.Messages.Request(options).GetAsync();文档:https://

c++ - 可以阻止单个应用程序的 Microsoft 错误报告吗?

我们有一个非托管C++应用程序,它利用第3方API来读取CAD文件。在某些损坏的CAD文件上,第3方库崩溃并导致我们的EXE崩溃。因此,我们的主应用程序是一个单独的EXE,这样它就不会受到崩溃的影响。但是,我们最终会遇到恼人的Microsoft错误报告对话框。我不想在系统范围内禁用Microsoft错误报告。有没有办法关闭单个应用程序的错误报告,这样如果它崩溃了,它会静默崩溃而不会弹出错误对话框? 最佳答案 在Vista及更高版本上,WerAddExcludedApplicationAPI函数可用于从错误报告中排除指定的应用程序可执