Конференция "Основная" » Как снять скриншот экрана при отключенном сеансе?
 
  • DayGaykin © (30.08.17 10:01) [0]
    Захожу по РДП, работаю - программа снимает скриншоты.
    Отключаюсь - вместо скриншотов черные экраны.
    Можно как-нибудь вылечить?

    Windows 7.
  • Игорь Шевченко © (30.08.17 10:27) [1]
    Скриншот ЧЕГО ты собираешься снимать ?
  • rrrrrrr © (30.08.17 11:04) [2]
    скриншот того, чего он сам только что прервал.

    Можно как-нибудь вылечить?

    чтобы не черный а белый был?
  • DayGaykin © (30.08.17 13:57) [3]

    > Игорь Шевченко ©   (30.08.17 10:27) [1]
    > Скриншот ЧЕГО ты собираешься снимать ?

    Рабочего стола с окнами.

    Может можно как-то сделать, чтобы при отключении по RDP сеанс автоматических переходил на консоль (или как это называется)?
  • rrrrrrr © (30.08.17 14:29) [4]
    как он куда-либо там перейдет, если сам сеанс при этом перестает быть живым.
  • ВладОшин © (30.08.17 14:32) [5]
    поставить агента туда, на удаленку
    он пусть снимает после WTSDisconnected и пересылает потом пачкой

    под гугл

     LibHandle := LoadLibrary('wtsapi32.dll');
     if LibHandle <> 0 then
     begin
       @WTSQuerySessionInformation := GetProcAddress(LibHandle, 'WTSQuerySessionInformationA');
  • Игорь Шевченко © (30.08.17 14:36) [6]

    > Рабочего стола с окнами.


    Рабочий стол - это рабочий стол твоего сеанса. Нет сеанса - нет рабочего стола.
  • DayGaykin © (30.08.17 14:50) [7]

    >
    > Рабочий стол - это рабочий стол твоего сеанса. Нет сеанса
    > - нет рабочего стола.

    А окна в этот момент где?
  • rrrrrrr © (30.08.17 14:51) [8]
    там же точно где и все процессы, запущенные с этого стола.
    в лучшем из миров
  • Delphi admirer © (30.08.17 16:10) [9]
    эмм... Вообще-то вовсе не обязательно чтоб при отключении RDP сеанс завершался.
    У нас у части клиентов сеанс остаётся живой, все процессы продолжают работать, можно подключиться опять и оказаться в абсолютно том же сеансе.

    > работаю - программа снимает скриншоты.

    Что за программа? Где находится? Как и под кем запускается? Что конкретно делает? Как проверяете?
  • rrrrrrr © (30.08.17 16:14) [10]
    Вообще-то вовсе не обязательно чтоб при отключении RDP сеанс завершался.

    ну естественно не обязательно.
    если на крестик нажать в панели, то сеанс останется.

    но так как про крестик не было уточнено, то считаем что там было "безопасность виндовс->завершить сеанс"

    то есть никакого сеанса там больше нет.
    нет запущенных сеансом процессов.
    ничего там нет
  • ВладОшин © (30.08.17 16:44) [11]
    Серьезно, имхо, надо туда ставить свою приблуду.
    WTSQuerySessionInformationA и смежные ей темы на msdn почитать, там несложно. Как только закрыли окошко - скрины делаются "там", при возобновлении - передаются архивом и не делаются до следующего обрыва(или делаются)

    ибо, действительно,
    ->завершить сеанс
    понятно, что ничего нет там тогда

    но раз что-то хочет оттуда, наверное, все-таки не так было )

    везет вам..
    у нас за требование "излишней" формальности от юзера наказывают )
    Ибо надо было понять. "Двоичность (с) ЮЗ" не приветствуется..
  • rrrrrrr © (30.08.17 16:50) [12]
    Ибо надо было понять.

    тест на понимание чего там происходило реально.

    по телефону:
    "я качаю файл. ой! он вдруг в обратную сторону начал качаться!"
  • DayGaykin © (30.08.17 16:59) [13]
    Я ничего не говорил про завершение сеанса. Написано же "отключаюсь". Я отключаюсь, а моя программа продолжает делать скриншоты. По на время отключения скриншоты не получается делать - вместо картинки черный прямоугольник.


    > ВладОшин ©   (30.08.17 16:44) [11]

    Не совсем понимаю о чем вы.
    И не понятно почему везет.
  • ВладОшин © (30.08.17 17:36) [14]

    > тест на понимание чего там происходило реально.

    Прогресс-бар уменьшился? )
    В связи с падением скорости, например


    > Не совсем понимаю о чем вы.
    > И не понятно почему везет.

    да ладно, не важно )
  • ВладОшин © (30.08.17 17:46) [15]

    > rrrrrrr ©   (30.08.17 16:50) [12]

    Это еще ладно, а вот заявка, точно не помню, но примерно )))

    "Просьба пояснить как произошла запись "12:45:30 - Авария""

    Открываешь лог и смотришь
    # user action TPMMaskEdit.KeyPress Key[1] eReason (XY 496,480)
    # user action TPMMaskEdit.KeyPress Key[2] eReason (XY 496,480)
    # user action TPMMaskEdit.KeyPress Key[:] eReason (XY 496,480)
    ...
    # user action TPMMaskEdit.KeyPress Key[я] eReason (XY 496,480)
    # user action TPMMaskEdit.KeyPress Key[:] eReason (XY 496,480)
    # user action TPMCheckBox.MouseDown ckBye (XY 424,744)
    # user action TPMButton.Click tbnSave (XY 520,800)

    и пишешь ответ
    "
    Методом последовательного нажатия клавиш 1,2,:,4,5,:,3,0, ,-, ,А,в,а,р,и,я
    оператор набрал фразу 12:45:30 - Авария
    Путем клика мышки отметил галку Прощание и ею же (мышкой) нажал кнопку Записать причину бездействия
    Зависаний и разрывов связи с БД, RDP не зафиксировано. % загрузки CPU был около 0.
    Информация по заявке предоставлена. Просьба подтвердить/опровергнуть возможность закрытия заявки
    "
  • Игорь Шевченко © (30.08.17 22:35) [16]
    ВладОшин ©   (30.08.17 17:46) [15]

    Недопонял, каким образом твой пост связан с темой ветки.

    DayGaykin ©   (30.08.17 16:59) [13]

    Когда ты отключаешься, системе больше не надо рисовать окошки, так как их никто не увидит, поэтому она не рисует ничего.
  • ВладОшин © (31.08.17 09:01) [17]

    > Игорь Шевченко ©   (30.08.17 22:35) [16]

    [15] - никак, виноват, пошутить пытался
  • DayGaykin © (31.08.17 15:23) [18]

    > Игорь Шевченко ©   (30.08.17 22:35) [16]
    >

    Понятно, спасибо. А есть идеи?

    Это все в рамкой того же кликера. Когда происходит какая-то ошибка он делает скриншот и отправляет его в письме. При отключенном сеансе - черный прямоугольник.
  • ухты © (31.08.17 17:18) [19]
    Аеро в таскбаре умеет показывать то что не рисуется. Посмотреть в ту сторону?
  • Игорь Шевченко © (31.08.17 18:21) [20]

    >  А есть идеи?


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


    > Это все в рамкой того же кликера


    Что такое кликер ?
  • DayGaykin © (31.08.17 18:41) [21]

    > Да, отсылать не скриншот, а полезные данные, помогающие
    > локализовать ошибку.

    Так отправляю лог, где все указано. Скриншот ускоряет понимание ошибки.

    Кликер — любое устройство, издающее звук щелчка при использовании. Я имел ввиду, программу, которая использует другое приложение  "кликанием" мышкой, помимо прочего.
  • Delphi admirer © (02.09.17 00:27) [22]
    Вы совсем не указали как же конкретно вы выполняете "программа снимает скриншоты"... Где код? Пробовали ли вы "другой" код, какие результаты?

    На вскидку - каков результат PrintWindow()?
 
Конференция "Основная" » Как снять скриншот экрана при отключенном сеансе?
Есть новые Нет новых   [118654   +12][b:0][p:0.001]