Gives a device access to a shared resource that is referenced by a handle and that was created on a different device. You must have previously created the resource as shared and specified that it uses NT handles (that is, you set the D3D11_RESOURCE_MISC_SHARED_NTHANDLE flag).
public:
HRESULT OpenSharedResource1(
HANDLE hResource,
REFIID returnedInterface,
void **ppResource
)
hResource
Type: HANDLE
[in] A handle to the resource to open. For more info about this parameter, see Remarks.
returnedInterface
Type: REFIID
[in] The globally unique identifier (GUID) for the resource interface. For more info about this parameter, see Remarks.
ppResource
Type: void **
[out] A pointer to a variable that receives a pointer to the interface for the shared resource object to access.
Type: HRESULT
This method returns one of the Direct3D 11 return codes. This method also returns E_ACCESSDENIED if the permissions to access the resource aren’t valid.
The behavior of OpenSharedResource1 is similar to the behavior of the ID3D11Device::OpenSharedResource method; each call to OpenSharedResource1 to access a resource creates a new resource object. In other words, if you call OpenSharedResource1 twice and pass the same resource handle to hResource, you receive two resource objects with different IUnknown pointers.
Header: Declared in d3d11_x.h (d3d11_1.h on other Windows platforms).
Library: Use d3d11_x.lib (d3d11.lib on other Windows platforms).