RegistryPermissionAttribute クラス
アセンブリ: mscorlib (mscorlib.dll 内)
構文
<SerializableAttribute> _ <ComVisibleAttribute(True)> _ <AttributeUsageAttribute(AttributeTargets.Assembly Or AttributeTargets.Class Or AttributeTargets.Struct Or AttributeTargets.Constructor Or AttributeTargets.Method, AllowMultiple:=True, Inherited:=False)> _ Public NotInheritable Class RegistryPermissionAttribute Inherits CodeAccessSecurityAttribute
[SerializableAttribute] [ComVisibleAttribute(true)] [AttributeUsageAttribute(AttributeTargets.Assembly|AttributeTargets.Class|AttributeTargets.Struct|AttributeTargets.Constructor|AttributeTargets.Method, AllowMultiple=true, Inherited=false)] public sealed class RegistryPermissionAttribute : CodeAccessSecurityAttribute
[SerializableAttribute] [ComVisibleAttribute(true)] [AttributeUsageAttribute(AttributeTargets::Assembly|AttributeTargets::Class|AttributeTargets::Struct|AttributeTargets::Constructor|AttributeTargets::Method, AllowMultiple=true, Inherited=false)] public ref class RegistryPermissionAttribute sealed : public CodeAccessSecurityAttribute
/** @attribute SerializableAttribute() */ /** @attribute ComVisibleAttribute(true) */ /** @attribute AttributeUsageAttribute(AttributeTargets.Assembly|AttributeTargets.Class|AttributeTargets.Struct|AttributeTargets.Constructor|AttributeTargets.Method, AllowMultiple=true, Inherited=false) */ public final class RegistryPermissionAttribute extends CodeAccessSecurityAttribute
SerializableAttribute ComVisibleAttribute(true) AttributeUsageAttribute(AttributeTargets.Assembly|AttributeTargets.Class|AttributeTargets.Struct|AttributeTargets.Constructor|AttributeTargets.Method, AllowMultiple=true, Inherited=false) public final class RegistryPermissionAttribute extends CodeAccessSecurityAttribute
宣言の許容スコープは、使用する SecurityAction によって異なります。
セキュリティ属性によって宣言されたセキュリティ情報は、属性ターゲットのメタデータに格納され、実行時にシステムによってアクセスされます。セキュリティ属性は宣言セキュリティにだけ使用されます。強制セキュリティの場合は、対応するアクセス許可クラスを使用します。
指定したレジストリ値の状態へのアクセスのために RegistryPermission を要求する正しい方法を示し、コードを実行するためには少なくともこのアクセス許可が必要であることを次の宣言属性の例に示します。
<Assembly: RegistryPermissionAttribute(SecurityAction.RequestMinimum, _ Read := "HKEY_LOCAL_MACHINE\HARDWARE\DESCRIPTION\System\CentralProcessor")> 'In Visual Basic, you must specify that you are using the assembly scope when making a request.
[assembly:RegistryPermissionAttribute(SecurityAction.RequestMinimum, Read="HKEY_LOCAL_MACHINE\\HARDWARE\\DESCRIPTION\\System\\CentralProcessor")] //In C#, you must specify that you are using the assembly scope when making a request.
[assembly:RegistryPermissionAttribute(SecurityAction::RequestMinimum, Read="HKEY_LOCAL_MACHINE\\HARDWARE\\DESCRIPTION\\System\\CentralProcessor")]; //In C++, you must specify that you are using the assembly scope when making a request.
/** @assembly RegistryPermissionAttribute(SecurityAction.RequestMinimum, Read = "HKEY_LOCAL_MACHINE\\HARDWARE\\DESCRIPTION\\System\\CentralProcessor") */ // In VJ#, you must specify that you are using the assembly scope when // making a request.
リンク時に、呼び出し元のコードに無制限の RegistryPermission を含めることを要求する方法を次の例に示します。通常、メソッドやクラスを不正なコードから保護するための要求がマネージ ライブラリ (DLL) で作成されます。
System.Attribute
System.Security.Permissions.SecurityAttribute
System.Security.Permissions.CodeAccessSecurityAttribute
System.Security.Permissions.RegistryPermissionAttribute
プラットフォーム
Windows 98, Windows 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。
参照
- RegistryPermissionAttribute クラスのページへのリンク