草庐IT

进程注入

全部标签

c++ - 是否可以与另一个进程共享现有的 RAM block ?

背景我有一个现有的32位应用程序,它分配了相当大的RAM(>128MB)block(通过malloc/new)并填充了一些图像数据(多帧值)。应用程序的插件可以通过SDK-API调用访问指向这blockRAM开头的只读指针(constchar*)。其他API调用可用于检索元数据,例如宽度/高度/位深度等。在SDK-API调用之外,我无法/几乎无法控制此应用程序。我还有另一个64位应用程序(在我的控制下),它需要上述数据作为输入,并且由于保证64位进程的上采样/3D体积重建需要更多的RAM。问题我希望与64位进程共享映射到32位进程中此现有指针的物理内存(最初不是通过CreateFile

c++ - 在 Windows 上使用 MPI 时在进程之间共享数据

我已经进行了大量测试,试图在两个MPI主机上的多个独立运行的程序之间使用名为共享内存的窗口。结果是具有管理员权限的MPI没有Windows权限来访问全局\共享内存。如果MPI要启动EXE,它们是否会被视为子进程,Windows会允许对它们进行内存访问吗?其中一个进程包含DirectX,直接将DirectX合并到MPI程序中似乎很麻烦,因此我将它们保留为独立的EXE。以前在Intel的表格上询问过IntelMPI的windows特权,但尚未找到解决方案。(https://software.intel.com/en-us/forums/intel-clusters-and-hpc-tech

c++ - 如何获取 Windows 进程的当前音频输出级别?

我希望这是有道理的,我不确定我应该怎么说这个...您好,我正在尝试编写一个能够监控某些进程的音频输出的程序。我很难找到一种方法来真正做到这一点。我只能找到获取当前音量级别的方法,而不是实际输出级别。我一直在通过Stackoverflow进行搜索,但我发现的所有内容都只能获取程序的音量控制级别(如Windows音量混合器中的slider,但我基本上是想获取blender)我基本上想每隔x毫秒检查一次程序的输出级别,如果它高于某个阈值,则运行一个方法来做某事。我怎样才能做到这一点?谢谢!快速编辑清楚:Win7+withC++ 最佳答案

c++ - 从 32 位进程获取 64 位进程内存的入口点

我想获取我从32位进程编写的64位进程的入口点,就像您使用EnumProcessModule并获取主模块的内存地址一样。我的最终目标是从我的64位进程中的内存中读取一个字节,从它的偏移量(entry+Offset)。但是我的NtWow64ReadVirtualMemory64函数一直失败。我认为这与我的入口内存地址有关。#definePROC_BASIC_INFO0#defineNT_WOW64_QUERY_INFORMATION_PROCESS_64_NAME"NtWow64QueryInformationProcess64"#defineNT_WOW64_READ_VIRTUAL_

windows - 重定向 ShellExecute 的进程标准输出(或其他提升和重定向的方式)

这个问题在这里已经有了答案:UsingShellExecuteExandcapturingstandardin/out/err(5个答案)关闭5年前。我正在使用裸机Win32Api。我需要以提升的权限启动应用程序并且应用程序没有list。因此,唯一的方法是将ShellExecuteEx与runAs动词一起使用。它有效,但我需要阅读进程标准输出。通过CreateProcess,我得到了STARTUPINFO,我可以使用它来传输进程标准输出。但是ShellExecuteEx没有这样的API。那么,如何提升和重定向标准输出?

c# - 计算在特定用户登录下运行的单个进程的所有实例的最佳方法是什么?

我了解如何使用Mutex来限制应用程序一次只能运行一个实例。但是,在我的应用程序中,我允许多个实例同时运行,但我需要一种方法来计算和/或列出给定用户的所有正在运行的实例,而不管可执行文件是否已重命名。可以在这里使用Mutex还是进程类可以做到这一点?我知道如何使用进程类按名称列出进程,但如果exe已被用户重命名怎么办?如何最好地处理这个问题?编辑:为了我的目的,事实证明仅仅能够计算同一应用程序的其他实例而不是列出它们就足够了。为了对它们进行计数,我使用了一个命名信号量。//Initializethesemaphorewithaninitialvalueof10000andamaximu

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

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

python - 如何等待子进程的启动?

我执行一个进程(使用Popen),过了一会儿,这个进程执行了一个子进程。我要做的是等待子进程生成,然后继续执行我的脚本。我发现的唯一方法是使用psutil并轮询直到进程有子进程。process=psutil.Process(subprocess.Popen(command).pid)while0==len(process.children()):time.sleep(0.2)有比轮询child更好的方法吗?也许在等待一些事件?我为此使用Windows10。 最佳答案 根据您的评论,您可以让正在吃午餐的进程在启动其子进程时向STDOU

windows - 是否可以使用 Electron js 跟踪 Windows 中的进程?

我想使用ElectronJS框架构建一个Windows应用程序。主要功能是在Windows中监视用户的进程列表。例如,如果应用程序找到example.exe,它将在我的服务器上发出api请求。现在我找不到任何具体信息如何使用Electron进行操作。谁能告诉我在这种情况下开始使用Electron是否有意义?谢谢。 最佳答案 Nowican'tfindanyspecificinformationhowexactlyitispossibletodowithElectron.那是因为您需要特定于Electron的解决方案。Electron

c - Windows - 如何清理进程异常终止留下的共享内存对象?

我遇到了一个问题,进程异常终止,因此一些共享资源(BaseNamedObjects)未被进程释放。CreateFileMapping函数返回ERROR_ALREADY_EXISTS表示共享内存已经存在。通过CreateFileMapping获取ERROR_ALREADY_EXISTS后返回一个句柄。所以我有以下与上述情况相关的查询:我们可以使用这个返回的句柄执行清理吗?我们可以使用CreateFileMapping返回的句柄吗?如何清理这样的共享内存对象? 最佳答案 返回的句柄对您继续使用是完全有效的,使用完毕后请关闭该句柄。但是,