Re: Implemented retrieval of szDeviceIdentifier property in dxdiagn
Markus wrote: Few problems with your patch:
+ IDirect3D9 *(WINAPI *pDirect3DCreate9)(UINT) = NULL; + IDirect3D9 *pD3d = NULL; No need to initialize something you'll assign to anyway.
+ d3d9_handle = LoadLibraryA( "d3d9.dll" ); You need to unload it when you done.
+ memset(&adapter_ident, 0, sizeof(adapter_ident)); No need to clear this structure.
+ StringFromGUID2(&adapter_ident.DeviceIdentifier, adapter_ident_str, 39); Why don't you put it directly into szIdentifierBuffer?
+ memcpy( szIdentifierBuffer, adapter_ident_str, sizeof(adapter_ident_str) * sizeof(WCHAR) ); sizeof() gives size in bytes. You don't need to multiply it by sizeof(WCHAR).
+ WCHAR deviceIdentBuffer[256]; First why 256 if all you need is 39? Second, why do you need it at all? There is already "buffer" which is big enough.
+ DXDiag_GetDisplayDeviceIdentifier( &deviceIdentBuffer ); You don't need to take a reference from array. It's already a pointer (remove "&"). Any time you pass array like that you should also pass it's size.
Vitaliy.
participants (1)
-
Vitaliy Margolen