Jak zrobić zrzut ekranu z bezpiecznego pulpitu Windows?

25

Domyślnie komunikat UAC systemu Windows Vista / 7/8 jest wyświetlany na bezpiecznym pulpicie. Niestety Print Screenklucz nie wydaje się mieć żadnego wpływu podczas przeglądania bezpiecznego pulpitu. Widzę uzasadnienie tego - żadna aplikacja w trybie użytkownika nie powinna być w stanie przechwycić zawartości bezpiecznego pulpitu.

Pozostaje jednak moje pytanie: czy jest jakiś sposób na zrzut ekranu tego pulpitu?


Edycja: być może pomogłbym, jeśli wyjaśnię problem.

Obecnie korzystam z systemu Windows 8 i mam mały monitor DisplayLink, z którego chciałbym korzystać. Ten sterownik został właśnie wydany i działa świetnie - z wyjątkiem tego, że psuje się na bezpiecznym pulpicie. Chcę opublikować raport o błędzie na forach tam i aby to zrobić, potrzebuję zrzutu ekranu. Oczywiście problem nie ujawni się na standardowym pulpicie - a uruchomienie systemu Windows na maszynie wirtualnej jest niemożliwe, ponieważ system Windows 8 wymaga wirtualizacji sprzętowej (której nie mam), a uzyskanie monitorów USB do pracy z maszyną wirtualną jest w najlepszym razie trudne.

Nathan Osman
źródło
5
Możesz uruchomić go na maszynie wirtualnej.
jdigital
1
@ user8368: To nie jest opcja, ponieważ próbuję uzyskać zrzut ekranu, aby zademonstrować konkretny problem sprzętowy, który może nie pojawić się na maszynie wirtualnej. Z perspektywy licencyjnej nie jest to również opcja. I na koniec, nie mam wirtualizacji sprzętowej, więc bardzo utrudniłoby to wszystko.
Nathan Osman
1
Można ustawić monit UAC, aby nie korzystał z bezpiecznego pulpitu za pomocą (lokalnych) zasad grupy.
billc.cn
1
@ billc.cn: Wiem, ale problem, który próbuję uzyskać zrzut ekranu, nie ujawnia się.
Nathan Osman
1
@GeorgeEdison: Jesteś pewien? Po wyłączeniu Bezpiecznego pulpitu komunikat UAC będzie nadal działać. Ale ponieważ nie ma go na bezpiecznym pulpicie, inne aplikacje mogą go zrzut ekranu.
surfasb

Odpowiedzi:

40

Znalazłem sposób na zrobienie tego raczej w „czarny kapelusz” ...

wprowadź opis zdjęcia tutaj

W bezpiecznym pulpicie narzędzia ułatwień dostępu działają nadal dobrze ... więc użyłem mojej kopii FastStone Capture Portable , poszedłem do c:\windows\system32i przemianowałem osk.exeosk.exe.oldi skopiowałem / przemianowałem fscapture.exez katalogu Faststone do osk.exekatalogu system32.

Następnie podszedłem do monitu UAC, nacisnąłem Win Key+ Ui kliknąłem opcję „klawiatura ekranowa”.

I ... Zaczęło się FastStone Capture, chociaż był to tylko okres próbny ... użycie go w tym trybie nie może uzyskać dostępu do szczegółów mojej licencji ... Udało mi się zrobić zdjęcie i zapisać je ... chociaż kiedy myślałem, że oszczędzam na pulpicie, tak naprawdę poszło do c:\windows\syswow64\config\systemprofile\desktop... każdego dnia uczysz się czegoś nowego!

W oparciu o powyższe, zawsze myślałem, że bezpieczny pulpit UAC jest podwyższonym środowiskiem używającym własnych poświadczeń, ale myślę, że jest on faktycznie uruchamiany przez Systemużytkownika - więc Print Screenmoże faktycznie działać, po prostu nie jest w kontekście twojego użytkownik - mając to na uwadze, jeśli użyjesz kopii farby zamiast Fast Stone Capture, zrób zrzut ekranu, a następnie uruchom Paint poprzez hack klawiatury ekranowej, może to po prostu działać tak samo!

edycja --- aktualizacja ---

