RegistryKey.DeleteSubKeyTree 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
透過選擇性例外狀況處理,遞迴地刪除子機碼和任何子系子機碼。
多載
DeleteSubKeyTree(String, Boolean) |
遞迴地刪除指定的子機碼和任何子系子機碼,並且指定在找不到該子機碼時是否引發例外狀況。 |
DeleteSubKeyTree(String) |
遞迴地刪除子機碼和任何子系子機碼。 |
DeleteSubKeyTree(String, Boolean)
遞迴地刪除指定的子機碼和任何子系子機碼,並且指定在找不到該子機碼時是否引發例外狀況。
public:
void DeleteSubKeyTree(System::String ^ subkey, bool throwOnMissingSubKey);
public void DeleteSubKeyTree (string subkey, bool throwOnMissingSubKey);
[System.Runtime.InteropServices.ComVisible(false)]
public void DeleteSubKeyTree (string subkey, bool throwOnMissingSubKey);
member this.DeleteSubKeyTree : string * bool -> unit
[<System.Runtime.InteropServices.ComVisible(false)>]
member this.DeleteSubKeyTree : string * bool -> unit
Public Sub DeleteSubKeyTree (subkey As String, throwOnMissingSubKey As Boolean)
參數
- subkey
- String
要刪除的子機碼名稱。 這個字串不會區分大小寫。
- throwOnMissingSubKey
- Boolean
表示如果找不到指定子機碼時,是否引發例外狀況。 如果這個引數為 true
,而指定的子機碼不存在時,則會引發例外狀況。 如果這個引數為 false
,而指定的子機碼不存在時,則不採取任何動作。
- 屬性
例外狀況
subkey
為 null
。
RegistryKey 已經關閉 (關閉的機碼無法存取)。
使用者沒有必要的登錄權限。
使用者沒有刪除機碼所需的使用權限。
適用於
DeleteSubKeyTree(String)
遞迴地刪除子機碼和任何子系子機碼。
public:
void DeleteSubKeyTree(System::String ^ subkey);
public void DeleteSubKeyTree (string subkey);
member this.DeleteSubKeyTree : string -> unit
Public Sub DeleteSubKeyTree (subkey As String)
參數
- subkey
- String
要刪除的子機碼。 這個字串不會區分大小寫。
例外狀況
subkey
為 null
。
發生 I/O 錯誤。
使用者沒有刪除機碼所需的使用權限。
正接受管理的 RegistryKey 已經關閉 (關閉的機碼無法存取)。
使用者沒有必要的登錄權限。
範例
此程式代碼範例是提供給 類別之較大範例的 RegistryKey 一部分。
// Delete or close the new subkey.
Console::Write( "\nDelete newly created registry key? (Y/N) " );
if ( Char::ToUpper( Convert::ToChar( Console::Read() ) ) == 'Y' )
{
Registry::CurrentUser->DeleteSubKeyTree( "Test9999" );
Console::WriteLine( "\nRegistry key {0} deleted.", test9999->Name );
}
else
{
Console::WriteLine( "\nRegistry key {0} closed.", test9999->ToString() );
test9999->Close();
}
// Delete or close the new subkey.
Console.Write("\nDelete newly created registry key? (Y/N) ");
if(Char.ToUpper(Convert.ToChar(Console.Read())) == 'Y')
{
Registry.CurrentUser.DeleteSubKeyTree("Test9999");
Console.WriteLine("\nRegistry key {0} deleted.",
test9999.Name);
}
else
{
Console.WriteLine("\nRegistry key {0} closed.",
test9999.ToString());
test9999.Close();
}
' Delete or close the new subkey.
Console.Write(vbCrLf & "Delete newly created " & _
"registry key? (Y/N) ")
If Char.ToUpper(Convert.ToChar(Console.Read())) = "Y"C Then
Registry.CurrentUser.DeleteSubKeyTree("Test9999")
Console.WriteLine(vbCrLf & "Registry key {0} deleted.", _
test9999.Name)
Else
Console.WriteLine(vbCrLf & "Registry key {0} closed.", _
test9999.ToString())
test9999.Close()
End If
備註
您必須具有適當的許可權,才能刪除子機碼及其樹狀目錄。
警告
刪除特定索引鍵將會移除樹狀結構中索引鍵下方的所有專案。 將不會提供警告。 如果您只想在子機碼沒有子機碼時刪除子機碼,請使用 DeleteSubKey 方法。