草庐IT

API管理

全部标签

c++ - 强制资源管理器重新加载注册表值

这个问题在这里已经有了答案:UpdateExplorerconfigurationwithoutrestartingit(1个回答)关闭5年前。我正在尝试用C++编写一些隐藏我的C驱动器的代码。我已阅读此链接:https://technet.microsoft.com/en-us/library/cc938267.aspx如果我重新启动“explorer.exe”进程,它的工作就很好了。我正在寻找另一种方法来强制资源管理器重新加载他的注册表值并在不重新启动资源管理器的情况下隐藏我的设备。我尝试使用RegFlushKey()函数,但它对我不起作用。有什么想法吗?

python - 停止 python 进程,以便上下文管理器仍然调用 __exit__ (在 Windows 中)

如何停止python进程,使任何事件的上下文管理器在关闭前优雅地调用它们的__exit__函数?我使用上下文管理器(__enter__()和__exit__())可靠安全地关闭与光学硬件的连接。这一直很有效,尽管我们现在开始执行运行数小时的例程。通常我们会在开始一个程序后不久意识到我们有一个错误,并且宁愿短暂地停止这个过程。我一直在运行PyCharm的代码,它允许您“停止”正在运行的进程。这似乎会立即终止进程,无论我是在调试还是在运行。__exit__函数似乎没有被调用。此外,控制硬件的计算机运行Windows,如果它以某种方式起作用的话。******确实在发挥作用。Macosx似乎调

java - 为什么我的应用程序放在 C :\Program Files on windows 10 but not on windows 7? 时需要管理员权限

我的JavaRCP应用程序(App.exe)最近从32位转换为64位。由于它是一个64位应用程序,我使用NSIS创建了一个安装程序,它将所有必需的文件与App.exe一起转储到C:\ProgramFiles中。当App.exe运行时,当应用程序试图在编辑模式下打开文件(在C:\ProgramFiles中)以转储结果/日志时,我收到安全异常(访问被拒绝)。当我以管理员身份运行App.exe时,它工作正常。即使在非管理员模式下运行,它在Windows764位机器上也能正常工作。知道如何在非管理员模式下运行App.exe吗?Note:ThisisnottheproblemofNSISassa

windows - 管理员模式与非管理员模式 - 无法覆盖变量,因为变量已被优化

在今天的一些测试中,我遇到了一个意想不到的问题,我不明白为什么会这样。下面是我用来复制问题的代码。这只是更大项目的一小部分。如果有帮助,正在对Windows10Build1709进行测试PS1文件和BAT文件同名导致错误的方法通过右键单击-使用PowerShell运行运行PS1文件会导致错误在非管理员模式下打开PowerShellISE,然后打开/运行脚本会导致错误以管理员或非管理员身份运行BAT文件将导致错误避免错误的方法在管理员模式下打开PowerShellISE,然后打开/运行脚本不会导致错误在最后两行代码的变量前添加Script:,无论脚本如何执行,都不会报错使用VSCode,

c# - 在任务管理器的应用程序选项卡中设置应用程序名称

我有一个用C#为.NET3.5编写的WinForms应用程序,它需要在任务管理器的应用程序选项卡中显示特定名称。但是,我需要此文本与表单的文本不同。到目前为止,我看到的行为是任务管理器应用程序选项卡将显示正在显示的System.Windows.Forms.Form的Text属性的值。但是,我想在Form.Text属性中显示应用程序的长名称,并在任务管理器的应用程序选项卡中使用缩写名称。我知道VB6支持此行为,其中应用程序标题(通过项目属性->制作选项卡->应用程序标题字段设置,或在.VBP文件本身中设置)将是应用程序选项卡中显示的名称。有没有办法在C#/.NET中复制此功能?来自MSD

windows - 如何使用 Win32::API 调用 Win32 DLL void** 参数?

我有一个要从Perl调用的WindowsDLL。导出函数的原型(prototype)是:int__stdcallfunc(constchar*,int,int,int,double,double,void**);最后一个参数返回指向函数中分配的对象的指针。perl代码–my$dll_path="../stage/test_dll.dll";my$dll_func=newWin32::API($dll_path,'func','PIIIDDP','I');my$data="testsomethinghere";my$pResult=0;my$rc=$dll_func->Call($dat

c# - 提升进程以管理员身份运行不起作用

将进程提升为以管理员身份运行是行不通的。如果我从提升的命令提示符运行该应用程序,它运行良好。但是我下面的代码没有。Processsetupws=newProcess();setupws.StartInfo.FileName=@"setupws.exe";setupws.StartInfo.Verb="runas";setupws.StartInfo.UseShellExecute=true;setupws.Start();setupws.WaitForExit();setupws.exe文件运行良好,只是没有以管理员身份运行。我做错了什么?谢谢附言。我还在我的app.manifest文

windows - 将 Win32 API WndProc Key 消息从一个窗口传输到另一个窗口

我正在使用C++为WindowsMobile开发,但我遇到了一个问题-我添加了我的窗口类,在其中我使用WndProc实现进行键盘输入。问题是我得到了错误的代码,并且错误地识别了诸如func键之类的键,更糟糕的是,我得到的值(WM_KEYDOWN的wParam>消息)作为我在这里测试的两部手机之间的不同值-谁知道其他手机会发生什么。在玩了很久之后,我发现如果我只从预定义的“EDIT”类,我实际上确实得到了正确的输入(就字母/键而言)。所以问题一定不是出在手机上,而是出在接收消息的方式上(win32有点小白,知识匮乏请见谅)。我尝试使用输入模式,但使用EM_NUMBERS等向我的窗口发送消

windows - 如何判断另一个进程是否有事件的前台窗口? (Win32 API vb.net)

user32.dll提供了从进程可执行名称中获取进程id的函数,我还可以获得用户正在工作的事件窗口或前景窗口。我可以确定目标进程打开了哪些窗口吗?否则,我能否找出打开前台/事件窗口的进程的详细信息?我的代码只需要在另一个特定进程正在运行并且用户正在主动使用该窗口时运行,而该窗口是桌面上的事件窗口、前景窗口和当前焦点窗口。 最佳答案 我想你想使用GetWindowThreadProcessId或者可能EnumThreadWindows 关于windows-如何判断另一个进程是否有事件的前台

windows - sendenput API 能否模拟键盘按键在一段时间内被按住?

我的应用程序需要模拟在一段时间内按下某个键。我不知道有多少次。我可以为此使用sendenputAPI吗? 最佳答案 SendInput可以用INPUTstructures触发事件包括KEYBDINPUT.KEYBDINPUT可以使用虚拟键或扫描代码指定按键弹起和按键事件。因此,您想使用SendInput两次:在开始时发送一个按键按下事件,在结束时发送一个按键弹起事件。 关于windows-sendenputAPI能否模拟键盘按键在一段时间内被按住?,我们在StackOverflow上找到