Farba jest za oknem! Właśnie przetestowałem moją teorię i to nie zadziałało, nie jestem pewien dokładnego powodu, ale zgaduję, że jeśli używasz praktycznie dowolnego narzędzia do przechwytywania ekranu i powyższej metody, powinno działać.

William Hilsum
źródło
3
To bardzo sprytne użycie narzędzi ułatwień dostępu :)
Nathan Osman
2
Podejrzewam, że Paint nie prosi o UIAccesspozwolenie na dobrą zabawę z UIPI, podczas gdy inne aplikacje ułatwień dostępu tak. Zobacz poziomem UIAccess dla aplikacji automatyki UI nad tutaj do wymagań.
ta.speot.is 27.01.12
@ todda.speot.is Interesujące i będą czytać, gdy chcę się uczyć, ale myślę, że może być też coś więcej - nie mogę sobie wyobrazić, że Faststone Capture to wdraża, musi to być po prostu wyłączenie ekranu drukowania przez domyślne i większość narzędzi do przechwytywania ekranu po prostu zastępuje domyślne zachowanie ... (Wiem, że MS ma technologię wyłączania bitów - np. pakiet MS DRM Enterprise Suite (zapomnij prawdziwą nazwę) wyłącza ekran drukowania i wiele innych funkcji).
William Hilsum
@WilliamHilsum (w nawiązaniu do twojego poprzedniego komentarza): Czy odwołujesz się do zasad grupy ?
bwDraco,
Zastanawiam się, czy Snipping Tool zrobiłby to samo?
Dziecko Boże
19

Zdobądź aparat cyfrowy i zrób zdjęcie ekranu.

LawrenceC
źródło
To też przyszło mi do głowy. Nie tak elegancki, ale znacznie mniejszy ból głowy.
Paperlantern
17

Pozostaje jednak moje pytanie: czy jest jakiś sposób na zrzut ekranu tego pulpitu?

Proces działający jako SYSTEM zainstalowany w odpowiedniej lokalizacji i może go ominąć i przejść do bezpiecznego pulpitu.

Wykorzystaj istniejące programy, które to robią - na przykład RealVNC (nie jest to darmowa edycja) i UltraVNC.

Uruchom serwer na komputerze i podłącz klienta do niego z innego komputera. Zrób zrzut ekranu okna klienta.

Chociaż prawdopodobnie zrobienie zdjęcia ekranu jest równie łatwe.

ta.speot.is
źródło
1
Och, właśnie tak ... Mam inną maszynę, na której mogę VNC i zobaczyć bezpieczny pulpit - zupełnie o tym zapomniałem.
Nathan Osman
11

Jest jeszcze lepszy sposób. Za pomocą dwóch bezpłatnych narzędzi open source, Greenshot i Process Hacker , będziesz w stanie stworzyć zrzut ekranu bezpiecznego pulpitu z następującymi zaletami :

  • Bez zbędnych skrzypiec i zmian w pliku systemowym lub rejestrze
  • Nie musisz wpisywać niczego w wierszu polecenia (dla użytkowników myszy jest to zaleta)
  • Łatwiej jest go wykonać, a oprócz pierwszej konfiguracji zajmuje dużo mniej czasu. Zaczynajmy!

    1. Pobierz Greenshot i skonfiguruj ustawienia, aby automatycznie zapisywać zdjęcie całego ekranu w folderze, jeśli naciśniesz klawisz Print Screen.

    2. Pobierz Process Hacker. Jeśli zobaczysz główne okno Process Hackera, upewnij się, że Greenshot jest zamknięty, i kliknij „Hacker” i „Uruchom jako ...”

    3. Wybierz plik wykonywalny Greenshot w „Program”. W „Nazwa użytkownika” kliknij listę i wybierz „NT AUTHORITY \ SYSTEM”. „Typem” powinna być Usługa, Identyfikator sesji 1, a na „Pulpicie” wybierz „WinSta0 \ Winlogon”. To jest ważne!

    4. Teraz powinieneś już iść, kliknij „OK”, gdy Greenshot zakończy ładowanie (powinno być krótkie), otwórz okno UAC i naciśnij klawisz Print. Powinieneś teraz zobaczyć zdjęcie bezpiecznego pulpitu w określonym folderze w Greenshot! Jeśli nie musisz już tworzyć zrzutów ekranu UAC, po prostu zabij proces Greenshot.

