gpt4 book ai didi

c# - 如何使用 C# 在 DNS 中创建 SRV 记录

转载 作者:太空狗 更新时间:2023-10-29 19:40:05 24 4
gpt4 key购买 nike

我正在使用 WMI 创建不同类型的 DNS 记录,但遇到 SRV 记录问题。每当我传递 DomainName 参数时,我总是收到“未找到”错误。我觉得这个域名不错。

有人成功过吗?

这是我的代码:

internal static void CreateSrvRecordInDns(string Zone, string OwnerName, string DomainName, UInt16 Weight, UInt16 Priority, UInt16 Port)
{
DnsProvider dns = new DnsProvider();
ManagementClass mClass = new ManagementClass(dns.Session, new ManagementPath("MicrosoftDNS_SrvType"), null);
ManagementBaseObject inParams = mClass.GetMethodParameters("CreateInstanceFromPropertyData");
inParams["DnsServerName"] = dns.Server;
inParams["ContainerName"] = Zone;
inParams["OwnerName"] = OwnerName;
inParams["DomainName"] = DomainName; //Error occurs here
inParams["Port"] = Port;
inParams["Priority"] = Priority;
inParams["Weight"] = Weight;
mClass.InvokeMethod("CreateInstanceFromPropertyData", inParams, null);
dns.Dispose(ref inParams);
dns.Dispose(ref mClass);
}

最佳答案

只需将有问题的行替换为:

inParams["SRVDomainName"] = DomainName;

我不知道原因,但是当通过以下方式获得属性列表时:

PropertyData[] pd = new PropertyData[inParams.Properties.Count];
inParams.Properties.CopyTo(pd,0);

这是这个字段的名字(微软的bug?)

HTH.

附言为了查看每个字段的正确格式,请使用 wbemtest 工具(命令提示符下的 wbemtest),连接到 root\MicrosoftDNS 命名空间并运行以下查询:

Select * from MicrosoftDNS_SRVType

您应该使用与答案中列出的实例相同的格式。

关于c# - 如何使用 C# 在 DNS 中创建 SRV 记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3772655/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com