0
0

Hello,
When I try to enumerate my devices on a user account that does not belong to the "administrators" user group, it fails. Is it normal ?

Thanks,
Simon

  • You must to post comments
0
0

Hi Simon,

I can get a simple test case of enumeration working on a non administrator account. Is there anything specific about your setup or enumeration code that could be the cause?

  • You must to post comments
0
0

I have an HDMI output, an integrated audio device, and an external USB DAC (24bits / 96 KHz) connected to my PC.
The actual code is :

[code:d90jghui]
int GetDriverIndexFromGuid(FMOD::System* sys, Platform::Guid preferedAudioDeviceId)
{
int driverCount;
auto res = sys->getNumDrivers(&driverCount);
FmodErrorToEx(res);
for(int i=0;i<driverCount;i++)
{
FMOD_GUID id;
res = sys->getDriverInfoW(i, nullptr, 0, &id);
FmodErrorToEx(res);
FMOD_CAPS caps;
FMOD_SPEAKERMODE speakerMode;
res = sys->getDriverCaps(i,&caps, nullptr, &speakerMode);
FmodErrorToEx(res);
assert(sizeof(Platform::Guid) == sizeof(FMOD_GUID));
Platform::Guid * pId = reinterpret_cast<Platform::Guid*>( &id);
if(preferedAudioDeviceId == *pId)
{
return i;
}
}
return 0;
}[/code:d90jghui]

Do not mind the ugly reinterpret_cast, it’s only because I need Platform::Guid instead of FMOD_GUID to expose it to an higher level C# component, and I did know that Platform::Guid implements the comparison operator (and I did not bother to ckeck if FMOD_FUID does).

  • You must to post comments
Showing 2 results
Your Answer

Please first to submit.