草庐IT

user_back_end_friends

全部标签

c++ - 如何在后台进程中处理来自 Windows 任务管理器的 "End Task"?

我编写了一个简单的测试程序(TestProgram.exe)来学习如何处理CTRL_CLOSE_EVENT,这是我的观察结果和我的问题:1)当我双击TestProgram.exe启动它时,如果我现在转到任务管理器,TestProgram.exe会列在“应用程序”下。当我在TestProgram.exe上执行“结束任务”时,将调用我的CTRL_CLOSE_EVENT处理程序。但是2)当我打开命令提示符并启动TestProgram.exe时,它​​列在任务管理器下的“后台进程”下,并且对其执行“结束任务”不会导致CTRL_CLOSE_EVENT。我的真实应用是按照上面案例2)中的描述使用的

windows - 在 Windows 中 : How do you programatically launch a process in administrator mode under another user context?

场景我有一台远程计算机,我想以编程方式在其上运行安装程序(任意可执行文件)。这些安装程序需要两件事:它们必须以管理员模式运行。它们必须在特定用户环境下运行(具体来说,是管理员组成员的本地用户)。事实证明这非常具有挑战性。似乎有一些外部工具可以执行此操作,但我正在寻找Windows附带的解决方案。这个问题的有效解决方案是什么样的从提升的上下文(例如,提升的批处理文件或可执行程序),有效的解决方案应该能够以编程方式在另一个用户上下文下以管理员模式启动进程。假设另一个用户的id和密码可用,并且另一个用户是Administrators组的成员。附加限制:有效的解决方案不能依赖外部工具。由于较新

c# - Windows 上的 OpenVPN --auth-user-pass FILE 选项

关闭。这个问题不符合StackOverflowguidelines.它目前不接受答案。这个问题似乎不是关于aspecificprogrammingproblem,asoftwarealgorithm,orsoftwaretoolsprimarilyusedbyprogrammers的.如果您认为这个问题是关于anotherStackExchangesite的主题,您可以发表评论,说明问题可能在哪里得到解答。关闭5年前。Improvethisquestion如果您尝试通过--auth-user-pass开关将用户名/密码从文件传递到OpenVPN,您会收到以下错误:"Sorry,'Aut

python 3.7 : How to get the Windows user Login Time?

我正在尝试使用Python3.7获取系统用户的登录时间。我已经尝试过win32net和Python的平台模块,但是平台模块中没有定义函数,Win32net与Python3等不兼容。我尝试了以下代码:importplatformplatform.uname()importplatformos_name=platform.uname()[0].lower()ifos_name=="windows":get_win_login_time()elifos_name.endswith("nix"):get_nix_login_time() 最佳答案

windows - 使用 PowerShell 重置 'Friendly Name' 证书属性

我需要一个证书的FriendlyName在证书控制台中设置为空值FriendlyName列将显示.使用此代码我所能得到的只是列中的空值,而不是我需要。gci"Cert:\LocalMachine\My"|?{$_.Subject-like"CN=mycer*"}|%{$_.FriendlyName=''}我也试过$_.FriendlyName=$null这没有什么区别。奇怪的事情-当我清除FriendlyName使用控制台,然后从Powershell的角度来看,该值为''因为以下语句会产生True:write-host($_.FriendlyName-eq'').然而,'''反之亦然应

C++ 模板化生产者-消费者 BlockingQueue,无界缓冲区 : How do I end elegantly?

我写了一个BlockingQueue来让两个线程进行通信。您可以说它遵循生产者-消费者模式,具有无限缓冲区。因此,我使用临界区和信号量实现它,如下所示:#pragmaonce#include"Semaphore.h"#include"Guard.h"#includenamespaceDRA{namespaceCommonCpp{templateclassBlockingQueue{CCriticalSectionm_csQueue;CSemaphorem_semElementCount;std::queuem_Queue;//ForbidcopyandassignmentBlockin

c# - 用于自动化的 User32 API 自定义 PostMessage

我想通过C#自动化一个名为Spotify的程序,(我认为)最好的方法是触发假按键。我想编程暂停播放,但我对这些东西的了解还不够多,无法找到按键以外的其他方法。所以我使用VisualStudio的Spy++查看按下键盘上的播放按钮时Spotify收到什么消息,我将该消息中的数据复制到我的控制台应用程序并运行它,当我运行时我可以在Spy++的消息记录中看到PostMessage,所以这是有效的,但它不会暂停/播放我的音乐。我想这是因为我还必须发送另一个带有另一个目的地的PostMessage,但我怎么知道还要发送什么?发布消息调用:MessageHelper.PostMessage((in

c++ - 在用户注销时删除 HKEY_CURRENT_USER 值

Windows服务在HKEY_CURRENT_USER注册表项下为每个登录用户创建一个注册表值(用于Excel加载项)(通过调用ImpersonateLoggedOnUser()和RegSetValueEx())。我需要在用户注销时删除此注册表值,包括系统关闭。如果它在注销时未被删除,并且软件被一个用户卸载,则注册表中的条目将保留在服务生命周期内登录的任何其他用户,这会导致每次Excel启动时显示消息框错误因为它正在尝试加载不再存在的加载项。考虑但拒绝了以下内容:SetConsoleCtrlHandler()因为没有迹象表明用户正在注销。REG_OPTION_VOLATILE因为它只在

C++ 中间函数 Hook : get register values and jump back [x86 assembly on windows]

在寄存器EBP中有一个int值,在EBX中有一个字符串。我需要在我自己的函数中从这些寄存器中获取值,对它们进行一些操作,最后跳回下面的一些代码。我在0x46AA17处对名为JmpHook的函数执行了一个JMP。voidJmpHook(){char*mystring;_asmmovmystring,ebxprintf("value:%s",mystring);_asm{jmp[0x46AA87]}}如您所见,我正在尝试将EBX处的字符串移动到mystring中,最后跳回0x46AA87,这是位于我的JMPJmpHook下方的几行。printf被调用并且mystring被输出,但所有这些在

windows - 如何从服务器正确识别 IE10 Metro 和 IE10 Desktop 以便发回 "finger friendly"或 "mouse friendly"接口(interface)?

我读到,由于两者之间的用户代理相同,推荐的方法是使用特征检测。这在某些情况下很好,您可能想要显示Flash视频/电影/应用程序而不是javascript幻灯片,但我的问题是根据用户的输入设备显示正确的界面。我的假设是,如果用户在“Metro”IE10中,他们可能希望使用手指而不是鼠标。既然如此,我想给他们一个带有大点击框的界面。我的问题:有没有办法区分并显示适当的界面?还是我坚持让用户通过我网站上设置cookie的链接手动切换模式? 最佳答案 仍然没有办法从残缺的MetroIE中检测到正常的IE,但你知道你可以在服务器上知道用户是否