#region 程序集 mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
// C:Program Files (x86)Reference AssembliesMicrosoftFramework.NETFrameworkv4.6.1mscorlib.dll
#endregion
using System.Runtime.InteropServices;
namespace System.Security
{
//
// 摘要:
// 用于管理堆栈遍历,此堆栈遍历可确定调用堆栈中的所有调用函数是否具有访问受保护资源的所需权限。
[ComVisible(true)]
public interface IStackWalk
{
//
// 摘要:
// 断言调用代码可以访问当前权限对象所标识的资源,即使尚未对堆栈中的高级调用方授予访问该资源的权限。
//
// 异常:
// T:System.Security.SecurityException:
// 调用代码没有 System.Security.Permissions.SecurityPermissionFlag.Assertion。
void Assert();
//
// 摘要:
// 在运行时确定调用堆栈中的所有调用方是否已被授予当前权限对象所指定的权限。
//
// 异常:
// T:System.Security.SecurityException:
// 调用堆栈中处于较高位置的调用方不具有当前权限对象所指定的权限。 - 或 - 调用堆栈中的调用方已经对当前权限对象调用了 System.Security.IStackWalk.Deny。
void Demand();
//
// 摘要:
// 将导致通过调用代码传递的当前对象的每个 System.Security.IStackWalk.Demand 失败。
void Deny();
//
// 摘要:
// 导致所有对象的每个 System.Security.IStackWalk.Demand(除了通过调用代码的当前一个)失败,即使调用堆栈中较高级别的代码已被授予访问其他资源的权限。
void PermitOnly();
}
}