Baw się dobrze! Potwierdziłem to i przetestowałem sam po kilku testach, ponieważ dotychczas nie podobały mi się tutaj rozwiązania.

Testerhood
źródło
5

Oferuję inną opcję niż użycie maszyny wirtualnej, VNC lub zmiana rejestru lub plików systemowych, które mogą być nieprzyjemne lub niemożliwe w niektórych przypadkach.

Najpierw potrzebujesz oprogramowania do zrzutów ekranu, do tej odpowiedzi użyję 7capture które jest bezpłatne, ale wierzę, że można to zrobić za pomocą innych programów.

Po drugie będziesz potrzebować PsExec z pakietu PsTools , to narzędzie pozwoli umieścić 7capture w Windows Secure Desktop bez zmiany plików systemowych, po prostu tworząc i usuwając usługę, która jest automatycznie wykonywana przez PsExec.

Następnie z zainstalowanym 7capture i rozpakowanym PsTools do jakiegoś folderu wykonaj następujące czynności:

1) Otwórz CMD jako administrator.

2) Ustaw bieżący folder na folder, do którego wyodrębniono PSTools: cd path_to\PSTools

3) Uruchom 7capture w Windows Secure Desktop za pomocą następującego polecenia: PsExec /h /x /d /s "path_to\7capture.exe"

Gdzie:

-h: Jeśli systemem docelowym jest Vista lub wyższy, proces jest uruchamiany z podwyższonym tokenem konta, jeśli jest dostępny.

-x: Wyświetl interfejs użytkownika na bezpiecznym pulpicie Winlogon (tylko system lokalny).

-d: Nie czekaj na zakończenie procesu (nieinteraktywny).

-s: Uruchom zdalny proces na koncie systemowym.

4) Otwórz Bezpieczny pulpit systemu Windows, z którego chcesz zrobić zdjęcie. (Monit UAC, Ctrl + Alt + Del ekran itp.)

5) Użyj Ctrl + PrintScreen, aby zrobić zdjęcie tylko jednego okna, lub PrintScreen, aby zrobić zdjęcie całego ekranu.

6) Użyj Alt + Tab, aby przełączyć na 7capture.

7) Po prostu zapisz plik w dowolnym miejscu. (Jeśli masz problemy z obrazem pełnoekranowym, po prostu zapisz go jako BMP)

A tutaj możesz zobaczyć wyniki na moim Windows 7 (portugalski brazylijski):

Okno Monit UAC Monit UAC Pełny ekran

Antonio Dias
źródło
Ta metoda nie działa, jeśli żaden użytkownik nie jest zalogowany.
i31415
2

Jeśli zainstalujesz TeamViewer na komputerze i zrestartujesz komputer, teamviewer będzie mógł uzyskać dostęp do monitu UAC. Z innego komputera, który korzysta z Teamviewer, możesz zrobić zrzut ekranu z całego pulpitu, gdy Teamviewer jest widoczny, ale nie ma fokusu, a będziesz miał zrzut ekranu z monitem UAC.

LPChip
źródło
2

Inną opcją jest użycie autoitscript (z autoitscript.com)

Jest to darmowy, podobny do BASIC język skryptowy zaprojektowany do automatyzacji graficznego interfejsu użytkownika Windows i ogólnych skryptów. Wykorzystuje kombinację symulowanych naciśnięć klawiszy, ruchu myszy i manipulacji oknem / kontrolą.

Za pomocą funkcji send () można symulować naciśnięcie klawisza na ekranie drukowania. Zaczerpnięte z przykładów na stronie https://www.autoitscript.com/autoit3/docs/functions/Send.htm :

Example()

     Func Example()
          Send("{PRINTSCREEN}")
     EndFunc

Przejdź tutaj http://www.autoitscript.com/site/autoit/downloads/, aby go pobrać.

Sam nie próbowałem tego rozwiązania, ale wydaje się całkiem przyzwoite, biorąc pod uwagę, że musisz się włamać, aby rozwiązać problem.

Spróbuj. Mam nadzieję, że pomogłem.

PanGalactic
źródło
2

Rób zrzuty ekranu w dowolnym miejscu

Bezpieczny pulpit jest aktywny, gdy wystąpi którakolwiek z poniższych sytuacji: użytkownik blokuje pulpit (Windows + L), wygaszacz ekranu aktywuje się (gdy żaden użytkownik nie jest zalogowany) lub domyślnie, gdy Kontrola konta użytkownika wyświetli monit.

