我使用DCOM开发了一个三层应用,现在要发布给客户,
必须先在服务器上预先设定好Windows的用户名和密码,
然后在客户端的机器上用这些用户登录Windows,我的问题
是是不是这些用户名是必须的?因为用户喜欢直接用Administrator
登录系统,并且不同的机器有不同的Administrator密码,
能否去掉这样的限制?

解决方案 »

  1.   

    try this*******************************************************
    DCOM配置  如果在Windows NT环境下正常运行应用服务器,必须进行DCOM配置。配置方法如下:  1.运行NT服务器上的dcomcnfg程序,进行DCOM配置。  2.进入DCOM的总体默认属性页面,将“在这台计算机上启用分布式COM”打上勾,将默认
    身份级别改为“无”。  3.进入DCOM的总体默认安全机制页面,确认默认访问权限和默认启动权限中的默认值无EveryOne,
    如果不去掉EveryOne,应用服务器不能正常启动。  4.在常规页面中,双击你的应用服务器,打开你的应用服务器DCOM属性设置。  5.将常规页面中的身份验证级别改为“无”。  6.位置页面中选上“在这台计算机上运行应用程序”。  7.将安全性页面设置中,均选择“使用自定义访问权限”,编辑每一个权限,将EveryOne加入用
    户列表中。  8.身份标识页面中,选择“交互式用户”。  9.NT的GUEST用户不能禁用。
      

  2.   

    To del_c_sharp(摩托~◎~◎~◎) :
    我试过了,按照上面的方法进行配置,如果客户端以用户名“Alpha”
    登录Windows,而服务器Windows中没有这个用户,那么客户程序能够
    正确的连上服务器,原因可能是客户端使用guest帐号来访问服务器;
    但是如果客户端使用Administrator登录Windows的话,由于客户端和
    服务器端Administrator帐号的密码不同,所以无法正确的访问服务器,
    提示“Interface not supported”,如果把客户端Administrator的
    密码改成和服务器一致,则可以访问服务器,所以上述问题还是不能
    解决。谢谢!
      

  3.   

    ^_^ ~~~服务器把administrator用户删掉~~
      

  4.   

    你这样的想法,在dcom上是不能成功的,一些dcom的配置(包括李维说的),都是没用的。用socket吧。
      

  5.   

    哈哈哈哈,相当简单阿哥们,看来你对COM不熟悉,你用CoCreateInstanceEx创建对象,填充PServerInfo结构就可以了,把uid, pwd写在程序里不就好了,或写道ini或注册表里边,ok?
      

  6.   

    楼上midas里实例生成是封装起来的没有留出接口~~~
      

  7.   

    midas 如果利用Dcom,就是默认的setting,也就是只能利用当前登陆用户权限