草庐IT

AD安全管理

全部标签

c# - 如何制作具有用于管理它的任务托盘图标的 Windows 服务?

这个问题在这里已经有了答案:HowcanIdisplayasystemtrayiconforC#windowservice.?(2个答案)关闭3年前。我熟悉编写Windows服务应用程序。我已经使用各种方法编写了一些-第三方库、.NET提供的方法等。不过,我以前的服务应用程序都没有任何方式与它们交互。我现在需要编写一个Windows服务应用程序,但它需要一个任务托盘图标,当您单击它时可能会弹出一个“管理GUI”。执行此操作的合适模式是什么?服务是否应该是它自己的应用程序,但能够通过外部方式与之交互——也许是它轮询配置更改的数据库?它应该使用IPC还是什么?有没有办法使Windows服务

c# - 在小型 .NET 程序中管理临时文件

我的问题是关于在小型.NET程序中处理临时文件。该程序/实用程序仅使用两个URL执行以下操作:DownloadeachURLtoastring(WebClient.DownloadString).Saveeachstringtoatemporaryfile.CallWinMerge(Process.Start)todiffthetwofiles(inread-onlymodeforbothfiles).我目前拥有可能可行的最简单的东西:saveURL1towindows/temp/leftFileToDiff.txtsaveURL2towindows/temp/rightFileToD

windows - 没有管理员权限的用户的独立 Mercurial(或其他 SCM)客户端?

我没有我的电脑的管理员权限,但想使用Mercurial(不同的SCM也可以)来跟踪更改。我安装了Mercurial,但无法安装TortoiseHg,因为我没有管理员权限。是否有不需要(直接或通过依赖项)管理员权限的替代方案?附言我正在寻找一个独立的应用程序(即,我不想要像Eclipse这样的IDE的插件)。 最佳答案 我真的发现我从来没有使用GUI来处理Mercurial,即使我有一个像样的可用(即TortoiseHg)——命令行界面非常好,你可以启用graphlog扩展来查看ascii-终端中存储库的艺术图。

c++ - 在多个线程之间安全地共享一个结构

在Windows/C++下,如果我有一个结构:structListItem{ListItem*next;ListItem*prev;...}连同在主进程和几个动态加载的DLL中运行的多个线程,并且所有这些线程都需要共享上述结构,我如何阻止它们互相踩踏?像这样的东西:ListItem*list=...Alist->next=...B我应该在A和B处放置什么以防止一次运行list->next=...的线程不超过一个? 最佳答案 主要有两种方式。一种可能是最简单的方法是简单地向每个线程发送它自己的数据结构拷贝。这样您就不必使用同步来保护数

c# - 安全地将密码从 C# 传输到 Java 应用程序

我有一个C#应用程序,它调用许多java应用程序,其中一些应用程序使用SSH进行各种操作。目前,我从java命令行应用程序中收到许多弹出框,要求输入密码。我想知道您是否对我如何在C#中输入密码然后安全地将其传递给Java应用程序有任何具体建议。目前,我使用带有许多命令行参数的shellexec调用java应用程序。我唯一能想到的是以某种方式在C#中加密密码,然后在Java中解密。但我怀疑他们不共享一个共同的解密过程,或者如果他们共享我也必须在程序之间传递key......有什么建议吗?大卫 最佳答案 我认为加密是一个很好的解决方案。

windows - 资源管理器/Windows 任务栏在内部如何工作?

我正在尝试编写一个没有开始菜单和标准桌面的非常有限的任务栏替代品。但现在我想知道explorer.exe在内部是如何工作的。1.)任务栏如何捕获最小化窗口?2.)任务栏如何知道窗口何时打开或关闭等等?(有没有api?)3.)explorer.exe如何启用视觉样式?(如果它不运行,所有样式都被禁用,看起来像win9x) 最佳答案 查看MSDN库中的SetWindowsHookEx()文档。这里重要的钩子(Hook)类型是WH_SHELL。 关于windows-资源管理器/Windows任

windows - 防止以管理权限启动

目标:这听起来有点奇怪,但我必须防止软件以管理权限启动。问题:我有一个安装工具,可以很好地安装软件。完成后,安装程序会自行启动软件。由于设置工具以管理权限运行,因此设置后将自动启动的软件也是如此。但程序需要的所有设置,此时都不会被正确写入/读取,因为由于UAC虚拟化,配置目录与用户在没有管理权限的情况下拥有的配置目录不同。问题:如果父进程拥有管理权限,是否有任何方法可以将管理权限降级为用户权限。应用程序配置?启动参数?或者别的什么信息:我正在使用INNOSETUPbuild设置工具。谢谢你的帮助 最佳答案 只需设置runasorig

windows - 将我的角色服务包存储在 Azure blob 存储中有多安全?

Azure管理门户允许从之前上传到Azureblob存储的服务包部署服务。这看起来非常方便,但有点偏执-如果某些第三方访问blob存储并检索构成我的角色的可执行文件怎么办?在Azureblob存储中存储角色服务包的安全性如何?如果有的话,还有什么更好的选择? 最佳答案 有一些攻击向量可以进入blob存储,而您可以控制所有这些向量,因此由您来确保访问的安全。具体来说:将您的主要和次要key保护到存储帐户。丢失这些key会危及存储帐户。默认情况下,对blob存储的所有访问都必须经过身份验证。保护订阅的所有管理证书(私钥)。管理证书持有者

c++ - 在调用仿函数时删除它是否安全?

假设我有以下代码:typedefstd::functionfunc_type;voidsome_func(){//Irrelevantstuffhere.Mighttakesometime...}DWORDWINAPIthread_proc(LPVOIDlpParameter){func_type&func=*static_cast(lpParameter);func();return0;}intmain(){HANDLEhandle;{std::functionmy_func(some_func);handle=::CreateThread(NULL,0,&thread_proc,&

c++ - 惰性初始化缓存...如何使其成为线程安全的?

这就是我所拥有的:Windows服务C#多线程服务使用读写锁(一次多次读取,写入会阻塞其他读/写线程)一个简单的、自写的数据库C++足够小以适合内存足够大,不想在启动时加载它(例如10GB)读取性能非常重要写作不太重要树状结构树节点中的信息存储在文件中为了更快的性能,文件仅在第一次使用和缓存时加载延迟初始化以加快数据库启动速度由于数据库会非常频繁地访问这些节点信息(每秒几千次),而且我不经常写,所以我想使用某种双重检查锁定模式。我知道这里有很多关于双重检查锁定模式的问题,但似乎有很多不同的意见,所以我不知道什么是最适合我的情况。你会用我的设置做什么?这是一个例子:一棵有100万个节点的