INT WSAInstallServiceClass(LPWSASERVICECLASSINFO lpServiceClassInfo)函数的参数是
typedef struct _WSAServiceClassInfo {
    LPGUID              lpServiceClassId;
    LPWSTR              lpszServiceClassName;
    DWORD               dwCount;
    LPWSANSCLASSINFO  lpClassInfos;
} WSASERVICECLASSINFO, *PWSASERVICECLASSINFO, *LPWSASERVICECLASSINFO;
其中WSANSCLASSINFO结构中有一项dwNameSpace,它指定一个名字空间,比如NS_SAP.
但是INT WSASetService(
  LPWSAQUERYSET lpqsRegInfo,  
  WSAESETSERVICEOP essOperation,  
  DWORD dwControlFlags        
)
的参数lpqsRegInfo中也有这一项dwNameSpace,这两处有什么联系?特别是如果 WSAInstallServiceClass中的dwNameSpace只设定了NS_SAP,但是WSASetService
中的dwNameSpace只设定NS_NTDS,那么我觉得应该会是WSASetService函数失败,因为它在NS_NTDS名字空间中找不到那个服务类?你说呢?
还有就是,我觉得在DNS网络下中调用WSAInstallServiceClass应该没什么动作,你说呢?
NetWare中的NDS是一种局域网机制吗?

解决方案 »

  1.   

    没用过,不过msdn上面应该写的比较清楚
      

  2.   

    "特别是如果 WSAInstallServiceClass中的dwNameSpace只设定了NS_SAP,但是WSASetService 
    中的dwNameSpace只设定NS_NTDS,那么我觉得应该会是WSASetService函数失败,因为它在NS_NTDS名字空间中找不到那个服务类?你说呢? 
    还有就是,我觉得在DNS网络下中调用WSAInstallServiceClass应该没什么动作,你说呢? "你自己测试了吗?如果测试如你所想,应该就是对的。
    这两个函数没有用过,就看了一下msdn。
      

  3.   

    我也是准备测试来着,但是WSAInstallServiceClass总是调用不成功