Jak mogę trwale wyłączyć WebGL w Google Chrome?

6

Wiem, jak wyłączyć WebGL w Chrome , dodając polecenie w polu docelowym skrótu.

Jeśli jednak otworzę hiperłącze i żaden skrót Chrome nie jest już otwarty za pomocą tego skrótu, WebGL zostanie włączony.

Czy można wyłączyć WebGL bez względu na sposób otwierania Chrome?

Używam Chrome 13.0.782.215 na Windows 7 64-bit.

Moab
źródło
3
Czy rzeczywiście wypiliście propagandę anty-WebGL? Czy potrafisz nawet wskazać jedną znaną lukę w zabezpieczeniach WebGL, którą znasz? (Wskazówka --- nie możesz. Ludzie, którzy rozpowszechniają FUD o WebGL), nie mogą. / implementator WebGL (ale nie w Chrome)

Odpowiedzi:

2

Niestety twórcy Chromium są powolni (i najwyraźniej nienawidzą) do obsługi parametrów wiersza poleceń podczas ustawiania go jako domyślnej przeglądarki internetowej .

Dopóki nie zaczną tego robić (jeśli w ogóle), będziesz musiał ustawić wszelkie argumenty dla każdego wpisu rejestru (i skrótu) za każdym razem, gdy konieczna będzie zmiana wiersza polecenia.

Może to stać się dość kłopotliwe, ponieważ istnieje kilka lokalizacji rejestru, w których przechowywany jest plik wykonywalny, i dlatego należy go zaktualizować (nie mniej niż tuzin domyślnych lokalizacji). Wymyśliłem całkiem przydatne obejście, które znacznie ułatwia aktualizację i utrzymanie.

Synetech
źródło
Hmm, nie wiem jak to się stało. Teraz jest naprawione.
Synetech
Nie wiem, dlaczego nie pozwalają ci go wyłączyć w Flagach. Zastanawiam się, czy „GPU Accelerated Canvas 2D” w About: Flags jest tym samym co webgl?
Moab
2
about:flagsjest (jak mówi ostrzeżenie / zastrzeżenie u góry) eksperymentalny i tymczasowy. WebGL był kiedyś na stronie Flagi, ale wtedy domyślnie wyłączono WebGL, a zaawansowani użytkownicy mogli użyć tej strony, aby ją specjalnie włączyć. GPU Accelerated Canvas 2D nie jest WebGL, umożliwia odciążenie przetwarzania grafiki do niektórych GPU. WebGL to specyfikacja języka / biblioteka, która może korzystać z grafiki akcelerowanej przez GPU, jeśli jest dostępna - pomyśl DirectX <-> FPU. Również wersje z tą opcją flagi mają również parametr --disable-webgl (gdyby były takie same, byłby tylko jeden z nich).
Synetech
2

Jeśli nie otrzymasz dobrej odpowiedzi na to pytanie (a wygląda na to, że tego nie zrobisz, nawet jeśli zostaniesz automatycznie zaakceptowany za nagrodę), będziesz mieć prawo do zgłoszenia zgłoszenia błędu przeciwko Chromium - w końcu, to kwestia bezpieczeństwa . Moim zdaniem, jeśli naprawdę zależy im na bezpieczeństwie, WebGL powinien być domyślnie wyłączony dla wszystkich użytkowników. Powinien być przynajmniej sposób na wyłączenie go ze chrome://settingsstrony.

Hugh Allen
źródło
Naprawdę nie jest to błąd, ale brakująca funkcja.
Moab
2

Opiszę, jak dodać parametr wywoływania dla Firefoksa, którego używam, i możesz dostosować procedurę do Chrome. Wiąże się to z edycją rejestru, dlatego należy przede wszystkim zachować odpowiednie środki ostrożności, w tym utworzyć punkt przywracania systemu.

Otwórz regedit i wyszukaj HKEY_CLASSES_ROOT\.htmi HKEY_CLASSES_ROOT\.html. Kliknij oba, a zobaczysz (Default)wpis, który dla Firefoksa zawiera wartość FirefoxHTML.

Teraz ustaw się na HKEY_CLASSES_ROOT\FirefoxHTML\shell\open\command. (Default)Wpis zawiera polecenie wywołania Firefox. Zmodyfikuj go, aby zawierał dodatkowy parametr ( -disable-webglw twoim przypadku).

Powinno to mieć natychmiastowy skutek, ale być może trzeba się wylogować i zalogować.

EDYTOWAĆ

Inne klucze rejestru służące do sprawdzenia, czy używają tego samego modułu obsługi (FirefoxHTML), to:

HKEY_CLASSES_ROOT\.shtml
HKEY_CLASSES_ROOT\.xht
HKEY_CLASSES_ROOT\.xhtm
HKEY_CLASSES_ROOT\.xhtml
HKEY_CLASSES_ROOT\HTTP\shell\open\command
HKEY_CLASSES_ROOT\https\shell\open\command
HKEY_CLASSES_ROOT\ftp\shell\open\command

harrymc
źródło
Czy to wygląda na poprawny mod? .. chrome.exe "-"% 1 "--disable-webgl
Moab
"chrome.exe" --disable-webgl -- "%1"
Uważając
dzięki, co robi% 1?
Moab
Wskazuje pierwszy argument. W takim przypadku, gdy system Windows użyje tego polecenia, przekaże adres URL jako argument polecenia.
arunkumar
Dzięki arunkumar, miałem nadzieję, że Harrymc odpowie, ale może on odpowiada tylko za punkty premiowe.
Moab
1

Jednym z nieco hackerskich sposobów jest utworzenie chrome.bat gdzieś w% PATH%. W tym masz [drive]:\Path\To\chrome.exe --disable-webgl %1.

Następnie zmień domyślny moduł obsługi linków na Chrome.bat zamiast Chrome.

arunkumar
źródło
Chciałem globalnego rozwiązania, w którym będzie działać bez względu na to, jak chrom zostanie otwarty.
Moab
0

Utwórz exe w swoim ulubionym języku o nazwie chrome.exe, zmień nazwę oryginalnego chrome na coś innego np foo.exe. W swoim exe zacznij foo.exeod wymaganych parametrów.

EDYCJA: Napisz fragment kodu wykonywalnego, który wywołuje foo.exewymagane parametry. Możesz być w stanie użyć prostego skryptu powłoki.

Teraz musisz tylko umieścić nowo utworzony plik w folderze chrome, skutecznie zastępując to, co byłby oryginalny. W ten sposób nigdy się nie otworzy bez ustawionych parametrów.

Nie jestem jednak pewien, jak to działa z automatycznymi aktualizacjami.

Jes
źródło
1
„Utwórz plik exe w swoim ulubionym języku o nazwie chrome.exe” wymaga wyjaśnienia.
Moab
-1

Aby wyłączyć wizytę WebGL:

chrome://flags/#disable-software-rasterizer

w twojej przeglądarce. Jedno z ustawień ma mylącą nazwę „Wyłącz WebGL”, które musisz włączyć, aby wyłączyć WebGL (patrz rysunek).

SecurityMatt
źródło
Tak, dodali flagę, aby ją wyłączyć.
Moab