Źródło: XPDM vs. WDDM

Pomysł zapożyczono z odpowiedzi Williama Hilsuma, ale jest różnica: nie trzeba zastępować żadnego pliku systemowego i łatwiej jest cofnąć zmiany. Po wykonaniu poniższych kroków naciśnij Win+, Uilekroć chcesz zrobić zrzut ekranu bezpiecznego pulpitu.

Zastąp narzędzie Ułatwienia dostępu

  1. Otwórz wiersz polecenia jako administrator.
  2. Wpisz lub wklej następujące polecenie i zastąp X:\Path\to\file.exeje rzeczywistą ścieżką wybranego narzędzia do przechwytywania ekranu. Następnie naciśnij Enter.

    reg add "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\Utilman.exe" /v "Debugger" /t REG_SZ /d "X:\Path\to\file.exe" /f
    

    Uwaga: Paint i wbudowane narzędzie do wycinania nie mogą być używane: musisz polegać na programach innych firm. Narzędzia robocze są np LightShot , Greenshot i ShareX .

Cofnij zmiany

  1. Otwórz wiersz polecenia jako administrator.
  2. Wpisz lub wklej następujące polecenie i naciśnij Enter:

    reg delete "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\Utilman.exe" /f
    
i31415
źródło
1

Niewiele wiem o bezpiecznym pulpicie, ale teoretycznie możesz otworzyć Narzędzie wycinania i użyć go do zrobienia zrzutu ekranu w ten sposób. Bez edycji rejestru, bez zmiany nazwy pliku, brak. To bardzo prosta i łatwa metoda. Wyszukaj „Narzędzie wycinania” lub otwórz Uruchom (skrót klawiaturowy: Win + R) i wpisz „snippingtool” lub „snippingtool.exe”.

Tak czy inaczej, otwórz go i użyj trybu „Pełny ekran”. W systemie Windows 10 kliknij strzałkę obok przycisku „Tryb” i wybierz „Wycinek pełnoekranowy”. W starszych wersjach systemu Windows kliknij strzałkę obok przycisku „Nowy” i wybierz „Wycinek pełnoekranowy”. Jest on automatycznie kopiowany do okna Narzędzia wycinania, w którym możesz dodawać notatki, zapisywać wycinek lub wysłać go pocztą e-mail z okna Narzędzia wycinania. Aby uzyskać więcej informacji, zobacz stronę pomocy Microsoft .

Dziecko Boże
źródło
0

Wyłącz bezpieczny pulpit dla UAC, wykonując następujące czynności:

  1. Użyj klawisza Windows + skrót klawiaturowy R, aby otworzyć polecenie Uruchom.
  2. Wpisz gpedit.msc i kliknij OK, aby otworzyć Edytor lokalnych zasad grupy.
  3. Przeglądaj następującą ścieżkę:

Konfiguracja komputera> Ustawienia systemu Windows> Ustawienia zabezpieczeń> Opcje zabezpieczeń

  1. Po prawej stronie kliknij dwukrotnie Kontrolę konta użytkownika: Przełącz się na bezpieczny pulpit, gdy pojawi się monit o zasady dotyczące podniesienia uprawnień.

Edytor lokalnych zasad grupy

Wybierz opcję Wyłączone.

wprowadź opis zdjęcia tutaj

  1. Kliknij Zastosuj.
  2. Kliknij OK.

Następnie możesz użyć normalnego klawisza ekranu drukowania w dowolnej podwyższonej aplikacji.

TarmoPikaro
źródło
-1

Korzystam z systemu Windows Vista SP2. Nie spotkałem się z takim ograniczeniem powyżej. Mój ekran drukowania działa jak urok. Nie można pozbyć się, że jeśli wyłączenie UAC ( U ser ccount C ontroller). Aby to zrobić, użyj . Wyszukaj „wyłącz ustawienia UAC”. Następnie zainstaluj zielony strzał; myślę, że to przydatny program. Korzystałem z tej metody bez kłopotów.msconfig.exe

Reayality
źródło
OP chce zrobić zrzut ekranu bezpiecznego pulpitu. Wyłączenie UAC wyłącza bezpieczny pulpit, prawda?
gronostaj