windows下创建新的进程是是否可是指定其会话id(sid)? 如题 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 问题具体一点好..用ID标识进程本身就不是一个好的选择.因为这个进程ID不属于某一个进程,当这个进程消亡的时候,该ID有可能被操作系统分配给其他的进程,那么先前那个ID对应的进程就已经更换掉了..呵呵 我现在的问题是server做成了系统服务,运行起来后进程的会话id为0,客户端的会话id为1(客户端要在com库中查找server实现的一个com对象,貌似是由于会话id不同所以查找不到),访问不到服务器。所以我想让server创建进程时的会话id也变成1……有什么办法么? BOOL CreateProcessAsUser( HANDLE hToken, LPCTSTR lpApplicationName, LPTSTR lpCommandLine, LPSECURITY_ATTRIBUTES lpProcessAttributes, LPSECURITY_ATTRIBUTES lpThreadAttributes, BOOL bInheritHandles, DWORD dwCreationFlags, LPVOID lpEnvironment, LPCTSTR lpCurrentDirectory, LPSTARTUPINFO lpStartupInfo, LPPROCESS_INFORMATION lpProcessInformation); com对象本来就在不同进程之间可以通信,不需要会话id一样,客户端通过CoCreateInstance直接获得com对象 我的server在后台运行,运行过程中使用了CoRegisterClassObject对类厂进行了注册,当有client连接时就不会再创建一个server进程了,而是直接用已经注册的类厂对象创建com对象。可是当server以服务的形式运行时,client连接服务器还是会再创建一个server进程,这时任务管理器中有两个server进程,唯一区别就是会话id,一个是0一个是1。client进程的会话id为1,似乎是由于不在同一个会话中,所以会话id为0的server对client不可见。如果server不作为服务启动,而是以普通程序启动的话,server进程的会话id为1,这时无论多少个client连接server都不会创建新的server进程。不知道是不是这个原因…… 我推断确实是会话id的问题,不过还没确定。至少我要达到的效果已经可以实现了,结帖先~如果和我有同样问题的可以参考下面这个链接http://www.codeproject.com/KB/vista-security/VistaSessions.aspx感谢sys0006和oyljerry http://msdn.microsoft.com/zh-cn/library/ee663077.aspx参考Session 0阻隔详细说明 哪位好心人帮我看下这段程序好吗? 关于数据实时保存、调用的几个问题 GDI+ 中 如何避免DrawString 画出半个字 我想做一个过滤u盘读或写的驱动,应该看些什么呢? 怎么样访问不同类的变量 向高手问一个简单问题!谢谢 怎样才能Control Box中的一项中输入字符?? 使用ATL做COM组件的几个疑问 数据传递与显示问题? UltraEdit 请问为什么会出现error LNK2001: unresolved external symbol __imp__send@16.............的问题 DefWindowProc能否在内存位图上绘制控件背景
所以我想让server创建进程时的会话id也变成1……有什么办法么?
BOOL CreateProcessAsUser(
HANDLE hToken,
LPCTSTR lpApplicationName,
LPTSTR lpCommandLine,
LPSECURITY_ATTRIBUTES lpProcessAttributes,
LPSECURITY_ATTRIBUTES lpThreadAttributes,
BOOL bInheritHandles,
DWORD dwCreationFlags,
LPVOID lpEnvironment,
LPCTSTR lpCurrentDirectory,
LPSTARTUPINFO lpStartupInfo,
LPPROCESS_INFORMATION lpProcessInformation
);
如果和我有同样问题的可以参考下面这个链接
http://www.codeproject.com/KB/vista-security/VistaSessions.aspx
感谢sys0006和oyljerry
参考Session 0阻隔详细说明