NanoByte.Common.Native.WindowsRestartManager.ListAppProblems C# (CSharp) Method

ListAppProblems() private method

private ListAppProblems ( bool &permissionDenied ) : IEnumerable
permissionDenied bool
return IEnumerable
        private IEnumerable<string> ListAppProblems(out bool permissionDenied)
        {
            uint arrayLength;
            NativeMethods.RM_REBOOT_REASON rebootReasons;
            var apps = ListAppsInternal(out arrayLength, out rebootReasons);

            permissionDenied = rebootReasons == NativeMethods.RM_REBOOT_REASON.RmRebootReasonPermissionDenied;

            var names = new List<string>();
            for (int i = 0; i < arrayLength; i++)
            {
                if (apps[i].AppStatus == NativeMethods.RM_APP_STATUS.RmStatusErrorOnStop || apps[i].AppStatus == NativeMethods.RM_APP_STATUS.RmStatusErrorOnRestart)
                    names.Add(apps[i].strAppName);
            }
            return names;
        }