有人能告诉我如何在C#中挂钩/覆盖DirectX游戏吗?
我尝试让一个全屏的C#窗口重叠在游戏上,但它不起作用。经过一些研究,我发现需要挂钩游戏,然后再显示C#窗口。
有人能解释一下我应该如何做吗? 我能在DirectX游戏上显示一个C#表格吗?
(声明:我在这家公司工作)
您可以尝试我们的Deviare API,它具有从C#中钩取COM对象的功能。 这是一组COM对象,可从任何支持COM的编程语言中使用。提供了一篇带有源代码的文章,展示如何捕获视频并添加叠加层:instrumenting Direct3D applications to capture video and calculate FPS
COM Spy Console和Direct Sound Capture是两个示例,实现了一个控制台来钩取像DirectX这样的COM对象。
希望对您有所帮助。
因为 C# 没有直接访问 DirectX,所以这可能会有些棘手。
根据我的有限理解:
DirectX Hook 包括附加到 DirectX 上下文并操作它,这可能需要干扰其他程序的内存,最适合使用 C/C++。
不过我可能是错的,然而这是一个高级主题,我的直觉告诉我,在 .NET 下可能会遇到问题。