我们试图提供一个解决方案来使用Chef为客户端管理Windows2012服务器,但不幸的是,chef-client运行失败并显示Chef::Exceptions::WindowsNotAdmin:cannotgetthesecurityinformationforduetomissingAdministratorprivileges异常(exception)。这有点奇怪,因为我们已经确认我们用于远程管理服务器的域帐户是Administrators组的成员。我们能够使用它来管理同一域中的其他服务器。此外,当我们通过远程桌面使用域帐户连接到服务器,以管理员身份启动PowerShell并启动
我看到了这个函数,想知道如何调用它。我可能想编写一个组件并将此函数导出到COM客户端,因此我想填充一个安全的字符串数组(其他自动化类型也可以)。所以我想利用ATL智能类。这是我目前拥有的,一个控制台应用程序。#include"pch.h"#include//inpch.h...//#include"windows.h"//#include"comutil.h"//#include"atlbase.h"//#include//#include"atlsafe.h"intmain(){LCIDgermany(7);LPOLESTR*rgp;HRESULThr;hr=::GetAltMont
我们在Windows环境中,希望为非公司机器自动执行此过程。如果供应商来到现场,我们希望能够让他/她访问一个可以对工作站进行快速扫描的网站,以确定他们是否有正确的MSKB补丁以及他们的病毒扫描数据是否符合要求日期。我可以相对轻松地扫描KB更新,我很难找到一种检查病毒数据状态的方法,而且由于那里有很多不同的引擎,使用(至少内置于XP中)专有的MS安全中心内容。最终,我们希望我们的路由器将非公司机器重定向到一个强制验证的网站,但在那之前,这将是一个手动过程。有什么想法吗? 最佳答案 在WindowsVista中,有一些新的API可以与安
我即将开始在几个SWF中使用LocalConnections让它们相互交谈。但在我开始这条路之前,我需要确保它不会导致系统出现任何弹出窗口和确认对话框。如果我使用本地套接字服务器,这会导致Windows防火墙和许多其他防火墙标记它并要求确认。所以如果LocalConnection使用套接字,那么我就不能使用它。但我通过一些网络搜索了解到它实际上使用共享内存工作,这不会导致任何防火墙提示。任何使用过LocalConnection的人都可以确认或否认它会导致主机操作系统出现问题吗?特别是对于Win7/Vista。 最佳答案 我已经使用L
我有一个WCF服务,用于配置托管在将用于维护数据库的Windows服务中的内容。有什么方法可以访问托管服务内的WCF服务吗?或者我应该将数据库功能移动到另一个WCF服务并将它们都托管在Windows服务中吗? 最佳答案 服务类(实现服务接口(interface)的类)有一个属性OperationContext.Current.Host它使您可以访问托管您的服务的ServiceHost实例。您可以很容易地访问该服务主机。没有内置方法可以超越服务主机并操纵或查询包含服务主机的NT服务。但是您始终可以创建自己的自定义ServiceHost
我有一个由进程加载和文件锁定的dll,我想用更新的版本更新它。我正在寻找一种替代方法来终止进程以在更新dll之前释放文件锁。现有的事件进程仍然使用旧版本是可以的,只要新实例化的进程采用新逻辑即可。似乎我可以简单地重命名/移动dll,并且实时进程似乎仍然运行良好。这样做安全吗?如果dll的代码已经加载到进程中,为什么还需要锁定dll? 最佳答案 移动任何随机应用程序使用的所有dll并不总是可以的。某些应用程序,如asp.net,使用影子副本概念,它们实际复制dll并使用副本让您可以自由修改原始文件。在asp.net的情况下,如果您修改
我有一个用C++实现的(某种)数据库。现在我想创建一个Windows服务来查询它,因为P调用它不是一个选项,因为每次查询都必须加载数据库,这需要几分钟。但是我面临几个问题:如何在VS2010中创建C++Windows服务?模板已被删除(为什么???),我可以使用2008模板并转换它吗?如果是:我在哪里可以找到这样的模板?假设我设法创建了一个C++Windows服务:我可以通过哪些选项与该服务(来自csharp)进行通信?有什么优点/缺点?我很乐意提供任何提示!本 最佳答案 不知道为什么,模板真的没有了。对于您的应用程序和服务之间的通
我正在尝试从加载我的DLL的进程中获取消息。我试过:SetWindowsHookEx(WH_CALLWNDPROC,(HOOKPROC)WndProc,hInstance,0);这给了我关于“程序X无法启动,因为系统中缺少Y.dll”的错误弹出窗口。这就是我在标题中加上“安全”的原因。我也试过:SetWindowsHookEx(WH_CALLWNDPROC,(HOOKPROC)WndProc,hInstance,threadId);threadId是我的DLLMain中GetCurrentThreadId()的结果。这个有效,但我没有收到任何窗口消息(只有一堆512和1025)。
我在Windows8上使用HyperV,并希望能够通过命名管道与虚拟串行端口通信。我给管道选择了一个名称,它可以很好地与虚拟操作系统(在我的例子中是XP)串行端口通信,但由于PipeSecurity设置,只能在管理员用户下进行通信。现在我希望能够在由Hyper-V创建的命名管道上为每个人提供完全控制权。以编程方式或可能使用某些HyperV设置。我需要能够作为普通用户与虚拟操作系统进行通信。我知道如何在我自己使用NamedPipeServerStream和PipeSecurity对象创建的命名管道上设置特定的安全性。我主要使用C#,但我看到有像SetSecurityInfo这样的C++A
我正在为Windows编写一段C++代码,需要查询进程及其每个单独线程的计时。为了进行必要的系统调用,我需要进程及其每个线程的句柄。我正在使用getCurrentProcess和getCurrentThread函数,它们都返回一个伪句柄。经过进一步检查,我注意到所有线程的伪句柄共享相同的值。在互联网上简单搜索后,我发现以下文章报告了与我得到的进程和线程伪句柄相同的值:https://weseetips.wordpress.com/2008/03/26/getcurrentthread-returns-pseudo-handle-not-the-real-handle/我的问题:从一个线