Форум программистов, компьютерный форум, киберфорум
Delphi: WinAPI
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.67/9: Рейтинг темы: голосов - 9, средняя оценка - 4.67
257 / 149 / 70
Регистрация: 29.07.2018
Сообщений: 1,254

Winlogon Notification Package

16.01.2024, 10:33. Показов 3754. Ответов 41
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Добрый день.
Нужно отловить вход пользователя в систему. Прочитал про Winlogon Notification Package, написал dll:
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
library TFLNotify;
 
uses
  Windows,
  System.SysUtils,
  System.Classes;
 
type
  PWSTR = PWideChar;
 
  PWLX_NOTIFICATION_INFO = ^_WLX_NOTIFICATION_INFO;
 
  _WLX_NOTIFICATION_INFO = record
    Size: ULONG;
    Flags: ULONG;
    UserName: PWSTR;
    Domain: PWSTR;
    WindowStation: PWSTR;
    hToken: THandle;
    hDesktop: HDESK;
    pStatusCallback: LongInt;
  end;
 
procedure SaveLog(msg: string);
var
  f: TextFile;
begin
  var
  dateTime := Now;
  var
  logPath := 'C:\log.txt';
  AssignFile(f, logPath);
  if (FileExists(logPath)) then
    Append(f)
  else
    Rewrite(f);
  msg := msg + DateToStr(dateTime) + ' ' + TimeToStr(dateTime);
  writeln(f, msg);
  closefile(f);
end;
 
procedure LogonEvent(pInfo: PWLX_NOTIFICATION_INFO); safecall; { или stdcall }
begin
  SaveLog('L:' + pInfo.UserName);
end;
 
{$R *.RES}
 
exports
  LogonEvent name 'LogonEvent';
 
begin
 
end.
Создал ветку Notify и в ней создал еще одну ветку - TFLNotify:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Wi ndows NT\CurrentVersion\Winlogon\Notify\TFLNot ify
Задал параметры(во вложении скрин)

Создал папку C:\TFLNotify, туда закинул dll, перезагрузился, вошел в систему, но файл с логами так и не появился. Что я сделал не так, подскажите пожалуйста. Заранее спасибо!
Миниатюры
Winlogon Notification Package  
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
16.01.2024, 10:33
Ответы с готовыми решениями:

Winlogon notification package на Delphi
Срочно нужна помощь! Кто-нибудь писал на Delphi Winlogon notification package? Регистрирую все правильно. Библиотека линкуется после...

В журнале стали проскакивать ошибки "winlogon <SessionEnv>" и "winlogon <AUInstallAgent>"
Здравствуйте! Стоит система windows 8 x64, в журнале стали проскакивать следующие сообщения: 1)Ошибка обработки критического события...

The 'Blend Menu Package' package did not load correctly Microsoft SQL Server Management Studio
Я переустанавливал пакет Blend в Visual Studio 2022 Preview, потом установил VS 2022, так попробовал, тоже не помогло Затем решил...

41
Модератор
 Аватар для D1973
9949 / 6484 / 2461
Регистрация: 21.01.2014
Сообщений: 27,476
Записей в блоге: 3
17.01.2024, 04:54
Студворк — интернет-сервис помощи студентам
Цитата Сообщение от Пс Посмотреть сообщение
процедура из библиотеки вызывается и лог-файл создается
Это, как я понимаю, работает при использовании хост-приложения, что, собственно, и ожидалось... Теперь можно попробовать этим, не совсем понятным мне методом, который Вы в начале описывали...
0
257 / 149 / 70
Регистрация: 29.07.2018
Сообщений: 1,254
17.01.2024, 08:44  [ТС]
Цитата Сообщение от D1973 Посмотреть сообщение
работает при использовании хост-приложения,
Да, все так

Добавлено через 26 минут
Нашел какие-то требования:
https://learn.microsoft.com/ru... -prototype

Это получается работало только на XP и WS2003?

