我做了个com+组件,就是中间服务层,主要是提供数据。在其中的一个方法中,调用了一个动态库。这个动态库又涉及另外一个数据库查询。我如果只是通过regsvr32注册,没有问题,但是如果我在windows2000中注册它。调用这个方法就会返回数据库访问错误的提示。

解决方案 »

  1.   

    windows2000中的组件服务注册,就有问题
      

  2.   

    在组件服务中配置你的COM+应用程序,标识页选择指定用户,并输入有访问数据库权限的用户名及密码
      

  3.   

    谢谢大家的支持。但是还是没有搞定。com+里的用户是指访问该组件的用户。而我的另外一个动态库是访问的另外一台机器上的数据库。
      

  4.   

    在COM+中调用DLL应该没有什么问题,我现在一直都是这么做的,不过有一点你必须得注意。在COM+中调用DLL时,调试与正试运行时调用DLL的路径是不同的。调试时与COM+同目录即可,但是在正式运行时最好放到C:\winnt\system32下面去。第二点是,COM+最好注册到组件服务中,因为直接注册,有可能出现COM+不会去调用DLL或者是部份接口无法正常工作的现象,另一个就是在WIN2003中无法工作。