Próbuję napisać BHO dla Internet Explorer 11 (Windows 8.1). Moja BHO realizuje piaskownicy AppContainer, ale nie wydaje się utworzenie nazwanego potoku, CreateNamedPipe
nie powiedzie się z tej wiadomości: Access is denied.
Czy istnieje sposób utworzenia nazwanego potoku z elementu AppContainer BHO na IE11?
Oto kod używam, aby utworzyć nazwany potok (który znalazłem na russian website , ostatni komentarz:...
LPCWSTR LOW_INTEGRITY_SDDL_SACL_W = L"S:(ML;;NW;;;LW)D:(A;;0x120083;;;WD)(A;;0x120083;;;AC)"; PSECURITY_DESCRIPTOR pSD = NULL; ConvertStringSecurityDescriptorToSecurityDescriptorW ( LOW_INTEGRITY_SDDL_SACL_W, SDDL_REVISION_1, &pSD, NULL); if (pSD != NULL) { SECURITY_ATTRIBUTES SecurityAttributes; SecurityAttributes.nLength = sizeof(SECURITY_ATTRIBUTES); SecurityAttributes.bInheritHandle = TRUE; SecurityAttributes.lpSecurityDescriptor = pSD; HANDLE hPipe = CreateNamedPipe( L"\\\\.\\pipe\\testpipe", PIPE_ACCESS_DUPLEX, PIPE_TYPE_BYTE | PIPE_READMODE_BYTE, 1, 4096, 4096, 1000, &SecurityAttributes); }
Niestety, to nie działa GetLastError() zwraca ten Access is denied
jak zwykle
Czy to nie działa z żadną zakładką? Czy możesz sprawdzić za pomocą karty w trybie niechronionym? – Andrey
Tak, działa dobrze, gdy EPM jest wyłączony. (Działa poprawnie w trybie chronionym, co nie działa w trybie Enhanced Protected). – pyrho
Wygląda na to, że można [użyć rur w appContainer] (http://stackoverflow.com/questions/7706660/windows-8-named-pipe-creation). Ale czy mógłbyś spróbować S: (ML ;; NW ;;; RC) D: (A ;, 0x120083 ;;; WD) (A ;; 0x120083 ;;; AC)? – Andrey