Добавлено через 4 минуты
Я руководствовался этими статьями:
1)https://learn.microsoft.com/ru... on-package
2)https://learn.microsoft.com/ru... -prototype
3)https://learn.microsoft.com/ru... on-package
4)https://www.rsdn.org/article/baseserv/winlogon.xml
5)https://www.codeproject.com/Ar... ation-Pack
0
Модератор
 Аватар для D1973
9949 / 6484 / 2461
Регистрация: 21.01.2014
Сообщений: 27,476
Записей в блоге: 3
17.01.2024, 09:45
Цитата Сообщение от Пс Посмотреть сообщение
Это получается работало только на XP и WS2003?
что, собственно, и подозревалось изначально...
0
257 / 149 / 70
Регистрация: 29.07.2018
Сообщений: 1,254
17.01.2024, 10:04  [ТС]
Да не, ну бред же..
Зачем писать статьи по винде времен динозавров в 2023 году(та статья датирована 23м годом) и мануалы по WNP 2021 года..

Добавлено через 48 секунд
Если это действительно так, то нужно создать другую тему, с вопросом как отловить вход пользователя в систему..
0
Модератор
 Аватар для D1973
9949 / 6484 / 2461
Регистрация: 21.01.2014
Сообщений: 27,476
Записей в блоге: 3
17.01.2024, 10:12
Цитата Сообщение от Пс Посмотреть сообщение
как отловить вход пользователя в систему
1. А зачем это в принципе может понадобиться?
2. А зачем использовать не совсем для этого подходящий инструмент (Delphi имеется в виду)?

Добавлено через 2 минуты

Не по теме:

Цитата Сообщение от Пс Посмотреть сообщение
Зачем писать статьи по винде времен динозавров в 2023 году
Ой, я Вас умоляю... Да никто их не пишет: они были написаны один раз еще до исторического материализма, а теперь их раз от разу перепечатывают - только и всего...

0
257 / 149 / 70
Регистрация: 29.07.2018
Сообщений: 1,254
17.01.2024, 10:37  [ТС]
Цитата Сообщение от D1973 Посмотреть сообщение
А зачем это в принципе может понадобиться?
Нужно запускать программу при каждом входе пользователя в систему

Добавлено через 31 секунду
Цитата Сообщение от D1973 Посмотреть сообщение
не совсем для этого подходящий инструмент
Что предлагаете использовать?С++?
0
Модератор
 Аватар для D1973
9949 / 6484 / 2461
Регистрация: 21.01.2014
Сообщений: 27,476
Записей в блоге: 3
17.01.2024, 10:56
Цитата Сообщение от Пс Посмотреть сообщение
запускать программу при каждом входе пользователя в систему
Не совсем понятно: при входе в систему любого пользователя или какого-то конкретного?

В любом случае никакого программирования тут вообще не требуется: достаточно добавить путь к требуемой программе в раздел реестра HKLM\SOFTWARE\Microsoft\Windows\CurrentV ersion\Run (это если для всех) и в аналогичный раздел но в профиле требуемого пользователя HKU\<Profile_ID>\SOFTWARE\Microsoft\Wind ows\CurrentVersion\Run.
И все это элементарно делается средствами ОС: скриптом PowerShell или даже простым bat-файлом. Это в ответ на Ваш вопрос:
Цитата Сообщение от Пс Посмотреть сообщение
Что предлагаете использовать?
0
257 / 149 / 70
Регистрация: 29.07.2018
Сообщений: 1,254
17.01.2024, 11:20  [ТС]
Цитата Сообщение от D1973 Посмотреть сообщение
любого пользователя или какого-то конкретного?
Любого.

Насколько я помню, Автозагрузка происходит только при первом в ходе систему?
Мне нужно запускать программу после каждого ввода логина и пароля. Ни Задачи ни автозагрузка так не может(опять-таки насколько я помню)
0
Модератор
4152 / 2361 / 814
Регистрация: 15.11.2015
Сообщений: 9,493
17.01.2024, 11:38
Цитата Сообщение от Пс Посмотреть сообщение
Автозагрузка происходит только при первом в ходе систему?
Что значит первый вход? Вход есть вход.

