purebasic.info

PureBasic forum
Текущее время: Чт дек 14, 2017 12:52 pm

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 7 ] 
Автор Сообщение
СообщениеДобавлено: Пт ноя 03, 2017 11:37 am 
Не в сети
профессор

Зарегистрирован: Пн июл 04, 2011 7:38 am
Сообщений: 738
Откуда: Россия
Благодарил (а): 29 раз.
Поблагодарили: 9 раз.
Пункты репутации: 0
Какой API или ещё чем можно проверить, что система уже загрузилась и мы вошли в неё?

_________________
https://www.instagram.com/sergey.afonichev/


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: Пт ноя 03, 2017 1:53 pm 
Не в сети
МОДЕРАТОР

Зарегистрирован: Вт дек 05, 2006 8:46 am
Сообщений: 6204
Благодарил (а): 16 раз.
Поблагодарили: 171 раз.
Пункты репутации: 48
Элементарно автозапуск своей программы у конкретного юзера из папки Автозапуск и есть показатель, что винда запущена и конкретный юзер уже вошёл. Для win10 папка тут C:\ Users\ Имя_пользователя\ AppData\ Roaming\ Microsoft\ Windows\ Start Menu\ Programs\ Startup

_________________
read-only


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: Пт ноя 03, 2017 2:33 pm 
Не в сети
профессор

Зарегистрирован: Пн июл 04, 2011 7:38 am
Сообщений: 738
Откуда: Россия
Благодарил (а): 29 раз.
Поблагодарили: 9 раз.
Пункты репутации: 0
Мне не важен кто юзер, мне главное узнать, что система загрузилась, как один из вариантов в цикле крутить FindWindow, который будет искать класс Progman в котором есть контрол SysListView32, но может есть варианты проще или вообще специализированная для этого функция, у меня сервис запускается раньше чем Windows, по идеи может и не нужно ни чего проверять, раз сервис запускается, значит уже на этом этапе всё доступно..., имею ввиду манипуляцию с файлами, реестром, процессами. Возможно, если в пурике в цикле крутить UserName(), пока ни один пользователь ещё не вошёл в систему, значит функция будет возвращать пустое значение чисто теоретически?

_________________
https://www.instagram.com/sergey.afonichev/


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: Сб ноя 04, 2017 12:08 pm 
Не в сети
доцент

Зарегистрирован: Ср июн 18, 2014 6:34 pm
Сообщений: 61
Благодарил (а): 1 раз.
Поблагодарили: 1 раз.
Пункты репутации: 0
SergeyA писал(а):
Мне не важен кто юзер, мне главное узнать, что система загрузилась,

Угу, тоже было, стояла такая задача.
При загрузке винды в процессах есть Userinit.exe, а потом он исчезает из процессов, то есть винда загрузилась и готова к работе.
Отслеживать в цикле наличие этого процесса и по его завершению определять загрузку винды.


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: Сб ноя 04, 2017 9:16 pm 
Не в сети
профессор

Зарегистрирован: Пн июл 04, 2011 7:38 am
Сообщений: 738
Откуда: Россия
Благодарил (а): 29 раз.
Поблагодарили: 9 раз.
Пункты репутации: 0
Спасибо, гляну этот вариант.

_________________
https://www.instagram.com/sergey.afonichev/


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: Сб ноя 04, 2017 9:28 pm 
Не в сети
МОДЕРАТОР
Аватар пользователя

Зарегистрирован: Пн апр 09, 2007 4:53 pm
Сообщений: 11070
Благодарил (а): 4 раз.
Поблагодарили: 381 раз.
SergeyA писал(а):
у меня сервис
Возможно тогда поможет #SERVICE_ACCEPT_SESSIONCHANGE https://msdn.microsoft.com/en-us/librar ... p/ms685996
Цитата:
The service is notified when the computer's session status has changed. This enables the system to send SERVICE_CONTROL_SESSIONCHANGE notifications to the service.

_________________
Компьютер позволяет решать все те проблемы, которые до его изобретения не существовали. :) :)


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: Вс ноя 05, 2017 8:40 am 
Не в сети
профессор

Зарегистрирован: Пн июл 04, 2011 7:38 am
Сообщений: 738
Откуда: Россия
Благодарил (а): 29 раз.
Поблагодарили: 9 раз.
Пункты репутации: 0
Спасибо.

_________________
https://www.instagram.com/sergey.afonichev/


Вернуться наверх
 Профиль  
 
Показать сообщения за:  Сортировать по:  
Начать новую тему Ответить на тему  [ Сообщений: 7 ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 4


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
Создано на основе phpBB® Forum Software © phpBB Group (блог о phpBB)
Сборка создана CMSart Studio
Русская поддержка phpBB