|
|
|
Delphi 10.3 Функция ExitWindows работает некорректно
|
|||
|---|---|---|---|
|
#18+
Всем привет! В приложении необходимо использовать завершение работы, перезагрузку и выход до смены пользователя, с помощью WinAPI. Использую функции: Код: pascal 1. 2. 3. Но во всех трех случаях происходит закрытие всех программ и выход на окно авторизации. Грубо говоря, в трех разных вариациях срабатывает (судя по симптомам) - ExitWindows(EWX_LOGOFF,0); Подскажите, что делаю не так? Или быть может есть альтернативы? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.07.2020, 00:09 |
|
||
|
Delphi 10.3 Функция ExitWindows работает некорректно
|
|||
|---|---|---|---|
|
#18+
Евгений Стронгчто делаю не так? Гуглишь готовый код прошлого века вместо чтения документации https://docs.microsoft.com/en-us/windows/win32/api/winuser/nf-winuser-exitwindows Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.07.2020, 00:26 |
|
||
|
Delphi 10.3 Функция ExitWindows работает некорректно
|
|||
|---|---|---|---|
|
#18+
Dimitry Sibiryakov Евгений Стронгчто делаю не так? Гуглишь готовый код прошлого века вместо чтения документации https://docs.microsoft.com/en-us/windows/win32/api/winuser/nf-winuser-exitwindows Не понятно только, чем мне из нашего века может помочь ссылка? Рекомендуют запустить так: Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. Получается у меня такой код: Код: pascal 1. И снова не происходит выключение компьютера. Вот эта ссылка куда полезнее по функциям: https://docs.microsoft.com/en-us/windows/win32/api/winuser/nf-winuser-exitwindowsex Но не понятен вот такой момент. Что подставлять в Code Код: c# 1. 2. 3. 4. Допустим для функции лог офф она будет выглядеть вот так: Код: c# 1. 2. 3. 4. Но а как мне выполнить ребут, например - EWX_REBOOT. Подставляя параметр 0 - ничего не происходит. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.07.2020, 01:16 |
|
||
|
Delphi 10.3 Функция ExitWindows работает некорректно
|
|||
|---|---|---|---|
|
#18+
MSDN ExitWindows Calls the ExitWindowsEx function to log off the interactive user. MSDN ExitWindowsEx Logs off the interactive user, shuts down the system, or shuts down and restarts the system. Так виднее? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.07.2020, 01:21 |
|
||
|
Delphi 10.3 Функция ExitWindows работает некорректно
|
|||
|---|---|---|---|
|
#18+
GunSmoker MSDN ExitWindows Calls the ExitWindowsEx function to log off the interactive user. MSDN ExitWindowsEx Logs off the interactive user, shuts down the system, or shuts down and restarts the system. Так виднее? А что я тут должен увидеть? У меня вопрос в передачи параметров для функции, а не в их названиях. Я уже перепробовал и ExitWindows и ExitWindowsEx. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.07.2020, 01:26 |
|
||
|
Delphi 10.3 Функция ExitWindows работает некорректно
|
|||
|---|---|---|---|
|
#18+
... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.07.2020, 01:53 |
|
||
|
Delphi 10.3 Функция ExitWindows работает некорректно
|
|||
|---|---|---|---|
|
#18+
Совсем слепой? MSDNCalls the ExitWindowsEx function to log off the interactive user. (выделение моё) Всё. Ничего больше она делать не умеет. MSDNParameters dwReserved This parameter must be zero. Code This parameter must be zero. Ну и куда ты параметры-то суёшь? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.07.2020, 01:55 |
|
||
|
Delphi 10.3 Функция ExitWindows работает некорректно
|
|||
|---|---|---|---|
|
#18+
GunSmoker, а может, если ему выделить на той страничке "Applications should call ExitWindowsEx directly." он додумается открыть хелп по нужной функции? )) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.07.2020, 02:49 |
|
||
|
Delphi 10.3 Функция ExitWindows работает некорректно
|
|||
|---|---|---|---|
|
#18+
Он походу вообще читать не умеет To shut down or restart the system, the calling process must use the AdjustTokenPrivileges function to enable the SE_SHUTDOWN_NAME privilege. For more information, see Running with Special Privileges. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.07.2020, 03:29 |
|
||
|
Delphi 10.3 Функция ExitWindows работает некорректно
|
|||
|---|---|---|---|
|
#18+
X-Cite Он походу вообще читать не умеет To shut down or restart the system, the calling process must use the AdjustTokenPrivileges function to enable the SE_SHUTDOWN_NAME privilege. For more information, see Running with Special Privileges. Да я погляжу вы тут умные все собрались, что никто не может код скинуть рабочий. Ты сам-то читать умеешь? Открой хелп и почитай. https://docs.microsoft.com/en-us/windows/win32/api/winuser/nf-winuser-exitwindowsex Посмотри, сколько флагов имеет эта функция. Не форум, а дерьмо какое-то. Вместо помощи только и брызжет каждый негативом. Я в самом начале задал конкретный и четкий вопрос про три функции, которые мне необходим. Выключение, рестарт и логофф. И это раньше прекрасно работало вот в таком виде: Код: pascal 1. 2. 3. Из них работает только ExitWindows(EWX_LOGOFF,0); Вот я и спросил про остальные две. Не знаете, так и нечего кидать меня по хелпам, которые я и так прочитал ещё до написания поста и я об этом написал. Идет описание различных параметров для функций. Читать-то умеете умники? Ссылка чуть выше. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.07.2020, 09:29 |
|
||
|
Delphi 10.3 Функция ExitWindows работает некорректно
|
|||
|---|---|---|---|
|
#18+
white_nigger GunSmoker, а может, если ему выделить на той страничке "Applications should call ExitWindowsEx directly." он додумается открыть хелп по нужной функции? )) А ты додумаешься почитать мой второй пост и увидеть, что я эту функцию уже использовал и прекрасно знаю о ней. Они имеет несколько флагов и они НЕ работают, как мне надо. Или кроме как брызгание комментами бесполезными и не умеешь ничего? Или вы так сообщения себе набиваете для статистики? Так они бесполезны. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.07.2020, 09:33 |
|
||
|
Delphi 10.3 Функция ExitWindows работает некорректно
|
|||
|---|---|---|---|
|
#18+
Чего бычить, если сам лажаешь. Евгений Стронг Допустим для функции лог офф она будет выглядеть вот так: Код: c# 1. 2. 3. 4. Но а как мне выполнить ребут, например - EWX_REBOOT. Подставляя параметр 0 - ничего не происходит. Так и подставляй EWX_REBOOT, при чем тут 0 (который = EWX_LOGOFF) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.07.2020, 10:21 |
|
||
|
Delphi 10.3 Функция ExitWindows работает некорректно
|
|||
|---|---|---|---|
|
#18+
Fr0sT-Brutal Чего бычить, если сам лажаешь. Евгений Стронг Допустим для функции лог офф она будет выглядеть вот так: Код: c# 1. 2. 3. 4. Но а как мне выполнить ребут, например - EWX_REBOOT. Подставляя параметр 0 - ничего не происходит. Так и подставляй EWX_REBOOT, при чем тут 0 (который = EWX_LOGOFF) Функция ExitWindowsEx подразумевает ДВА параметра. Я это и пытаюсь выяснить уже на протяжении какого сообщения. 0 - параметр для логоффа, а какой для EWX_REBOOT? Что подставить вместо 0? Так понятнее? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.07.2020, 11:07 |
|
||
|
Delphi 10.3 Функция ExitWindows работает некорректно
|
|||
|---|---|---|---|
|
#18+
Код: plaintext 1. 2. 3. 4. 5. 6. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.07.2020, 11:09 |
|
||
|
Delphi 10.3 Функция ExitWindows работает некорректно
|
|||
|---|---|---|---|
|
#18+
Евгений Стронг Функция ExitWindowsEx подразумевает ДВА параметра. Я это и пытаюсь выяснить уже на протяжении какого сообщения. 0 - параметр для логоффа, а какой для EWX_REBOOT? Что подставить вместо 0? Так понятнее? Зачем пытаться выяснить, ты не можешь по ссылке в MSDN, которую сам же привел, описание прочитать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.07.2020, 11:12 |
|
||
|
Delphi 10.3 Функция ExitWindows работает некорректно
|
|||
|---|---|---|---|
|
#18+
d7i Код: plaintext 1. 2. 3. 4. 5. 6. Спасибо. Но не работает. То есть во всех трех случаях происходит закрытие всех приложение и выход до окна авторизации. То есть по сути логофф во всех случаях. Код: pascal 1. 2. 3. Буду дальше разбираться. Быть может проблема на уровне привилегий или ещё чего там мелкософт поменял в API. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.07.2020, 11:24 |
|
||
|
Delphi 10.3 Функция ExitWindows работает некорректно
|
|||
|---|---|---|---|
|
#18+
Евгений Стронг, Обратите внимание на Код: plaintext 1. По-моему надо вызывать Код: plaintext 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.07.2020, 11:28 |
|
||
|
Delphi 10.3 Функция ExitWindows работает некорректно
|
|||
|---|---|---|---|
|
#18+
d7i Евгений Стронг, Обратите внимание на Код: plaintext 1. По-моему надо вызывать Код: plaintext 1. Попробовал так, но ничего не происходит вообще. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.07.2020, 11:39 |
|
||
|
Delphi 10.3 Функция ExitWindows работает некорректно
|
|||
|---|---|---|---|
|
#18+
Первая ссылка в гугле https://forum.sources.ru/index.php?showtopic=6362 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.07.2020, 11:54 |
|
||
|
Delphi 10.3 Функция ExitWindows работает некорректно
|
|||
|---|---|---|---|
|
#18+
wadman Первая ссылка в гугле https://forum.sources.ru/index.php?showtopic=6362 Совершенно верно и в моем сообщении я использовал именно этот код: ExitWindows(EWX_LOGOFF,0); - завершение сеанса ExitWindows(EWX_SHUTDOWN,0); - выключение компьютера ExitWindows(EWX_REBOOT,0); - перезагрузка И потому, что он НЕ работает - я обратился на форум за помощью. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.07.2020, 12:15 |
|
||
|
Delphi 10.3 Функция ExitWindows работает некорректно
|
|||
|---|---|---|---|
|
#18+
Использовал такой код: Код: pascal 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. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. 77. 78. 79. 80. 81. 82. 83. 84. 85. 86. 87. 88. 89. 90. 91. 92. 93. 94. 95. 96. 97. 98. 99. 100. 101. 102. 103. 104. 105. 106. 107. 108. 109. 110. Пример: MyExitWindows(EWX_REBOOT or EWX_FORCE); ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.07.2020, 12:19 |
|
||
|
Delphi 10.3 Функция ExitWindows работает некорректно
|
|||
|---|---|---|---|
|
#18+
Евгений Стронгя использовал именно этот код он НЕ работает Он и не должен работать. И это чёрным по англицки написано в документации в которую тебя тычут носом уже второй день. Может, ты просто по английски не понимаешь? translate.google.com тебе поможет. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.07.2020, 12:24 |
|
||
|
Delphi 10.3 Функция ExitWindows работает некорректно
|
|||
|---|---|---|---|
|
#18+
Евгений Стронг И потому, что он НЕ работает - я обратился на форум за помощью. Права на операцию есть? Из мсдн "The calling process must have the SE_SHUTDOWN_NAME privilege. For more information, see the following Remarks section." ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.07.2020, 12:37 |
|
||
|
Delphi 10.3 Функция ExitWindows работает некорректно
|
|||
|---|---|---|---|
|
#18+
Евгений Стронг Совершенно верно и в моем сообщении я использовал именно этот код: Тут кое чего важного не хватает. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.07.2020, 12:47 |
|
||
|
|

start [/forum/topic.php?fid=58&fpage=40&tid=2038142]: |
0ms |
get settings: |
8ms |
get forum list: |
13ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
26ms |
get topic data: |
7ms |
get forum data: |
2ms |
get page messages: |
74ms |
get tp. blocked users: |
1ms |
| others: | 201ms |
| total: | 336ms |

| 0 / 0 |