Ввод пароля на экране блокировки это не вход в систему.
0
257 / 149 / 70
Регистрация: 29.07.2018
Сообщений: 1,254
17.01.2024, 11:44  [ТС]
Цитата Сообщение от AzAtom Посмотреть сообщение
Ввод пароля на экране блокировки это не вход в систему.
А что это, выход?
Если без шуток, а что это?
0
Модератор
 Аватар для D1973
9949 / 6484 / 2461
Регистрация: 21.01.2014
Сообщений: 27,476
Записей в блоге: 3
17.01.2024, 11:53
Цитата Сообщение от Пс Посмотреть сообщение
Насколько я помню, Автозагрузка происходит только при первом в ходе систему?
А если взять и самому попробовать? И увидеть, что автозагрузка из HKLM происходит для всех и всегда.

Добавлено через 3 минуты
Цитата Сообщение от Пс Посмотреть сообщение
а что это?
Есть логин - вход в систему нового пользователя и есть блокировка системы, когда пользователь уже вошел в систему и заблокировал паролем свой сеанс работы. Такой ввод пароля (разблокировка), хоть и выглядит похоже на вход в систему, таковым не является и автозагрузка, естественно, не сработает.
0
257 / 149 / 70
Регистрация: 29.07.2018
Сообщений: 1,254
17.01.2024, 11:53  [ТС]
Цитата Сообщение от D1973 Посмотреть сообщение
автозагрузка, естественно, не сработает.
Вот и я об этом.
0
Модератор
4152 / 2361 / 814
Регистрация: 15.11.2015
Сообщений: 9,493
17.01.2024, 12:02
Цитата Сообщение от Пс Посмотреть сообщение
а что это?
Не знаю, как это называется по научному, вход в уже запущенный сеанс.
0
Модератор
 Аватар для D1973
9949 / 6484 / 2461
Регистрация: 21.01.2014
Сообщений: 27,476
Записей в блоге: 3
17.01.2024, 12:05
Цитата Сообщение от Пс Посмотреть сообщение
Вот и я об этом.
О чем? О том, что разблокировка - это не вход в систему?
0
257 / 149 / 70
Регистрация: 29.07.2018
Сообщений: 1,254
17.01.2024, 12:36  [ТС]
Цитата Сообщение от D1973 Посмотреть сообщение
О том, что разблокировка - это не вход в систему?
О том, что Автозагрузка, это не то, что мне нужно.

Добавлено через 1 минуту
AzAtom, Ладно, не суть важно.
Мне нужно запускать программу при каждой разблокировке.
0
Модератор
 Аватар для D1973
9949 / 6484 / 2461
Регистрация: 21.01.2014
Сообщений: 27,476
Записей в блоге: 3
17.01.2024, 12:39
Я вот не совсем понимаю, на кой ляд запускать какую-то программу после каждой блокировки? У нас на работе ОС блокируется политикой при простое в 3 мин. И что, каждый раз будет программа дергаться?
Хотя - дело хозяйское, все это, насколько мне известно, решаемо локальными политиками Windows...
0
257 / 149 / 70
Регистрация: 29.07.2018
Сообщений: 1,254
17.01.2024, 12:41  [ТС]
Цитата Сообщение от D1973 Посмотреть сообщение
а кой ляд запускать какую-то программу после каждой блокировки?
Это не секрет, программа для дополнительной защиты от НСД.
0
Модератор
4152 / 2361 / 814
Регистрация: 15.11.2015
Сообщений: 9,493
17.01.2024, 14:25
Для входа в Windows в дополнение к паролю можно ещё приделать и электронный ключ, навроде тех, что используются в домофонах. Или смарт-карты можно использовать. Это будет действовать и при разблокировке.
Как именно это делается я не в курсе.
0
257 / 149 / 70
Регистрация: 29.07.2018
Сообщений: 1,254
17.01.2024, 15:24  [ТС]
AzAtom, Это дополнительные траты. Оно нам не нужно.
0
 Аватар для krapotkin
