c++ - 进程外函数调用和返回的 HANDLE 类型 (Windows C++)

标签 c++ windows iis com+

我需要使用最大权限 (NT AUTHORY\System) 从在同一台本地计算机上运行的其他进程(IIS7 模块工作进程)以低得多的特权模式(NT AUTHORY\Network 服务)调用一个函数。

IIS 模块将调用该函数传递一些文本(用户名),该函数需要返回 HADNLE 类型,该函数将在使用 CloseHandle 函数处理后关闭。

(函数:LogonUser http://msdn.microsoft.com/en-us/library/aa378184(VS.85).aspx)

最好的方法是什么? COM+、共享内存、命名管道?我在这个编程方面没有任何经验,所以我需要一些帮助。我不知道如何使用命名管道传递句柄类型? (我只看到仅传递基于文本的消息,而不传递指针或其他数据类型的示例)。

最佳答案

句柄不能跨 session 边界使用。而且我不是 100% 确定它可以跨进程边界用于所有类型的句柄。

例如,最好使用管道通知其他以提升的权限运行的进程获取它自己的句柄并执行您想要的任何操作。

至于什么是进行沟通的最佳方法,这实际上取决于您的确切需求以及您在每种方式中的确切经验水平。

关于c++ - 进程外函数调用和返回的 HANDLE 类型 (Windows C++),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2284020/

相关文章:

c++ - 如何在具有不同命名空间的派生 C++ 类中初始化模板静态成员

c++ - 如何从 2d Boost.MultiArray 中获取子数组?

string - 为什么 CALL SET 在 CMD Windows 和 .CMD 文件中的工作方式不同?

windows - 为什么文档中的这个简单的 imageMagick 命令不起作用?

iis - seo 工具包 - robots.txt 规则不允许请求

c# - 从 C# 调用托管 C++ 时出现编译错误

java - JVM如何执行JNI

python - 在没有 Pywin32 的 Python 中检测 Vista/7 上的符号链接(symbolic link)(mklink)

iis - Azure 网站上的 503 错误(服务不可用)

iis - Amazon EC2 多域