Orbmu2k/nvidiaProfileInspector · error · NvapiException

NVAPI_SETTING_NOT_FOUND

NVAPI_SETTING_NOT_FOUND

Error message

DRS_GetSetting

What it means

NvapiException wrapping a non-NVAPI_OK status from DRS_GetSetting. It is raised by GetDwordValueFromProfile: inside a DRS session the profile handle is obtained and the value is read via ReadDwordValue, which calls DRS_GetSetting to query the DWORD value of settingId on that profile; a failure status from the driver query is wrapped and thrown, so no value can be returned for the requested setting.

Solutions

  1. Catch NvapiException and fall back to returnDefaultValue=true semantics (use the driver default).
  2. Confirm the settingId exists on the profile; querying an unset setting id can error on some driver versions.
  3. Retry in a fresh DRS session if the shared global session is stale.
  4. Validate the profile name resolves to a handle before attempting the read.
Defensive patterns

Strategy: fallback

When it happens

Trigger: Thrown at nvidiaProfileInspector/Common/DrsSettingsService.cs:371 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of Orbmu2k/nvidiaProfileInspector@2f50c388b3 (2026-09-15). Data as JSON: /api/errors/347f34588e8a855b. Report an issue: GitHub.

Appendix: source

Thrown at nvidiaProfileInspector/Common/DrsSettingsService.cs:371

            });

            removeFromModified = tmpRemoveFromModified;
        }

        public uint GetDwordValueFromProfile(string profileName, uint settingId, bool returnDefaultValue = false, bool forceDedicatedScope = false)
        {
            return DrsSession((hSession) =>
            {
                var hProfile = GetProfileHandle(hSession, profileName);

                var dwordValue = ReadDwordValue(hSession, hProfile, settingId);

                if (dwordValue != null)
                    return dwordValue.Value;
                else if (returnDefaultValue)
                    return meta.GetSettingMeta(settingId).DefaultDwordValue;

                throw new NvapiException("DRS_GetSetting", NvAPI_Status.NVAPI_SETTING_NOT_FOUND);
            });
        }

        public void SetDwordValueToProfile(string profileName, uint settingId, uint dwordValue)
        {
            DrsSession((hSession) =>
            {
                var hProfile = GetProfileHandle(hSession, profileName);
                StoreDwordValue(hSession, hProfile, settingId, dwordValue);
                SaveSettings(hSession);
            });
        }

        public int StoreSettingsToProfile(string profileName, List<KeyValuePair<uint, string>> settings)
        {
            DrsSession((hSession) =>
            {
                var hProfile = GetProfileHandle(hSession, profileName);

View on GitHub (pinned to 2f50c388b3)