Не вдається запустити Провідник файлів як інший користувач


8

Виходячи з цього питання про відкриття провідника файлів як іншого користувача , я спробував перейти до C:\Windows, переключити + клацнути правою кнопкою миші explorer.exeта натиснути "Запустити як інший користувач". Коли я ввожу дані про вхід користувача, я отримую 2 послідовних повідомлення про помилки, обидва з яких говорять

Windows не може отримати доступ до вказаного пристрою, шляху або файлу. Ви можете не мати відповідних дозволів на доступ до товару

Якщо я спробую реквізити для входу в обліковий запис, який зараз увійшов, він працює, але інший - ні. Це стосується обох облікових записів (адміністраторів) на моєму ПК.

Редагувати

У коментарях виникла певна плутанина. Я намагаюся дотримуватися прийнятої відповіді у вищезазначеному питанні , і це не працює. Деякі люди кажуть, що цього не можна зробити, тому дивно, що є прийнята відповідь з 3-ма заявками


@ BlueBerry-Vignesh4303 Користувачі мого ПК мають дозволи на читання та читання та виконання дляexplorer.exe
binaryfunt

Моя загальна думка, що це буде, оскільки Explorer (вже паралельний процес провідника, що працює у існуючого користувача) - це загальна директорія, яка є спільною для обох, яка обслуговує дослідження файлів у каталозі Windows, так що він може бути недоступний іншому користувачеві - це той самий результат, хоча виконання будь-яких інших програм Microsoft, таких як cmd.exe?
BlueBerry - Vignesh4303

@ BlueBerry-Vignesh4303 Я можу відкрити cmd.exeчудово як інший користувач. Якщо прийнята відповідь на пов’язане запитання (3 оновлення) говорить, що робити те, що я намагався запустити Explorer, як інший користувач, він повинен працювати
binaryfunt

Якщо ви можете відкрити cmd просто добре, звідти введіть start .і він повинен відкрити провідник як цей користувач.
LPChip

@LPChip я отримую те саме повідомлення про помилку, якщо я спробую це, і воно говорить Access deniedна
новому

Відповіді:


6

Відповідно до цієї публікації в блозі TechNet , Explor.exe, схоже, є однопотоковою і не дозволить використовувати декілька потоків під різними обліковими записами користувачів:

Провідник Windows не був розроблений для запуску в декількох контекстах безпеки в одному сеансі робочого столу, Windows не може просто підкинути підказку UAC і потім запустити підвищений екземпляр Explorer

Найбільш корисною альтернативою використання Explor.exe , як також зазначено в цій статті, є завантаження Explorer ++ і запуск цього користувача як користувача, для якого ви хочете переглядати файли. Ви можете підключитися до UNC-шляхів так само легко, як у Explorer ++, як і в Explorer, тому це здається достатньою альтернативою. Це також найпростіший підхід, який я натрапив, який не вимагає підвищених дозволів (наприклад, тих, які потрібні для втручання в реєстр або встановлення додаткового програмного забезпечення).


2
Це виглядає як правильна відповідь. Я знайшов ті ж перешкоди, що і ОП. Я вважаю, що ця відповідь має бути прийнятою відповіддю.
Джеймс Дженкінс

1

З того, що ви можете прочитати в інших питаннях ( 1 , 2 ) щодо цієї теми, це, як правило, в кращому випадку хакі, і, звичайно, не підтримується сценарій. Далі більше, друге питання містить трохи більше інформації, і якщо ви перейдете за кількома посиланнями, ви опинитесь тут: І ось це Vista…

Якщо ви перевірите цю статтю, ви прочитаєте наступне:

Однак у Vista більше змін. Ні Internet Explorer, ні Провідник Windows не бажають розважатись на кількох облікових записах на одному робочому столі. Якщо ви спробуєте запустити IE під іншим обліковим записом користувача, ніж на робочому столі, воно відобразить повідомлення про помилку: "Команда RUNAS не підтримується." Як я розумію, головна причина полягає в тому, що з захищеним режимом Internet Explorer, який працює з низьким рівнем доброчесності, IE також запускає брокерський середній ІР-процес (ieuser.exe), який працює як користувач настільних ПК і який відтворює вибрані середні операції ІЛ для низький рівень ІЛ. Якщо дозволити декілька ідентичностей у цю суміш, було б внесено значну складність, яку найкраще уникати. Якщо ви спробуєте запустити Провідник Windows як інший користувач, ви нічого не побачите - новий процес починається, але закінчується, не відображаючи вікна.

