English 中文(简体)
转机功能电话和HANDLE型返回(Windows C++)
原标题:Out of proc function call and HANDLE type returned (Windows C++)

我需要从运行在较低特权模式(NT AUTHORITY Network service)的其他进程(IIS7 模块工作进程)调用一个函数,使用最大特权(NT AUTHORITY System),这些进程都在同一台本地计算机上运行。

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

(职能:LogonUser http://msdn.microsoft.com/en-us/library/a378184(VS.85).aspx

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

问题回答

句柄不能跨会话边界使用。我不100%确定所有类型的句柄是否可以跨进程边界使用。

例如,最好使用管道通知正在使用提升特权的其他进程获取自己的句柄并执行所需的操作。

关于哪种方式是最好的沟通方法,这要看你确切的需求和你在每种方法上的经验水平。

只是提供信息,Windows中的HANDLE只是一个32位整数值。它不是指向内存位置的指针。

您不能将句柄传递给另一个进程,因为句柄是进程本地的。但是,您可以使用DuplicateHandle来创建您的句柄的克隆,供另一个进程使用。只有另一个进程能使用该副本。另一个进程负责调用CloseHandle





相关问题
Session Management with Windows Authentication

In an ASP.NET web app, using Integrated Windows Authentication, is the session tied to the windows identity? In other words, if I login (using IWA) to the app, and the app stores some "stuff" in my ...

Using Elmah with Cassini

Does anyone know if I can use Elmah with Visual Studio build-in web server(aka Cassini)? I get it working easily on IIS, but using same configuration, it doesn t work with Cassini. When I requested ...

Setting hostname in IIS, include www?

I want to set the hostname for a website I m adding in IIS 7, however do I include the www in the hostname or not? because I want both www.mysite.com and mysite.com both to point to mysite on the ...

inetpub versus any other folder

I ve run websites out of inetpub, as well as from folders just residing on the C: drive. I wonder, are there any definitive advantages to running websites out of inetputwwwroot?

IIS 6.0 hangs when serving a web-service

I am having issues with one of our web-services. It works fine on my development machine (win XP) whether I host it as a separate application or using cassini from Visual studio. Once I deploy on the ...

热门标签