Please help on create DNS zone with WMI. Thanks!

D

davidw

I found zonetype is really strange, someone mentions zonetype need to be
different for win 2003 and win 2000, I am using win 2000, I use the
following code to create dns zone:

ManagementScope oScope = new
ManagementScope("\\\\"+serverName+"\\ROOT\\MicrosoftDNS");
ManagementPath Path = new ManagementPath("MicrosoftDNS_Zone");
ManagementClass DnsZoneClass = new ManagementClass(oScope, Path,
null);

ManagementBaseObject InputParams =
DnsZoneClass.GetMethodParameters("CreateZone");
InputParams["ZoneName"] = zoneName;
InputParams["ZoneType"] = zoneType;
if(dataFileName!="")
InputParams["DataFileName"] = dataFileName;
ManagementBaseObject OutParams =
DnsZoneClass.InvokeMethod("CreateZone", InputParams, null);

as I read from other post, zonetype should be 0 for primary zone on win
2003, and 1 on win 2000. I tried 0,1 and 2, it returns like this:

0 - Active Directory zone (create successuflly, but not I want, I need
primary zone)
1 - returns "general failure"
2 - returns "invalid parameter"

Any idea? I have two DNS server, I need the code to create primary zone on
first server, and second zone on second server, can I do that?


Thanks for help!
 
J

Jeff Cochran

I found zonetype is really strange, someone mentions zonetype need to be
different for win 2003 and win 2000, I am using win 2000, I use the
following code to create dns zone:

ManagementScope oScope = new
ManagementScope("\\\\"+serverName+"\\ROOT\\MicrosoftDNS");
ManagementPath Path = new ManagementPath("MicrosoftDNS_Zone");
ManagementClass DnsZoneClass = new ManagementClass(oScope, Path,
null);

ManagementBaseObject InputParams =
DnsZoneClass.GetMethodParameters("CreateZone");
InputParams["ZoneName"] = zoneName;
InputParams["ZoneType"] = zoneType;
if(dataFileName!="")
InputParams["DataFileName"] = dataFileName;
ManagementBaseObject OutParams =
DnsZoneClass.InvokeMethod("CreateZone", InputParams, null);

as I read from other post, zonetype should be 0 for primary zone on win
2003, and 1 on win 2000. I tried 0,1 and 2, it returns like this:

0 - Active Directory zone (create successuflly, but not I want, I need
primary zone)
1 - returns "general failure"
2 - returns "invalid parameter"

Any idea? I have two DNS server, I need the code to create primary zone on
first server, and second zone on second server, can I do that?

Cam you use DNSCMD instead? Maybe in a shell.

Jeff
 
D

davidw

I don't feel it is good to do all those operations in a shell. And do you
think there is a dnscmd under win 2000?

Jeff Cochran said:
I found zonetype is really strange, someone mentions zonetype need to be
different for win 2003 and win 2000, I am using win 2000, I use the
following code to create dns zone:

ManagementScope oScope = new
ManagementScope("\\\\"+serverName+"\\ROOT\\MicrosoftDNS");
ManagementPath Path = new ManagementPath("MicrosoftDNS_Zone");
ManagementClass DnsZoneClass = new ManagementClass(oScope, Path,
null);

ManagementBaseObject InputParams =
DnsZoneClass.GetMethodParameters("CreateZone");
InputParams["ZoneName"] = zoneName;
InputParams["ZoneType"] = zoneType;
if(dataFileName!="")
InputParams["DataFileName"] = dataFileName;
ManagementBaseObject OutParams =
DnsZoneClass.InvokeMethod("CreateZone", InputParams, null);

as I read from other post, zonetype should be 0 for primary zone on win
2003, and 1 on win 2000. I tried 0,1 and 2, it returns like this:

0 - Active Directory zone (create successuflly, but not I want, I need
primary zone)
1 - returns "general failure"
2 - returns "invalid parameter"

Any idea? I have two DNS server, I need the code to create primary zone on
first server, and second zone on second server, can I do that?

Cam you use DNSCMD instead? Maybe in a shell.

Jeff
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top