草庐IT

safe-area-inset

全部标签

c - SetupDiGetDeviceRegistryProperty : "The data area passed to a system call is too small" error

我有一个使用SetupAPI在WindowsXP上枚举USB设备的代码:HDEVINFOhDevInfo=SetupDiGetClassDevs(&_DEVINTERFACE_USB_DEVICE,0,0,DIGCF_DEVICEINTERFACE|DIGCF_PRESENT);for(DWORDi=0;;++i){SP_DEVINFO_DATAdevInfo;devInfo.cbSize=sizeof(SP_DEVINFO_DATA);BOOLsucc=SetupDiEnumDeviceInfo(hDevInfo,i,&devInfo);if(GetLastError()==ERRO

c# - 我可以以编程方式将外部 exe 标记为 "safe to run (Unknown publisher)"吗?

所以我有自己的应用程序“main.exe”。在一些安全级别较高的计算机上,它会因为“未知发布者”而显示警告。我正试图“绕过”它。现在我知道正确的方法是签署程序集购买证书并成为知名发布者然后它不会显示此警告,但证书并不便宜。我的问题是,有没有一种方法可以运行我将在vb.net/C#中构建的不同的exe(如安装程序),这将以某种方式标记我的应用程序“main.exe”作为“安全运行”或“可信”?因此它将在所有计算机中运行而不会出现警告消息。重要说明-“安装程序”将以管理员权限运行。 最佳答案 经过大量尝试,我找到了一个非常好的解决方法!

c# - 如何制作从 C# "Thread-safe"调用的 C (P/invoke) 代码

我有一些使用单个全局变量的简单C代码。显然这不是线程安全的,所以当我在C#中使用P/invoke从多个线程调用它时,事情就搞砸了。如何为每个线程单独导入此函数,或使其成为线程安全的?我尝试声明变量__declspec(thread),但这导致程序崩溃。我还尝试制作一个C++/CLI类,但它不允许成员函数是__declspec(naked),我需要(我正在使用内联汇编)。我在编写多线程C++代码方面经验不足,因此可能缺少某些内容。下面是一些示例代码:C#[DllImport("MyDll.dll",CallingConvention=CallingConvention.Cdecl)]pu

c# - "thread-safe type"到底是什么?我们什么时候需要使用 "lock"语句呢?

我阅读了所有关于线程安全类型和“锁定”语句的文档,但我仍然没有100%理解它。具体什么时候需要使用“lock”语句?它与(非)线程安全类型有何关系?谢谢。 最佳答案 想象一个类的实例,里面有一个全局变量。想象一下,两个线程同时对该对象调用一个方法,并且该方法更新内部的全局变量。变量中的值很可能会被破坏。不同的语言和编译器/解释器会以不同的方式处理这个问题(或者根本不处理......)但关键是你会得到“不希望的”和“不可预测的”结果。现在假设该方法在尝试读取或写入变量之前获得变量的“锁”。第一个调用该方法的线程将获得变量的“锁”,第二

c# - 无法将类型为 'ASP._Page_Areas_Admin__ViewStart_cshtml' 的对象转换为类型 'System.Web.WebPages.StartPage'

我创建了一个名为“Admin”的区域。在/Areas/Admin/Views/中,我有_ViewStart.cshtml:@{Layout="~/Areas/Admin/Views/Shared/_Layout.cshtml";}当我访问/Admin/中的页面时出现以下错误:无法将类型为“ASP._Page_Areas_Admin__ViewStart_cshtml”的对象转换为类型“System.Web.WebPages.StartPage”。我根据HowdoIuseacommon_ViewStartinareas?进行了建议的更改.我在根目录下的web.config中有这个,在/A

c# - 诊断 ObjectDisposedException "Safe handle has been closed"

我有一个C#应用程序,它正在使用消息命中ObjectDisposedExceptionSafehandlehasbeenclosed我一启动应用程序就会发生这种情况。遗憾的是,堆栈跟踪确实没有帮助(见下文)。我有什么办法可以确定这里正在异步尝试调用什么?DoAsyncCall()真的意味着异步方法调用吗?mscorlib.dll!System.Threading.EventWaitHandle.Set()+0xebytesmscorlib.dll!System.Runtime.Remoting.Messaging.AsyncResult.SyncProcessMessage(Syste

#ubuntu# #git# repository git config --global --add safe.directory

ubuntu克隆下源码对其操作时git时偶发性报错 fatal:detecteddubiousownershipinrepository并提示可以:gitconfig--global--addsafe.directory/目录我们按提示执行确实可以短暂避免该问题,但治标不治本,且文件很多时需要一个个敲命令。产生这一问题的本质原因是下载代码的所有权没有转移,即你下载了别人的代码(一般使用docker下载后,本地编译容易出现),别人声明该代码所有权。所以,在修改代码时会报以上问题。因此,我们需要做的并不是声称哪目录是安全的,而是要将代码所有权转移。  使用以下命令将代码所有权转移gitconfig

javascript - 如何编写接受回调函数的函数并以 'safe' 方式运行它?

我想写这样一个函数:functiondoGoodJob(someId,callBackfunction){//somestuffwithsomeId//todo:RUNcallBackFunctionhere}他们说eval在代码注入(inject)方面是“危险的”。那么,编写接受回调函数并安全运行的JavaScript函数的最佳实践是什么? 最佳答案 您的回调是字符串还是实际函数?如果它是一个函数..functiondoGoodJob(someId,callbackFunction){callbackFunction();}doG

javascript - Backbone 和 TypeScript,一段不幸的婚姻 : Building a type-safe "get"?

我正在尝试将TypeScript与Backbone.js结合使用。它“有效”,但是Backbone的get()和set()失去了大部分类型安全。我正在尝试编写一个可以恢复类型安全的辅助方法。像这样:我会把它放在我的模型中:object():IMyModel{returnattributes;//exceptIshoulduseget(),notattributes,perdocumentation}这在消费者中:varmyVar=this.model.object().MyProperty;通过这种语法,我得到了TypeScript的知识,即MyProperty存在并且是bool,这太

JavaScript 完全 "tamper safe"变量

所以,问题来了。我有这样的东西://Dangerous__hostObjectthatmakesrequestsbypassing//thesame-originpolicyexposedfromothercode.(function(){vardanger=__hostObject;})();delete__hostOBject;我知道没有脚本可以篡改或访问__hostObject是否绝对安全?(如果可以,我有一个CSRFvulnerability或更糟。)注意1:这是一个浏览器扩展。我有比页面上运行的其他脚本更好的钩子(Hook)。我先于他们执行,甚至在他们加载之前就完成了。注意2