powered by simpleCommunicator - 2.0.58     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / C++ [игнор отключен] [закрыт для гостей] / Как программно нажать кнопку?
15 сообщений из 15, страница 1 из 1
Как программно нажать кнопку?
    #39889864
listtoview
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
появляется окно и код дальше не выполняется после CertAddCertificateContextToStore

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
//устанавливаем сертификат
		if (!CertAddCertificateContextToStore(hCertStore, pCertContext, CERT_STORE_ADD_REPLACE_EXISTING, NULL)) return false;
		
		HWND wnd, cwnd;
		wnd = FindWindow(NULL, L"Title");
		cwnd = FindWindowEx(wnd, NULL, NULL, L"&Да");
		SendMessage(cwnd, WM_LBUTTONDOWN, 0, 0);
		SendMessage(cwnd, WM_LBUTTONUP, 0, 0);



я так понимаю перед CertAddCertificateContextToStore нужно в отдельном потоке дождаться окно , нажать кнопку и прибить поток
нормальная идея?
...
Рейтинг: 0 / 0
Как программно нажать кнопку?
    #39889874
ёёёёё
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
listtoview,

а зачем в отдельном? А в основном будешь ждать, пока отдельный закончит работу? :)
...
Рейтинг: 0 / 0
Как программно нажать кнопку?
    #39889875
listtoview
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ёёёёё
listtoview,

а зачем в отдельном? А в основном будешь ждать, пока отдельный закончит работу? :)

в том же не могу
пока окно открыто код не выполняется основного потока
...
Рейтинг: 0 / 0
Как программно нажать кнопку?
    #39889876
listtoview
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а ждать бесконечным циклом в отдельном потоке норм?
...
Рейтинг: 0 / 0
Как программно нажать кнопку?
    #39889892
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
listtoviewнормальная идея?

Абсолютно ненормальная. Правильный способ - найти что это за окно и почему появляется, а
потом устранить причину.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Как программно нажать кнопку?
    #39889898
listtoview
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov

listtoviewнормальная идея?

Абсолютно ненормальная. Правильный способ - найти что это за окно и почему появляется, а
потом устранить причину.

какие последствия?
поток потом уничтожить
...
Рейтинг: 0 / 0
Как программно нажать кнопку?
    #39889928
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кошмар какой-то.
...
Рейтинг: 0 / 0
Как программно нажать кнопку?
    #39889961
Фотография NekZ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Поменял системный язык и вся автоматизация рухнула
...
Рейтинг: 0 / 0
Как программно нажать кнопку?
    #39890004
ёёёёё
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
listtoview
появляется окно и код дальше не выполняется после CertAddCertificateContextToStore

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
//устанавливаем сертификат
		if (!CertAddCertificateContextToStore(hCertStore, pCertContext, CERT_STORE_ADD_REPLACE_EXISTING, NULL)) return false;
		
		HWND wnd, cwnd;
		wnd = FindWindow(NULL, L"Title");
		cwnd = FindWindowEx(wnd, NULL, NULL, L"&Да");
		SendMessage(cwnd, WM_LBUTTONDOWN, 0, 0);
		SendMessage(cwnd, WM_LBUTTONUP, 0, 0);




я так понимаю перед CertAddCertificateContextToStore нужно в отдельном потоке дождаться окно , нажать кнопку и прибить поток
нормальная идея?

Херня идея.
Устанавливай сертификат в локалмашын, тогда диалогов не будет.
Если прав нет - получи их. Создай специальный сервис, к которому обращайся из своего приложения. Сервис с помощью CreateProcessAsUser создаст процесс в пользовательской сессии, вот тебе и права.
...
Рейтинг: 0 / 0
Как программно нажать кнопку?
    #39890338
listtoview
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ёёёёё
listtoview
появляется окно и код дальше не выполняется после CertAddCertificateContextToStore

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
//устанавливаем сертификат
		if (!CertAddCertificateContextToStore(hCertStore, pCertContext, CERT_STORE_ADD_REPLACE_EXISTING, NULL)) return false;
		
		HWND wnd, cwnd;
		wnd = FindWindow(NULL, L"Title");
		cwnd = FindWindowEx(wnd, NULL, NULL, L"&Да");
		SendMessage(cwnd, WM_LBUTTONDOWN, 0, 0);
		SendMessage(cwnd, WM_LBUTTONUP, 0, 0);




я так понимаю перед CertAddCertificateContextToStore нужно в отдельном потоке дождаться окно , нажать кнопку и прибить поток
нормальная идея?

Херня идея.
Устанавливай сертификат в локалмашын, тогда диалогов не будет.
Если прав нет - получи их. Создай специальный сервис, к которому обращайся из своего приложения. Сервис с помощью CreateProcessAsUser создаст процесс в пользовательской сессии, вот тебе и права.

права есть на сертификаты пользователя, но окно
на локал машин нужны права локального админа

считаю лучше программно согласиться с предупреждением системы безопасности

я делаю th.detach()
по идее с памятью проблем быть не должно
...
Рейтинг: 0 / 0
Как программно нажать кнопку?
    #39890342
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
listtoview
считаю лучше программно согласиться с предупреждением системы безопасности

ХУЖЕ
...
Рейтинг: 0 / 0
Как программно нажать кнопку?
    #39890361
listtoview
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp
listtoview
считаю лучше программно согласиться с предупреждением системы безопасности

ХУЖЕ

чем?
...
Рейтинг: 0 / 0
Как программно нажать кнопку?
    #39890366
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
listtoview,
Если сервис операционки на правах system сделает это без окна, то и проблемы нет.
Имхо.
...
Рейтинг: 0 / 0
Как программно нажать кнопку?
    #39890441
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
listtoviewчем?

Тем, что ты не в ту сторону упоролся. Насколько я помню твой предыдущий топик, ты хотел
просто пройти по цепочке сертификатов. Их установка тут - совершенно ненужный этап. Тем
более - для корневого сертификата.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Как программно нажать кнопку?
    #39890538
listtoview
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov

listtoviewчем?

Тем, что ты не в ту сторону упоролся. Насколько я помню твой предыдущий топик, ты хотел
просто пройти по цепочке сертификатов. Их установка тут - совершенно ненужный этап. Тем
более - для корневого сертификата.

что значит не нужный этап?
есть задача написать программулину на автоматическую установку корневых сертификатов
кароч поздно, уже накатил
...
Рейтинг: 0 / 0
15 сообщений из 15, страница 1 из 1
Форумы / C++ [игнор отключен] [закрыт для гостей] / Как программно нажать кнопку?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]