...

Провідник трохи хитріший. Без прямого застосування "Запустити як адміністратор" це не обійдеться, але запуск його з підвищеної командної оболонки часто буде. Я вважаю, що командний рядок типу "explorer / e, c: \" буде працювати, тоді як лише запущений "explorer" може не працювати. Але як і раніше : якщо воно взагалі працює, це є ненавмисним побічним ефектом поточної реалізації, і воно може змінитися в будь-який час.

Доцільно розраховувати, що вони будуть зберігати таку поведінку, як це було в Windows Vista, Windows 7, Windows 8 та зараз (напевно) Windows 10.

Тож, здається, вам доведеться або використовувати хак, розглянути спосіб вирішення проблеми або переоцінити свою проблему, яка призводить до того, що вам доведеться запускати провідник як інший користувач.

В якості вирішення ви можете використовувати інший провідник файлів, як Total Commander, cmdякий працює під різними обліковими даними, діалогове вікно відкриття файлів іншого програмного забезпечення, яке ви розпочали як інший користувач, або "швидкий перемикач" Windows, щоб просто тимчасово перейти на інший користувач.

Ви насправді не надали будь-якої інформації, чому ви намагаєтеся це зробити, тому я не маю уявлення, як може виглядати інший підхід, а щодо хакера ... у вищезазначених питаннях багато. Я здогадуюсь, чому той, кого ви пов’язали у своєму первинному питанні, маскувався як вирішений, - це те, що людина зробила ще кілька досліджень і, можливо, натрапила на ці хаки.


1

Налаштування Explorer відкривати папки в окремих процесах, які використовуються для того, щоб це працювало під 1511. Наприклад, у командному рядку, що працює як user1, "explorer c: \ somePath" відкриє вікно провідника, що працює як user1, а в командному рядку працює як UserZ , та сама команда відкриє вікно провідника, що працює як UserZ.

Після оновлення до 1607 р. Це зламалось. Клацніть правою кнопкою миші та запустити так, як різні користувачі призводять до одних і тих же помилок, зазначених вище.

Запустивши Explorer у командному рядку, вікно ніколи не відображається, але новий процес провідника, який належить користувачеві на робочому столі, який зараз увійшов. Цей процес врешті проходить самостійно. Я кілька разів спостерігав, як новий процес провідника запускається, коли той користувач, який його викликав, тоді цей процес негайно закривається, і виникає новий процес, що належить користувачеві настільних ПК (і ніколи не з’являється, а після трохи автоматично вбивається ). Я підозрюю, що це завжди так, як правило, це відбувається занадто швидко, щоб спостерігати в диспетчері завдань. Монітор процесів чи щось подібне, ймовірно, допоможе довести це, але я не переймався, оскільки я, мабуть, не можу це виправити. : \


1

Цікаве рішення, яке я нещодавно виявив, і тут ніхто ще не згадував:

Породжуйте будь-який процес / програму як іншого користувача (наприклад, Блокнот), і залежно від програми та використовуваної рамки, ви можете використовувати API діалогового вікна загального файлу, щоб зробити багато регулярних операцій оболонки «провідника».

(Просто виберіть у меню "Зберегти як .." або "Відкрити ..." та скористайтеся контекстним меню для копіювання / вставки тощо, а потім "скасуйте" діалогове вікно.

Як в першу чергу запустити як іншого користувача

Щоб нерестувати будь-яку програму як іншого користувача, використовуйте оболонки sysinternals , на які можна встановити пункт контекстного меню. Як альтернатива, зробіть cmd із вбудованими рунами Windows , а потім запустіть програму, що використовує загальний API діалогового вікна файлів .

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.