|
|
||||||
Проверка Windows на подлинность (локальная)30.04.2021, 13:32. Показов 11218. Ответов 94
Начиная с Windows 7 есть функция для проверки подлинности системы - SLIsGenuineLocalEx.
Проверка проводится локально.
0
|
||||||
| 30.04.2021, 13:32 | |
|
Ответы с готовыми решениями:
94
Проверка Windows на подлинность Проверка на подлинность Windows 7 Проверка на подлинность Windows 7 |
|
COM‐пропагандист
|
|
| 02.05.2021, 05:24 | |
|
0
|
|
|
Модератор
|
|||||||||||||
| 02.05.2021, 07:57 | |||||||||||||
. Ты прочитай что там написано.Вы пишете что в описании функции написано что при успехе возвращается S_OK, при ошибке один из кодов ошибок. S_OK - это один из кодов который перечислен в описании, а в MSDN написано что список этот неполный и любая функция может вернуть вообще любой HRESULT. Для определения того успешен вызов или нет нужно использовать макросы. Кто-то будет с этим спорить? Почему вы такие трудные? Добавлено через 18 минут
0
|
|||||||||||||
|
COM‐пропагандист
|
||
| 02.05.2021, 09:38 | ||
|
При запуске асинхронной операции чтения мой интерфейс IHttpReader может вернуть S_OK, S_FALSE, HTTPREADER_S_IO_PENDING.
0
|
||
|
Модератор
|
||||||
| 02.05.2021, 09:49 | ||||||
|
И последний факт того что нужно проверять значение через макросы FAILED и SUCCEEDED. Так делает сам Microsoft. Если посмотреть утилиту MGADiag, то можно найти такой код:
0
|
||||||
|
COM‐пропагандист
|
||||||
| 02.05.2021, 09:54 | ||||||
|
Я на фрибесике сделал так:
0
|
||||||
|
|
|||||
| 02.05.2021, 12:16 | |||||
|
По моему в описании функции четко написано какой результат считать успешным и код Pro_grammerа написан согласно документации. Остальное ваши придирки. Можете доказать на практике (в виде кода) что код Pro_grammerа неверен и может выполняется неправильно? Если нет, то о чем вообще этот пустой спор? Напишите конкретно в случае SLIsGenuineLocalEx что даст замена S_OK на SUCCEEDED? Код будет работать не также?
0
|
|||||
|
Модератор
|
||||||||||||||||
| 02.05.2021, 12:42 | ||||||||||||||||
|
Добавлено через 10 минут Вот еще код из системной библиотеки sppcomapi.dll:
![]() Добавлено через 4 минуты Вот еще код:
0
|
||||||||||||||||
|
Кормпилятор
|
|||||
| 02.05.2021, 15:03 | |||||
|
налажал программер и почему его код не будет работать. Есть тип, у него есть область значений, они документированы и более того описаны в MSDN для каждой API функции. Программер посмотрел описание функции и скодил свой пример согласно доке. Ты говоришь что он что-то сделал не так. Вот и пытаюсь понять, что у него не так в коде. А про эти макросы там написано что оно нужно для COM. Но где тут COM? Обычная WinAPI функция.
#define SUCCEEDED(hr) (((HRESULT)(hr)) >= 0) Т.е. IF hr >= 0 THEN SUCCEEDED = TRUE Вот второй: #define FAILED(hr) (((HRESULT)(hr)) < 0) Т.е. IF hr < 0 THEN FAILED = TRUE Вот табличка эта И если так подумать, выглядит так, как будто в COM какие-то проблемы(раз они о нём написали). Всмысле про 1 процент этот мифический. Мол где-то 1 процент функций, которые забивают на эту структуру(на Severity бит) и теперь что-то хотят исправить. Или в документации где-то косяк... Сами небось не знают уже где чего накуролесили. Вот и решили подстраховаться. И ещё хуже, если это говно как раз со стороны реализации(пробелы на разных системах). Как-то странно это всё. Ну т.е. FAILED то можно, наверное, делать, для собственного спокойствия. Хотя это ещё надо покурить зачем вместо одного конкретного документированного значения мы берём целый диапазон и надо ли оно вообще в контексте той или иной функции. Выглядит как попытка объять необъятное, захендлить и обработать всё, или использовать больше факторов(поле code). Просто для себя лишний раз сделал вывод, что надо тестировать и тестировать. И все эти теоретизирования как бы тоже не особо помогут если вдруг, где-то болтается целый процент косячных функций, написанный криворукими ребятами. Майкры в последнее время стали особенно криворукие. По оптимизации винд прекрасно видно. ничего не сделает. Для этого результы и нужны, чтобы понимать функция сделала что надо или нет. А если функция сделала, а результ вернулся неверный, то это проблема уже не программиста. Всё, что может сделать программист - это соответствовать документации. А программер ей соответствовал. Тут нет противоречия. Но оно наверное будет, если этот самый Severity бит будет кривой, а в MSDN-е будет указано, что оно мол должно срабатывать. Т.к. это тоже MSDN и оффдока: https://docs.microsoft.com/en-... dfrom=MSDN
1
|
|||||
|
|
|||||
| 02.05.2021, 16:17 | |||||
RGB(0, 255, 0) недостаточно зеленый".
1
|
|||||
|
COM‐пропагандист
|
|
| 02.05.2021, 16:57 | |
|
0
|
|
|
Модератор
|
|||||||||||||
| 02.05.2021, 20:56 | |||||||||||||
|
Добавлено через 7 минут
0
|
|||||||||||||
|
|
|||||||
| 02.05.2021, 21:32 | |||||||
|
Давайте по существу, с примерами, иначе это просто слова.
0
|
|||||||
|
Модератор
|
|||||||
| 02.05.2021, 21:52 | |||||||
|
0
|
|||||||
|
Кормпилятор
|
|||
| 02.05.2021, 21:52 | |||
|
У меня тогда очень простой вопрос.
Если оф. документация сама говорит, что вводит людей в заблуждение. А т.е.: Почему эта истина о 1% кривых функций зарыта где-то мелкой фразочкой, а тысячах функций столь важная(с твоих слов) деталь не указана?
А вот к ребятам из Microsoft претензии есть за столь кривую, уродскую доку. И да мы так и не увидели 1% функций, человек там заикнулся. Сказал A пусть говорит B. Или они сами не знают где у них писали криворучки?
0
|
|||
|
Модератор
|
||||
| 02.05.2021, 22:09 | ||||
|
0
|
||||
|
Кормпилятор
|
||||||
| 02.05.2021, 23:05 | ||||||
|
И я тебе даже объясню почему она кривая. Тебе дали описание функции и ты пишешь: Прогер не должен гадать чего там функция возвращает и как её может колбаснуть в плане резалта и не должен гадать где лежит ещё дополнительная документация, о которой в описании функции явно не сказано. Особенно функция, которая простые вещи возвращает, отвечая на вопрос да, либо нет. И что значит: если не изменится поведение системы. Я уже писал про обратную совместимость. Если людям хотят доставить реальных геморов тебя не спасут никакие документации. Добавлено через 58 секунд корректное и убрать некорректное, если оно является таковым.
0
|
||||||
|
|
|||||||||||
| 02.05.2021, 23:33 | |||||||||||
Хватит рассуждать. Покажите на примере в каком случае выполнение SLIsGenuineLocalEx будет успешным, но результат будет отличаться от S_OK, иначе не вижу смысла вашего спора. Если у вас нет ответа на этот вопрос, давайте прекратим бессмысленный спор.
1
|
|||||||||||
|
Кормпилятор
|
|||
| 03.05.2021, 00:28 | |||
Довольно сложно представить себе под пяток тысяч функций, каждая из которых содержит в себе отработку возврата значения из огроменного списка. Тут просто не надо притягивать за уши всё что слышишь и читаешь. Огроменный список нужен для отладочных целей, он для всего функционала и для разного спектра ошибок, а не для конкретной функции. И программисту он не нужен весь и сразу. Ты его не запомнишь весь. Как и все функции из MSDN. Это, попросту, нереально. Для рабочих нужд там всего несколько значений и они описаны в небольшой табличке. Функция ничего кроме них не выдаёт(не должна), а если выдаёт, это должно быть описано в документации. Иначе человек об этом не узнает. А я бы хотел знать, что строго оговоренная функция точно допускает возвратить, т.к. от этого напрямую зависит работа программы. И у Pro_grammer-a прога работает по описанию функции. А когда мне говорят, что функция может что-то там вернуть и нигде это не написано, кроме как в "огроменном" списке, то это дерьмо, а не документация, реально дерьмо. Потому что это фарс и простые функции не содержат в себе данный функционал. Это просто очевидно, здравый смысл. В кодинге здравый смысл очень даже нужен, а не слепое следование любой доступной документации. И объяснения очень даже нужны. Это про того персонажа, который написал что есть какой-то 1% но не указал точно. Тут сразу складывается ощущение что до публикации в MSDN допустили какого-то левого тюфяка который внёс сумбур, скомпрометировав документацию и не смог нормально описать всю эту ситуацию. пробелы с S_OK. Лично не видел ещё функции, которые работали бы не так, как написано в описании. И по поводу прокомментировать то или это. Почитал бы как сами Microsoft прокомментируют по поводу возвращемых значений API без использования COM. Подтвердили бы они этот свой 1% функций или нет. Просто это достаточно весело. На самом деле готов принять любое нормальное объяснение, но не "тупо делай так потому что так надо". Если процесс не объяснён нормально, то один фиг какой документации следовать. Логичные объяснения выглядели бы так: - HRESULT всегда является продуктом не состояний, а битовых полей. или - HRESULT всегда является продуктом состояний, битовые поля представлены для каталогизации состояний и получения доп информации о них. А "справка функции" говорит одно, а "дополнительная дока", противоречащая ей говорит другое, простите - это не дока, а дичь какая-то, говорю как есть. И тут не канает сказать "чувак ты не разобрался", я вон выше как раз полез и посмотрел и макросы и табличку. Они слабо объясняют то, про что написано чуть выше. Как и никаких слов про реализации, мы лишь косвенно можем что-то уловить по битовым полям. Но как формирует каждая конкретная функция эти значения не указано(если верить этим тезисам про FAILED). А ту гребёнку из тысяч резалтов изучать - бошкой двинешься. По исходникам выше сложно сказать, ну да там проверяется этот самый бит, но на остальные забивается. Искать какую-то логику в нелогичности это блин мы дожили.
0
|
|||
|
|
||||||||||
| 03.05.2021, 09:07 [ТС] | ||||||||||
Но даже если бы и случилось чудо, и я его смог бы скомпилировать. Где у тебя ошибка:
А что лежит в этот момент в GenuineState непонятно, т.к. читаем доки: Указатель на значение перечисления SL_GENUINE_STATE, которое указывает состояние установки. Эта функция не изменяет значение этого параметра, если возвращаемое значение - любое значение, отличное от S_OK. Переведу для вас с The trick ещё раз. Ни какие другие значения HRESULT кроме S_OK не имеют смысла потому что
0
|
||||||||||
|
COM‐пропагандист
|
||||||||||
| 03.05.2021, 10:40 | ||||||||||
Если FAILED не сработал, значит ошибки нет, можно продолжать.
0
|
||||||||||
| 03.05.2021, 10:40 | |
|
Проверка на подлинность Windows 7 (не прошла) экран черный Проверка на подлинность
Активация и проверка на подлинность Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Генератор паролей (вариант №1)
Maks 29.10.2026
Реализация из решения ниже выполнена исключительно по моей инициативе.
Самым главным критерием для меня было создание паролей, в котором отсутствуют знаки: | 1 l I
Обработка содержит следующие. . .
|
Установка ChatGPT (Codex) на Windows без использования Microsoft Store
Fabien159 28.10.2026
Здравствуйте всем читающим! Опишу процесс установки ChatGPT (Codex) на Windows, если по каким-то причинам у вас не получается устанавить его через Microsoft Store.
И так:
1. Скачиваем с. . .
|
Программное добавление префикса в нумерацию документов
Maks 27.10.2026
Реализация из решения ниже выполнена в самописной конфигурации на БСП (помощь начинающему коллеге).
Задача:
Программно добавить префикс в нумерацию документов.
Решение:
В модуле объекта. . .
|
После закрытия оутлука продолжает висеть процесс в диспетчере задач
Maks 27.10.2026
С недавнего времени в продакшене возникла проблема: при закрытии оутлука в диспетчере задач продолжал висеть процесс outlook. exe. Проблема возникла после установки MS Office 2021 LTSC на машинах, под. . .
|
|
Baragoz - DPS/HPS бот для WoW 3.3.5a, многоязычный
AmbA 26.10.2026
Хотите ещё ботов? У меня есть один! А я пока отдохну от него.
https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=12062&stc=1&d=1793007952
Инструкция внутри.
https:/ / youtu. be/ VpfFZSUDGnQ. . .
|
Особенности gif сгенерированных в Си
russiannick 21.10.2026
Рассмотрим генерацию gif файлов, которые в Си имеют свои особенности.
Gif представляет собой графический формат популярный в интернете. Посмотрим на палитру. Gif файл сгенерированный в си отличается. . .
|
FPS контроллер с анимированными Y-Bot и 3D-звуком miniaudio (Box3D, Recast, BehaviorTree.CPP, ozz-animation, ImGui, OpenGL и SDL3)
8Observer8 18.10.2026
Содержание блога | English Version
Полное мультиплатформенное руководство по стартовому проекту с FPS-контроллером игрока, анимированными роботами Y-Bot с 4-слойным блендингом, 3D-физикой Box3D,. . .
|
Локальный http сервер
Argus19 17.10.2026
Локальный http сервер
На работе, на двух локальных компьютерах круглосуточно работают программы опроса приборов с записью в книги Excel,которые раз в сутки записываются на сервер компании. Т. к. . . .
|