Nie można uruchomić Eksploratora plików jako inny użytkownik


8

Kontynuując pytanie dotyczące otwierania eksploratora plików jako innego użytkownika , próbowałem nawigować do C:\Windows, shift + kliknięcie prawym przyciskiem myszy explorer.exei kliknięcie „Uruchom jako inny użytkownik”. Kiedy wprowadzam dane logowania użytkownika, otrzymuję 2 kolejne komunikaty o błędach, z których oba mówią

System Windows nie może uzyskać dostępu do określonego urządzenia, ścieżki lub pliku. Możesz nie mieć odpowiednich uprawnień, aby uzyskać dostęp do elementu

Jeśli wypróbuję dane logowania do konta, które jest aktualnie zalogowane, działa, ale drugie nie. Dotyczy to obu kont (administratorów) na moim komputerze.

Edytować

W komentarzach pojawiło się zamieszanie. Staram się podążać za zaakceptowaną odpowiedzią na powyższe pytanie i to nie działa. Niektórzy mówią, że nie da się tego zrobić, więc dziwne jest, że istnieje akceptowana odpowiedź z 3 głosami pozytywnymi


@ BlueBerry-Vignesh4303 Użytkownicy mojego komputera mają uprawnienia zarówno do odczytu, jak i do odczytu i wykonywaniaexplorer.exe
binaryfunt

Myślałem, że tak będzie, ponieważ explorer [już równoległy proces eksploratora działający u istniejącego użytkownika] jest wspólnym katalogiem, który jest wspólny dla obu, który służy do eksploracji plików w katalogu Windows, więc może nie być dostępny dla innego użytkownika, jest taki sam rezultat, podczas gdy wykonywanie innych programów Microsoft, takich jak cmd.exe?
BlueBerry - Vignesh4303

@ BlueBerry-Vignesh4303 Mogę dobrze otworzyć cmd.exejako inny użytkownik. Jeśli zaakceptowana odpowiedź na połączone pytanie (3 głosy poparcia) mówi „rób to, co próbowałem zrobić, aby uruchomić Eksploratora jako inny użytkownik, powinien on działać
binaryfunt

Jeśli możesz dobrze otworzyć cmd, stamtąd wpisz start .i powinien on otworzyć eksploratora jako ten użytkownik.
LPChip

@LPChip Otrzymuję ten sam komunikat o błędzie, jeśli spróbuję, i jest napisany Access deniedna nowej linii (normalne polecenie cmd może nadal otwierać Eksploratora jako konto bieżące)
binaryfunt

Odpowiedzi:


6

Na tej TechNet Blog Post , explorer.exe wydaje się być pojedynczym gwintowane i nie pozwoli wielu wątków uruchomionych w ramach różnych kont użytkowników:

Eksplorator Windows nie został zaprojektowany do działania w różnych kontekstach bezpieczeństwa w tej samej sesji pulpitu, Windows nie może po prostu wyświetlić monitu UAC, a następnie uruchomić podwyższoną instancję Eksploratora Windows

Najbardziej użyteczną alternatywą dla korzystania z explorer.exe , jak również opisano w tym artykule, jest pobranie explorer ++ i uruchomienie go jako użytkownika, którego pliki chcesz przeglądać. Możesz połączyć się ze ścieżkami UNC tak samo łatwo w explorer ++, jak w Eksploratorze, więc wydaje się to wystarczającą alternatywą. Jest to również najłatwiejsze podejście, jakie spotkałem, które nie wymaga podwyższonych uprawnień (takich jak te potrzebne do ingerowania w rejestr lub instalowania dodatkowego oprogramowania).


2
To wygląda na poprawną odpowiedź. Znalazłem te same przeszkody, co PO. Uważam, że ta odpowiedź powinna być odpowiedzią przyjętą.
James Jenkins

1

Z tego, co można przeczytać w innych pytaniach ( 1 , 2 ) na ten temat, zwykle jest to w najlepszym razie hacking i na pewno nie jest to obsługiwany scenariusz. Co więcej, drugie pytanie zawiera więcej informacji, a jeśli skorzystasz z kilku linków, znajdziesz się tutaj: A więc to jest Vista…

Jeśli sprawdzisz ten artykuł, przeczytasz:

