C++ 凭据提供程序和系统服务之间的IPC

C++ 凭据提供程序和系统服务之间的IPC,c++,windows-7,credentials,credential-providers,C++,Windows 7,Credentials,Credential Providers,从系统服务与自定义凭据提供程序通信的最佳方式是什么? 是否可以通过信息泵发送信息? 我可以使用命名管道吗? 任何建议都将不胜感激。凭证提供程序在用户会话中运行,而系统服务在系统会话中运行。据我所知,这排除了Windows消息。消息还需要创建一个窗口,并且进程需要一个消息泵,而服务通常不需要消息泵 我建议用命名管道。系统服务可以创建管道并侦听它。凭据提供程序的任何实例都会连接,然后可以发送消息。并非所有凭据提供程序都会在用户会话中调用。查看我的到期日,在工作站登录、解锁场景(以及登录或解锁期间的密

从系统服务与自定义凭据提供程序通信的最佳方式是什么? 是否可以通过信息泵发送信息? 我可以使用命名管道吗?
任何建议都将不胜感激。

凭证提供程序在用户会话中运行,而系统服务在系统会话中运行。据我所知,这排除了Windows消息。消息还需要创建一个窗口,并且进程需要一个消息泵,而服务通常不需要消息泵


我建议用命名管道。系统服务可以创建管道并侦听它。凭据提供程序的任何实例都会连接,然后可以发送消息。

并非所有凭据提供程序都会在用户会话中调用。查看我的到期日,在工作站登录、解锁场景(以及登录或解锁期间的密码更改场景)和UAC场景中,凭证提供程序会相应地被LogonUI.exe和approve.exe调用,并具有LocalSystem权限。在远程桌面连接和网络共享资源查看场景的场景中,凭证提供程序会相应地被mstsc.exe和explorer.exe调用,并具有当前登录用户的权限。