Jeśli mam Notepad ++ działający jako administrator, nie mogę przeciągać do niego plików z Eksploratora (są one odrzucane za pomocą kursora „stop”) i jeśli spróbuję użyć rozszerzenia Eksploratora, kliknij prawym przyciskiem myszy „Edytuj za pomocą Notepad ++”, spowoduje to błąd .
Otwieranie plików za pomocą okna dialogowego „Otwórz” Notepad ++ lub nawet dwukrotne kliknięcie ich w Eksploratorze działa tak, jak powinno. (Uwaga: podwójne kliknięcie nie jest rozwiązaniem, ponieważ bardzo niewiele plików, które chcę otworzyć, to domyślnie Notepad ++)
Ustawiłem UAC na „nigdy nie powiadamiaj”.
Użycie hacka przy wyłączonym „trybie zatwierdzania administratora” przez UAC rozwiązuje problem, ale zabija możliwość korzystania z aplikacji Metro.
Odpowiedzi:
Procesy o niższej integralności nie mogą przekazywać komunikatów do komunikatów wyższego poziomu.
Przekonasz się, że tak jest w przypadku każdego podwyższonego procesu od wersji Windows Vista.
Procesy działają w ramach określonych tokenów dostępu do zabezpieczeń i poziomów integralności. Eksplorator działa pod ograniczonym tokenem konta użytkownika ze średnim poziomem integralności, a gdy podniesiesz poziom procesu, uruchamiając się jako administrator, użyje innego, nieograniczonego tokena bezpieczeństwa o wysokim poziomie integralności.
Częścią przeglądu bezpieczeństwa dostarczonego z Vistą było izolowanie uprawnień interfejsu użytkownika , które uniemożliwia procesom niższego poziomu wysyłanie wiadomości do tych wyższych (ponieważ wiadomości mogą być złośliwe, jak w przypadku ataków typu shatter).
W takim przypadku system Windows nie zezwoli Eksploratorowi na wysłanie wiadomości przeciągnij i upuść do Notepad ++ (faktycznie zwraca „sukces”, ale upuszcza wiadomość).
Aby uzyskać bardziej szczegółowe informacje o tokenach dostępu, poziomach integralności i UIPI, zobacz Projektowanie mechanizmu integralności systemu Windows .
źródło
Louis wyjaśnił, dlaczego nie można przeciągnąć z Eksploratora innego niż tryb administratora do Notatnika ++ w trybie administratora, a magicandre powiedział ci, jak to zrobić, uruchamiając Eksploratora w trybie administratora.
Po tym, jak sam doświadczyłem podobnego problemu, muszę zapytać dalej: dlaczego przede wszystkim używasz Notepad ++ w trybie administratora? W moim przypadku było tak, ponieważ wtyczka HTML Tidy, której lubię używać, musi zaktualizować plik cfg w folderze Program Files Notepad ++, aby działał; a Windows 8 ma zablokowane pliki programu jak szalone.
W końcu odblokowałem folder Notepad ++ Program Files, jak opisano tutaj: http://forums.auran.com/trainz/entry.php?115-Removing-the-security-restrictions-from-a-folder-in-the -Program-Folder plików
Następnie z przyjemnością uruchomiłbym Notepad ++ jako zwykły użytkownik, a następnie mogłem przeciągnąć i upuścić lub użyć zawsze przydatnego menu kontekstowego, z eksploratora innego niż tryb administratora do Notatnika ++ poza trybem administratora.
Mam nadzieję, że to ci w jakiś sposób pomoże.
źródło
Louis podał prawidłową odpowiedź techniczną, oto obejście. Możesz uruchomić Eksploratora z uprawnieniami administratora za pomocą hacka, a teraz powinieneś być w stanie przeciągać i upuszczać pliki.
źródło
W większości przypadków (gdy użytkownik ma dostęp do odczytu, ale nie ma dostępu jako zwykły użytkownik), istnieje lepsze podejście niż uruchamianie Notepad ++ jako administrator:
Zainstaluj wtyczkę „Zapisz jako administrator” (patrz Menedżer wtyczek Notepad ++).
Teraz wystarczy uruchomić Notepad ++ jako zwykły użytkownik i otworzyć pliki, które chcesz edytować. Ponieważ masz dostęp do odczytu, będzie to działać bez problemów.
Teraz za każdym razem, gdy próbujesz zapisać plik, ale nie masz uprawnień do zapisu, wtyczka „Zapisz jako administrator” podnosi uprawnienia do zapisywania. Dlatego jeśli teraz wykonasz polecenie zapisu, zostanie wyświetlone okno dialogowe UAC, a jeśli wybierzesz opcję „tak” w tym oknie dialogowym, plik zostanie zapisany przy użyciu uprawnień administratora.
źródło
Innym obejściem jest użycie autonomicznej (skompresowanej) wersji Notepad ++ zamiast wersji instalatora.
Wadą tego obejścia jest oczywiście konieczność utworzenia własnych skrótów i ręcznej aktualizacji domyślnego edytora tekstu, jeśli to konieczne. I nie będziesz mieć pozycji menu kontekstowego dla notatnika, chyba że sam go tam włamiesz.
źródło
Zmiana uprawnień do podniesionego zadania zainstalowanego przez usługę podwyższonych instalatorów jest co najmniej trudna. Windows 7 x64. Podjąłem sugerowaną ścieżkę. Użyłem Panelu sterowania »Programy i funkcje do odinstalowania Notepad ++.
Następnie udałem się na stronę Notepad ++ i pobrałem wersję spakowaną bez instalatora .
Następnie użył Eksploratora Windows, aby wyodrębnić wszystkie pliki do ścieżki
C:\Program Files (x86)\Notepad++
- tak samo jak oryginalna ścieżka instalatora.Następnie utworzyłem grupę folderów w sekcji Wszystkie programy w menu Start.
Notepad++
Następnie użyłem innego okna Eksploratora, aby utworzyć skrót do
notepad++.exe
, a następnie przeciągnąłem i upuściłem ten skrót doC:\ProgramData\Microsoft\Windows\Start Menu\Programs\Notepad++
, odpowiadając w oknie dialogowym Odmowa dostępu do folderu docelowego za pomocą Kontynuuj .Następnie wyłącz funkcję AutoUpdate dla wtyczek w Notepad ++, podobnie jak większość oprogramowania w dzisiejszych czasach „Aktualizacje” są często „wrogie” i wiążą się z dużym ryzykiem. W przypadku aplikacji wolę wiedzieć, kiedy nastąpi aktualizacja ... nie jest to usługa, więc bardziej zaufać programistom, aby poprawnie przetestować swój kod.
Idź »Wtyczki» Menedżer wtyczek »Pokaż wtyczki» Ustawienia (lewy dolny róg), tam odznacz Powiadom o aktualizacjach wtyczek przy uruchomieniu .
Teraz mogę ponownie przeciągnąć i upuścić.
Teraz proces Notepad ++ nie jest uruchamiany jako podwyższone zadanie, a inne aplikacje, takie jak Explorer, mogą przeciągać i upuszczać pliki w otwartym oknie programu Notepad ++, aby je otworzyć.
źródło