無制限の DNS アクセスを許可するか、DNS アクセスを禁止する DnsPermission クラスの新しいインスタンスを作成します。
Public Sub New( _
ByVal state As PermissionState _)
[C#]
public DnsPermission(
PermissionStatestate);
[C++]
public: DnsPermission(
PermissionStatestate);
[JScript]
public function DnsPermission(
state : PermissionState);
パラメータ
- state
PermissionState 値の 1 つ。
例外
例外の種類 | 条件 |
---|---|
ArgumentException | state が有効な PermissionState 値ではありません。 |
解説
state が Unrestricted の場合、 DnsPermission インスタンスはすべての要求を渡します。 state に他の値が含まれる場合、 DnsPermission インスタンスはすべての要求を失敗させます。
使用例
[Visual Basic, C#, C++] DnsPermission クラスのインスタンスを作成する例を次に示します。
Public Sub useDns()
' Create a DnsPermission instance.
Dim permission As New DnsPermission(PermissionState.Unrestricted)
' Check for permission.
permission.Demand()
' Create a SecurityElement object to hold XML encoding of the DnsPermission instance.
Dim securityElementObj As SecurityElement = permission.ToXml()
Console.WriteLine("Tag, Attributes and Values of 'DnsPermission' instance :")
Console.WriteLine((ControlChars.Cr + ControlChars.Tab + "Tag :" + securityElementObj.Tag))
' Print the attributes and values.
PrintKeysAndValues(securityElementObj.Attributes)
End Sub 'useDns
Private Sub PrintKeysAndValues(myList As Hashtable)
' Get the enumerator that can iterate through the hash table.
Dim myEnumerator As IDictionaryEnumerator = myList.GetEnumerator()
Console.WriteLine(ControlChars.Cr + ControlChars.Tab + "-KEY-" + ControlChars.Tab + "-VALUE-")
While myEnumerator.MoveNext()
Console.WriteLine(ControlChars.Tab + "{0}:" + ControlChars.Tab + "{1}", myEnumerator.Key, myEnumerator.Value)
End While
Console.WriteLine()
End Sub 'PrintKeysAndValues
[C#]
public void useDns() {
// Create a DnsPermission instance.
DnsPermission permission = new DnsPermission(PermissionState.Unrestricted);
// Check for permission.
permission.Demand();
// Create a SecurityElement object to hold XML encoding of the DnsPermission instance.
SecurityElement securityElementObj = permission.ToXml();
Console.WriteLine("Tag, Attributes and Values of 'DnsPermission' instance :");
Console.WriteLine("\n\tTag :" + securityElementObj.Tag);
// Print the attributes and values.
PrintKeysAndValues(securityElementObj.Attributes);
}
private void PrintKeysAndValues(Hashtable myList) {
// Get the enumerator that can iterate through the hash table.
IDictionaryEnumerator myEnumerator = myList.GetEnumerator();
Console.WriteLine("\n\t-KEY-\t-VALUE-");
while (myEnumerator.MoveNext())
Console.WriteLine("\t{0}:\t{1}", myEnumerator.Key, myEnumerator.Value);
Console.WriteLine();
}
[C++]
public:
void useDns()
{
// Create a DnsPermission instance.
DnsPermission* permission = new DnsPermission(PermissionState::Unrestricted);
// Check for permission.
permission->Demand();
// Create a SecurityElement Object* to hold XML encoding of the DnsPermission instance.
SecurityElement* securityElementObj = permission->ToXml();
Console::WriteLine(S"Tag, Attributes and Values of 'DnsPermission' instance :");
Console::WriteLine(S"\n\tTag : {0}", securityElementObj->Tag);
// Print the attributes and values.
PrintKeysAndValues(securityElementObj->Attributes);
}
private:
void PrintKeysAndValues(Hashtable* myList)
{
// Get the enumerator that can iterate through the hash table.
IDictionaryEnumerator* myEnumerator = myList->GetEnumerator();
Console::WriteLine(S"\n\t-KEY-\t-VALUE-");
while (myEnumerator->MoveNext())
Console::WriteLine(S"\t {0}:\t {1}", myEnumerator->Key, myEnumerator->Value);
Console::WriteLine();
}
[JScript] JScript のサンプルはありません。Visual Basic、C#、および C++ のサンプルを表示するには、このページの左上隅にある言語のフィルタ ボタン をクリックします。
必要条件
プラットフォーム: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 ファミリ, Common Language Infrastructure (CLI) Standard