décimal: 143196173
Hex: 0x889000DMystère HRESULT, 0x889000D
Les résultats d'un appel à IAudioSessionControl2->GetProcessId().
GetLastError = 126 *
message = "Le module spécifié est introuvable"
Je ne suis pas sûr de savoir comment interpréter cette erreur. De plus, je ne trouve nulle part une description du HRESULT. Les codes de retour documentés sont S_OK, E_POINTER, AUDCLNT_E_NO_SINGLE_PROCESS et AUDCLNT_E_DEVICE_INVALIDATED.
Quelqu'un sait ce que ce code indique?
* Il s'agit d'une erreur rassemblée sur une limite gérée/non gérée, obtenue par Marshal.GetLastError avec une exception Win32Exception fournissant le message. Ce pourrait être faux, mais c'est ce que j'ai. Le HRESULT est retiré directement du code non géré.
Une enquête plus approfondie, FAILED() ne semble pas penser que c'est une erreur. Cependant, le paramètre out est effacé (réglé sur 0), ce qui n'a pas vraiment de sens. En outre, GetErrorInfo renvoie S_FALSE; donc il n'y a pas d'informations de débogage supplémentaires pour continuer.
Je vois un identifiant de processus de 0 en conjonction avec ce code d'erreur, qui est en quelque sorte en conflit avec le bit "premier processus". Peu importe, je peux juste traiter cela comme une condition de "caution" avec un peu plus de travail. –
Si vous voyez un ID de processus de 0, c'est probablement la session windows sounds (vous pouvez utiliser IAudioSessionControl2-> IsSystemSoundsSession() pour vérifier). La session windows sounds n'a jamais d'identifiant de processus. –