Я пытаюсь использовать функцию общих ресурсов DX10, поскольку мне это нужно для одного из моих проектов. Но я не могу найти много примеров или кода, особенно используя SlimDX. Согласно документации DX10, мне просто нужно указать ресурсы как Shared, тогда я могу открыть его с помощью OpenSharedResource() из другого приложения. С помощью простого тестового приложения в SlimDX, я сделал следующийОбщие ресурсы в SlimDX с DX10
Texture2D tex = new Texture2D(device, new Texture2DDescription()
{
ArraySize = 1,
BindFlags = BindFlags.RenderTarget | BindFlags.ShaderResource,
CpuAccessFlags = CpuAccessFlags.None,
Format = Format.B8G8R8A8_UNorm,
Height = 128,
Width = 128,
MipLevels = 1,
OptionFlags = ResourceOptionFlags.Shared,
SampleDescription = new SampleDescription(1, 0),
Usage = ResourceUsage.Default,
});
Texture2D tex2 = device.OpenSharedResource<Texture2D>(tex.ComPointer);
Но я получаю эту ошибку
E_INVALIDARG: An invalid parameter was passed to the returning function (-2147024809)
я не могу, кажется, чтобы выяснить, что пошло не так, как tex.ComPointer может не является правильным указателем для OpenSharedResource или Texture2D не поддерживается (не указано, что его нет в документации)
Другой альтернативный вариант, указав, что pHandle, передаваемый в функцию CreateTexture, недоступен в SlimDX или I Не знаю об этом ,
Неужели кто-нибудь пробовал это успешно? Некоторая помощь была бы признательна.
Thanks