[PATCH 2/2] d3drm: Partially Implement IDirect3DRM*::LoadTexture(v2).

Aaryaman Vasishta jem456.vasishta at gmail.com
Sat Mar 26 13:24:05 CDT 2016


Err, it's "Direct3DRM Object", instead of "Direct3DRMObject", which I wrote
by mistake.

On Sat, Mar 26, 2016 at 11:42 PM, Aaryaman Vasishta <
jem456.vasishta at gmail.com> wrote:

> Some notes:
>
> I played around with IDirect3DRM::CreateObject a bit, and it also returns
> REGDB_E_CLASSNOTREG if the proper CLSID is not set. Another interesting
> note is that passing the same CLSID that worked for CreateObject to
> CoCreateInstance makes it fail. The SDK setup does in fact add the CLSID's
> to the registry - it seems that the setup reads d3drm.inf, creates a couple
> .reg files and runs that to create the registry entries. The only registry
> entry related to d3drm which the setup adds is "Direct3DRMObject" whose
> value is {4516EC41-8F20-11d0-9B6D-0000C0781BC3}, which matches that of
> CLSID_CDirect3DRM.
> I installed this SDK on my XP VM, yet the tests fail, hmm.
>
> I played around with different CLSCTX values as well - no luck so far.
>
> Cheers,
> Aaryaman
>
>
> On Sat, Mar 26, 2016 at 8:09 PM, Aaryaman Vasishta <
> jem456.vasishta at gmail.com> wrote:
>
>> "regsvr32.exe d3drm.dll" returns an error saying DllRegisterServer was
>> not found.
>>
>> I compiled the test below and ran it on an XP VM (which had the dx7 SDK
>> installed) just to be sure that my native win8.1 box wasn't the issue:
>>
>> CoInitialize(NULL);
>>> hr = CoCreateInstance(&CLSID_CDirect3DRM, NULL, CLSCTX_INPROC_HANDLER,
>>> &IID_IDirect3DRM, &d3drm);
>>> ok(hr == D3DRM_OK, "Got %#x for IID_IDirect3DRM\n", hr);
>>> hr = CoCreateInstance(&CLSID_CDirect3DRMTexture, NULL,
>>> CLSCTX_INPROC_HANDLER, &IID_IDirect3DRMTexture3, &texture3);
>>> ok(hr == D3DRM_OK, "Got %#x for IID_IDirect3DRMTexture3\n", hr);
>>>
>>
>> Got the following results:
>>
>> d3drm.c:4309: Test failed: Got 0x80040154 for IID_IDirect3DRM
>>> d3drm.c:4311: Test failed: Got 0x80040154 for IID_IDirect3DRMTexture3
>>>
>>
>>
>> On Sat, Mar 26, 2016 at 7:55 PM, Stefan Dösinger <
>> stefandoesinger at gmail.com> wrote:
>>
>>>
>>> >> CoCreateInstance(&CLSID_CDirect3DRMTexture, NULL,
>>> CLSCTX_INPROC_SERVER,
>>> >> &IID_IDirect3DRMTexture3, &texture3) returns REGDB_E_CLASSNOTREG. Am I
>>> >> missing something?
>>> >>
>>> > Does it work for IDirect3DRM? It may not be supposed to work, although
>>> > it's also possible d3drm.dll is just not properly registered.
>>> If you copied d3drm.dll from XP you'll most likely have to register it
>>> with regsvr32.
>>>
>>
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.winehq.org/pipermail/wine-devel/attachments/20160326/744f22b5/attachment-0001.html>


More information about the wine-devel mailing list