使用关联的提供者创建 Pico 进程

Posted

技术标签:

【中文标题】使用关联的提供者创建 Pico 进程【英文标题】:Create Pico process with associated provider 【发布时间】:2018-09-25 11:56:10 【问题描述】:

我最近开始研究 Pico 进程的主题(请参阅 here 和 here)。我也开始阅读Windows Internals 7th Edition Part 1这本书。

如书中所述,目前没有可用于创建自定义 Pico 进程和提供程序的 API。但是,我认为可以从内核驱动程序中创建 Pico 进程或提供程序,因为 Pico 进程的定义声明为:

[...] the idea of a Pico provider is defined, which is a custom kernel-mode driver that receives access to specialized kernel interfaces through the PsRegisterPicoProvider API. - Windows Internals 第 7 版第 1 部分,第 1 页。 68

不幸的是,在 Visual Studio 2015 中创建新的内核模式驱动程序时,就像描述的 here 一样,似乎没有任何可用的标头或接口允许创建 Pico 进程和提供程序。我似乎只能编写其他类型的 KMDF 项目。

目前是否有任何方法可供开发人员在 Windows 中创建和测试自定义 Pico 进程和提供程序?

【问题讨论】:

例如可以创建dll项目 【参考方案1】:

Martin Hron 几年前用 Pico Providers 写了一个小实验。在其中,他包含了一些程序集引用、头文件和外部 C 接口,其中包括 Pico Process 监控工具的驱动程序。我不确定他的代码是否仍然有效,但它可以让您深入了解您需要与之交互的标头和结构。

https://github.com/thinkcz/pico-toolbox

YMMV。

【讨论】:

以上是关于使用关联的提供者创建 Pico 进程的主要内容,如果未能解决你的问题,请参考以下文章

达人改造树莓派Pico 让鼠标在初代PS上运行

是否可以使用 c++ 获取与 WinCE 中指定进程关联的所有 Dll 的内存使用情况?

使用 processId 获取与进程关联的内存位置和空间

Windows进程

Pico Neo 3教程丨开发者工具:实时监控工具(Metrics Tool)

Android面试四大组件之内容提供者ContentProvider