W systemie Vista wprowadzono jednak więcej zmian. Ani Internet Explorer, ani Windows Explorer nie chcą obsługiwać wielu kont na tym samym pulpicie. Jeśli spróbujesz uruchomić przeglądarkę IE na innym koncie użytkownika niż na pulpicie, wyświetli się komunikat o błędzie: „Polecenie RUNAS nie jest obsługiwane”. Jak rozumiem, głównym powodem jest to, że w trybie chronionym Internet Explorer, który działa na niskim poziomie integralności, IE uruchamia również proces brokera Medium IL (ieuser.exe), który działa jako użytkownik pulpitu i który bramkuje wybrane operacje Medium IL dla proces niskiej IL. Dopuszczenie wielu tożsamości do tej mieszanki wprowadziłoby znaczną złożoność, której najlepiej unikać. Jeśli spróbujesz uruchomić Eksploratora Windows jako inny użytkownik, nic nie zobaczysz - nowy proces rozpoczyna się, ale kończy bez wyświetlania okna.

...

Explorer jest nieco trudniejszy. Bezpośrednie zastosowanie polecenia „Uruchom jako administrator” tego nie zrobi, ale często działa to z poziomu podniesionej powłoki poleceń. Uważam, że wiersz poleceń taki jak „explorer / e, c: \” będzie działał, podczas gdy samo uruchomienie „explorer” może nie działać. Ale jak poprzednio : jeśli w ogóle działa, jest to niezamierzony efekt uboczny obecnej implementacji i może ulec zmianie w dowolnym momencie.

Rozsądnie jest oczekiwać, że utrzymają to zachowanie tak, jak w Windows Vista, Windows 7, Windows 8, a teraz (prawdopodobnie) Windows 10.

Wygląda więc na to, że będziesz musiał użyć hacka, rozważyć obejście lub ponownie ocenić problem, który prowadzi do konieczności uruchomienia Eksploratora jako innego użytkownika.

Aby obejść ten problem, można użyć innego eksploratora plików, takiego jak Total Commander, cmddziałającego pod różnymi danymi uwierzytelniającymi, otwartego okna dialogowego innego oprogramowania uruchomionego jako inny użytkownik lub „szybkiego przełączenia” systemu Windows, aby chwilowo przełączyć się na inne użytkownik.

Tak naprawdę nie podałeś żadnych informacji, dlaczego próbujesz to zrobić, więc nie mam pojęcia, jak mogłoby wyglądać inne podejście, a co do włamania ... w powyższych pytaniach jest wiele. Domyślam się, że ten, który podałeś w początkowym pytaniu, został zamaskowany jako rozwiązany, że osoba przeprowadziła dalsze badania i być może natknęła się na te hacki.


1

Ustawienie Eksploratora do otwierania folderów w osobnych procesach używanych w celu umożliwienia działania poniżej 1511. Np. W wierszu poleceń działającym jako użytkownik1, „explorer c: \ somePath” otworzy okno Eksploratora działające jako użytkownik1, natomiast z wiersza polecenia działającego jako UżytkownikZ , to samo polecenie otworzy okno eksploratora działające jako UserZ.

Po aktualizacji do 1607, to się zepsuło. Kliknij prawym przyciskiem myszy i uruchom, ponieważ różni użytkownicy powodują te same błędy, które podano powyżej.

Po uruchomieniu eksploratora z wiersza polecenia nigdy nie jest wyświetlane żadne okno, ale nowy proces eksploratora należący do aktualnie zalogowanego użytkownika pulpitu. Ten proces ostatecznie znika sam. Kilka razy widziałem, jak nowy proces eksploratora uruchamia się jako użytkownik, który go wywołał, a następnie ten proces natychmiast się zamyka, a nowy proces będący własnością użytkownika pulpitu jest odradzany (i nigdy się nie pojawia, a po części zostaje automatycznie zabity ). Podejrzewam, że tak jest zawsze, zwykle dzieje się to zbyt szybko, aby można było to zaobserwować w Menedżerze zadań. Process Monitor lub coś podobnego prawdopodobnie pomogłoby to udowodnić, ale nie zawracałem sobie głowy, ponieważ prawdopodobnie i tak nie mogę tego naprawić. : \


1

Ciekawe obejście, które niedawno odkryłem i nikt tu jeszcze nie wspomniał:

Spawnuj dowolny proces / program jako inny użytkownik (np. Notatnik), a w zależności od używanego programu i frameworka możesz użyć interfejsu API Common File Dialog Box API do wykonywania wielu regularnych operacji powłoki „eksploratora”.

(Po prostu wybierz Zapisz jako ... lub Otwórz ... z menu i użyj menu kontekstowego, aby wykonać kopiowanie / wklejanie itp., A następnie „anuluj” okno dialogowe).

Jak uruchomić jako inny użytkownik

Aby spawnować dowolny program jako inny użytkownik, użyj sruninas shellrunas , które mogą zainstalować element menu kontekstowego. Alternatywnie, spawn cmd z wbudowanymi runami Windows , a następnie uruchom program, który używa interfejsu API Common File Dialog Box .

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.