读书人

怎么根据本计算机名判断其是否在某个域

发布时间: 2013-12-06 17:56:43 作者: rapoo

如何根据本计算机名判断其是否在某个域里?
假设本机名称叫WWW,域的DNS地址是192.168.0.179,怎么判断这台机器是否在域中呢?
我用的NetGetJoinInformation函数判断的,原型如下:

NET_API_STATUS NetGetJoinInformation(
__in LPCWSTR lpServer,
__out LPWSTR* lpNameBuffer,
__out PNETSETUP_JOIN_STATUS BufferType
);

//返回结果的枚举
typedef enum _NETSETUP_JOIN_STATUS {

NetSetupUnknownStatus = 0,
NetSetupUnjoined,
NetSetupWorkgroupName,
NetSetupDomainName

} NETSETUP_JOIN_STATUS, *PNETSETUP_JOIN_STATUS;

它第一个参数是DNS,第二个是机器名称,第三个参数是返回的状态参数,我这么调用,结果编译都不通过
NETSETUP_JOIN_STATUS njs = NetSetupUnknownStatus;
NET_API_STATUS iRetGetType = NetGetJoinInformation("192.168.0.179","WWW", &njs);

如果该机器不在域中则返回NetSetupUnjoined,在域中则返回NetSetupDomainName

但是编译不过,是数据类型有问题,但又不知道如何传参数,求高手给解释下,谢谢!


[解决办法]
system("net view /domain >d:\\domain.txt");
//然后读文件d:\\domain.txt的内容
[解决办法]
字符串匹配呗

读书人网 >C语言

热点推荐