Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
Controls the ability to call unmanaged and managed code.
Syntax
class InteropPermission extends CodeAccessPermission
Run On
Called
Methods
Method | Description | |
---|---|---|
![]() |
assert | Declares that the calling code can invoke an API that is protected by a permission. (Inherited from CodeAccessPermission.) |
![]() |
cancelTimeOut | Cancels a previous method call to the setTimeOut method. (Inherited from Object.) |
![]() |
copy | Creates and returns a copy of the current permission class object. (Overrides the copy Method.) |
![]() |
demand | Checks the call stack to determine whether the permission that is required to invoke an API has been granted to the calling code. (Inherited from CodeAccessPermission.) |
![]() |
equal | Determines whether the specified object is equal to the current one. (Inherited from Object.) |
![]() |
getTimeOutTimerHandle | Returns the timer handle for the object. (Inherited from Object.) |
![]() |
handle | Retrieves the handle of the class of the object. (Inherited from Object.) |
![]() |
isSubsetOf | Determines whether a current permission is a subset of the specified permission. (Overrides the isSubsetOf Method.) |
![]() |
new | Creates an new instance of the InteropPermission class. (Overrides the new Method.) |
![]() |
notify | Releases the hold on an object that has called the wait method on this object. (Inherited from Object.) |
![]() |
notifyAll | Releases a lock on the object that was issued by the wait method on this object. (Inherited from Object.) |
![]() |
objectOnServer | Determines whether the object is on a server. (Inherited from Object.) |
![]() |
owner | Returns the instance that owns the object. (Inherited from Object.) |
![]() |
setTimeOut | Sets up the scheduled execution of a specified method. (Inherited from Object.) |
![]() |
toString | Returns a string that represents the current object. (Inherited from Object.) |
![]() |
usageCount | Returns the current number of references, that is, the value of the reference counter, that the object has. (Inherited from Object.) |
![]() |
wait | Pauses a process. (Inherited from Object.) |
![]() |
xml | Returns an XML string that represents the current object. (Inherited from Object.) |
Top
Remarks
The InteropPermission class is designed to check permissions for specific APIs. For a list of all APIs protected by permissions, see Secured APIs.
You must call the assert method on the same tier, usually the server tier, that the corresponding CodeAccessPermission::demand method is called on before the protected API is executed. Call a method on the server tier from one of the following:
A server static method
A class instance method that is set to run on the server by using the RunOn class property
Examples
The following code example shows a new instance of the InteropPermission class. The assert method is called to declare that the code can then instantiate the DLL class that provides the ability to communicate with a MicrosoftWindows dynamic-link library (DLL).
server static void main(Args args)
{
InteropPermission _perm;
DLL _dll;
_perm = new InteropPermission(InteropKind::DllInterop);
_perm.assert();
// Invoke the protected API.
_dll = new DLL('cfx2032.dll');
// Optionally, call revertAssert() to limit the scope of assert.
CodeAccessPermission::revertAssert();
}
Inheritance Hierarchy
Object Class
CodeAccessPermission Class
InteropPermission Class