6854 / 4680 / 1465
Регистрация: 14.04.2014
Сообщений: 20,681
Записей в блоге: 21
17.01.2024, 15:31
https://learn.microsoft.com/en... omatically

https://www.youtube.com/watch?v=gSvMkyOA2bc
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
17.01.2024, 15:31

Eclipse. Package внутри package
Разбираюсь в Eclipse IDE 2019-06. Не могу понять как создать package внутри package как в IntelliJ IDEA. Нашел только тему на...

Winlogon.exe
Доброго времени суток, KAV ругается на компьютер в сети на процесс winlogon.exe. Ошибка следующего рода: Процесс...

Winlogon mistake
У девушки с буком фигня творится.Она его включает,ей он выдает winlogon mistake,показывает синий экран и вырубается.Что это и чем лечится?

Bsod c000021a/winlogon
Всем доброго времени суток. Недавно почистил оптимайзером корзину, и после перезагрузки начал постоянно вылетать BSOD с кодом c000021a. В...

Тип экрана winlogon
Как сделать &quot;новый&quot; тип экрана входа в систему, при котором отображаются все существующие учётные записи, и надо выбрать одну из них....


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
40
Ответ Создать тему
Новые блоги и статьи
Из невошедшего на форум (диалог с ИИ-гугла)
zorxor 29.07.2026
А вот, что интересно, сказал мне ИИ-гугла: Этот текст — эмоциональный пост пользователя под ником zorxor на интернет-форуме (вероятно, посвященном мистике, непознанному или альтернативной науке). . . .
Был праздник вчера, а я и не знал.
kumehtar 28.07.2026
27. 07. 2026г. Intel Core 2 Duo исполнилось 20 лет Новости компьютерного мира и их обсуждение (4) Салют, шампанское, овации! :drink:
Нейтральные знания, чистый код - бла-бла-бла-бла, на самом деле кликбейт и самореклама, плагиат, и вот почему
Hrethgir 27.07.2026
То-есть отклонение такой публикации говорит само за себя, и пусть только возьмут на вооружение после отклонения публикации - это будет чистейшим актом плагиата. Отклонял Хабр. Дословно, отклонённая. . .
тв 16 бой ии
anaschu 27.07.2026
Великий Перелом ИИ: Как уравнения ОДУ Radau дожали цензурные фильтры Алисы Фиксируем в мемофонде Теории Всего беспрецедентный факт в истории ИИ-зондирования. В затяжном многораундовом. . .
мв 15. непроверенное, возможно, глюк
anaschu 27.07.2026
НАУЧНО-АНАЛИТИЧЕСКИЙ ОТЧЕТ. РАЗДЕЛ 1. 1: «НАУКА» (РАСШИРЕННАЯ СТЕХИОМЕТРИЧЕСКАЯ И ГЕНЕТИЧЕСКАЯ ВЕРСИЯ)Тема: Теоретическое обоснование инвариантности 19-мерного тензорного ядра непрерывных ОДУ и. . .
Очистка реквизитов и табличных частей документа при копировании (вариант 2)
Maks 26.07.2026
Алгоритм из решения ниже разработан на примере нетипового документа "ЗаявкаНаРаботу", разработанного в КА2. Задача: Заменить алгоритм запрета копирования документов для сотрудников с ролью "Стажер",. . .
Доктрина интенционального знания - Доктрина для портала "Срез".
Hrethgir 25.07.2026
Может найдётся кто захочет оценить доктрину. . . Написания правил участия для меня роскошь, требующая лимита времени, поэтому все сообщения не прошедшие модерацию будут видны только участникам портала,. . .
сукцессия 44. Решил подать на припринт в межународные сервисы препринтов. Но нужно одобрение от ученых
anaschu 25.07.2026
Английский вариант. Пока кто то не одобрит мою личность, мне не получиться это опубликовать на препринте. Но заявку на публикацию статьи я сегодня подам.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru