草庐IT

安全局

全部标签

c++ - GlobalMemoryStatusEx 线程安全吗?

来自MSDNpage:“GlobalMemoryStatusEx函数返回的信息是易变的。不能保证对该函数的两次连续调用将返回相同的信息。”这是有道理的,但是我无法确定这是否是线程安全的。有人确定知道一种或另一种方式吗?我已尝试使用谷歌搜索,但找不到此信息。 最佳答案 MSDN页面上说的是函数返回的信息是随时间变化的:这就是“volatile”的意思。例如,GetSystemTime返回的信息也是“易变的”。关于过程的其他不同概念是“可重入”和“线程安全”。可重入意味着过程使用的信息依赖于局部变量,而不是全局变量,这可以解释为线程安全

c# - 如何将 XAML 元素作为全局变量绑定(bind)到 App.XAML.CS?

我想更改来自不同类(页面)的图像源,包括设置弹出按钮我承认我必须将图像作为全局变量。但无法弄清楚该怎么做。还有其他办法吗? 最佳答案 由于您希望更改影响所有页面-共享View模型是您的最佳选择。首先创建您的View模型类:usingSystem;usingSystem.ComponentModel;usingSystem.Runtime.CompilerServices;namespaceApp.ViewModel{publicsealedclassMyViewModel:INotifyPropertyChanged{#region

c++ - 假设任何 x86 编译的应用程序总是在 x64 版本下运行是否安全?

是否可以安全地假设任何x86编译的应用总是在编译该应用的同一操作系统的x64版本下运行?/p>据我所知,对于Windows操作系统,答案是"is"。Windowsx86仿真层也是出于同样的目的而构建的。但是,我只想再次确认这里的专家。Unix、Linux呢?有什么注意事项吗? 最佳答案 不,要运行x86代码,它需要在兼容或传统模式下运行。如果操作系统不支持在兼容模式下运行进程,程序很可能无法运行。Linux和IFAIKWindows目前支持兼容模式,看起来还有更多或多或少的支持。我的理解是NETBSD需要一个特殊的模块来支持它,因此

跨 DLL 的 C++ 全局变量

我写了一些东西来模拟Windows应用程序的getopt.h库,其中一部分是全局变量。当我将程序编译为单个应用程序时,这工作得很好;然而,当我分离出getopt库并链接到它时,我的程序开始出现段错误。对此进行调查,似乎从DLL外部访问变量不起作用并返回无效指针;我能做些什么来解决这个问题吗?编辑:如果我在调试器的DLL中输入一个函数,该变量具有正确的值-直接从应用程序访问它会得到不同的值。 最佳答案 可能发生的情况是您没有正确设置dllexport/dllimport。结果是您最终得到同一变量的不同拷贝。(一个在DLL里面,一个在外

.net - WCF wsHttpBinding 的 Windows 身份验证有多安全?

我创建了WCF,并使用wsHttpBinding和MTOM作为消息传输,并将身份验证作为“Windows”。现在我的服务不是当前安全的,它是纯HTTP,在自定义端口上运行。WCF的wsHttpBinding的Windows身份验证安全吗?任何人都可以通过网络跟踪看到或猜测密码吗?环境信息:托管在互联网上没有ActiveDirectory,只有一个服务器使用服务器的管理员用户名和密码从我的办公室连接在客户端,配置文件中没有提到密码,它是在运行时输入的。它可以正常工作,因为输入错误的凭据也会返回某种安全异常。在自定义端口89上运行.NET4.0,目前我在我的自定义Windows服务的app

php - 安全疑惑求助(PHP MYSQL APACHE Windows)

例如我有这个网址:http://localhost/miSite/uploads/通过做:http://localhost/miSite/uploads/../includes/,这会导致目录(包含)linsting。如果你能告诉我解决这个问题的方法就太好了。 最佳答案 目录索引您还可以使用.htaccess来禁用索引或目录浏览。默认情况下,此选项在服务器的配置文件中处于打开状态。要禁用此功能,请将此行添加到您的.htaccess文件中:选项-索引 关于php-安全疑惑求助(PHPMYS

c++ - Windows 操作系统中的线程安全和原子读取

我的应用程序中有这段代码。我怀疑它不是线程安全的,因此决定询问SOers。int*volatileint_ptr;intcount;线程1:voidgrow(intnew_count){if(new_count线程2:intget_value(intindex){returnint_ptr[index];}我知道可以使用CRITICAL_SECTION,但线程1可能一周运行一次,而线程2一天运行数百万次。在99.99999%的访问int_ptr的尝试中,第二个线程将白白进入和退出临界区。这对我来说没有意义。该应用程序只能在Windows2000和更高版本的Intel处理器(显然是多核处

c - c中的全局键盘 Hook

我想写一个全局键盘钩子(Hook)来禁止任务切换。当我用谷歌搜索时,我在c#、cpp(和delphi)中找到了很多代码,但我需要一些关于钩子(Hook)的基本概念(最好是例子在C中)。因此,请建议可以帮助我从C的角度理解事物的资源和链接。PS:我找到了一个不错的workingexample(适用于winXP和旧版本),但是当我尝试编译代码时,它给了我:我尝试在所有header中搜索“IDC_”常量(MinGWgcc安装附带的默认header和开发人员提供的header),但没有运气......如果有人可以编译代码并使其运行请帮助我。我没有在这里上传源代码本身,因为有一些头文件依赖项,在

windows - 在 Windows 命令中使用密码参数是否安全?

假设我们有一个可以接受密码(或其他敏感信息)参数的程序或脚本:>program.exe/password:secret对于Linux,最佳实践通常建议反对直接在命令行上指定密码,因为存在潜在的安全问题(密码可能出现在shell的历史文件和系统的进程表中):$./program.sh--password'secret'&[1]4152$cat/proc/4152/cmdline/bin/sh./program.sh--passwordsecret但是,在四处搜索时,我没有看到针对Windows的同样强烈的推荐。在为Windows编写程序和脚本时,除了命令行选项的参数之外,我们是否应该提供

.net - 文件的安全流更新

我们通过将新记录写入临时文件来执行大型文本文件的更新,然后用临时文件替换旧文件。一个大大简化的版本:vartpath=Path.GetTempFileName();try{using(varsf=newStreamReader(sourcepath))using(vartf=newStreamWriter(tpath)){stringline;while((line=sf.ReadLine())!=null)tf.WriteLine(UpdateLine(line));}File.Delete(sourcepath);File.Move(tpath,sourcepath);}catch