2010-05-16 18 views
7

Próbuję dowiedzieć się w skrypcie IE (javascript lub vbscript), który kontrolka ActiveX będzie obsługiwał określony typ MIME, "image/tiff " w tym przypadku. Jest to łatwe do zrobienia w innych przeglądarkach z wtyczkami;Skrypt przeglądarki IE do określenia, która (jeśli w ogóle) formant ActiveX poradzi sobie z określonym typem mime

navigator.mimeTypes [ "image/tiff"]. EnabledPlugin.name

który zwróciłby coś

QuickTime Plug-in XXX

I ve znalazło mnóstwo przykładów, aby powiedzieć, czy konkretny formant ActiveX jest załadowany, ale ponieważ istnieje kilka formantów ActiveX, które mogą obsługiwać obrazy TIFF, których potrzebuję aby wiedzieć, który, jeśli jest, jest zarejestrowany do obsługi tego typu MIME.

Problem, z którym próbuję sobie poradzić, polega na tym, że QuickTime zawsze chce się zarejestrować jako domyślna przeglądarka plików typu tiff, ale robi to okropnie, co powoduje wiele wywołań pomocy technicznej. Niestety, proste wykrycie, że QuickTime jest zainstalowany, nie jest wystarczająco dobre, ponieważ użytkownik może mieć zainstalowaną kolejną przeglądarkę tiff (taką jak Alternatiff) jako domyślną przeglądarkę tiff lub użytkownik może skonfigurować QuickTime, aby nie był domyślnym przeglądaniem dla obrazów tiff, więc przeglądarka może używać aplikacji pomocniczej do wyświetlania obrazu.

Nie jest to trudne, ale zanim ktokolwiek zaproponuje przeprojektowanie obejść;

  • tak wiem mogłem zmusić użytkownika do korzystania z konkretnego widza ActiveX w IE lub użyć tiff widza Java ale wolałbym niech użyć widza ich wyboru aniżeli zmuszając je zainstalować przeglądarkę z mojego wyboru, zwłaszcza, że ​​ich przeglądarka może być aplikacją pomocniczą, która ładuje obraz tiff do biznesowego przepływu pracy w jego biurze
  • tak Wiem, że są inne formaty obrazów, które mogłem użyć, ale tiff jest standardem defacto dla obrazowania dokumentów i to właśnie większość użytkowników preferuje. Problemem nie jest formatem obrazu, jest to, że QuickTime prostu nie wyciąć go jako widza tiff

Dzięki z góry za wszelkie sugestie lub rozwiązań ...

+0

Jaki jest wynik końcowy - dostarczenie im pewnego rodzaju ostrzeżenia, jeśli QuickTime jest domyślnym programem obsługi? – BradBrening

+0

Dlaczego nie owijać w PDF - jeśli jest to skan, możesz łatwo zmienić nagłówki tiff na pdf dla ccitt g4 na przykład. Ewentualnie owinąć link wokół tiff obrazu, który mówi "Kliknij mnie" – mplungjan

+0

Cześć Brad, tak, w rezultacie otrzymasz ostrzeżenie i link do strony z instrukcjami dotyczącymi alternatywnych konfiguracji, które zadziałają. – Jay13

Odpowiedz

2

Przynajmniej z aktualnymi możliwościami Internetu Explorer, jest prawie niemożliwe, aby osiągnąć swój cel z JavaScript.

Jednak IE obsługuje także formanty VBScript i podpisane formanty ActiveX. Można ich użyć do zbudowania widgetu po stronie klienta, aby uzyskać domyślne skojarzenie typu MIME bezpośrednio z rejestru. Windows przechowuje je w "HKEY_LOCAL_MACHINE \ Software \ CLASSES \". The RFC2936 - HTTP MIME Type Handler Detection daje podobną sugestię, a nawet ma próbkę kodu.

Jeśli powyższe wydaje się zbyt uciążliwe, można rozszerzyć początkową politykę nie ograniczając użytkownika do określonej przeglądarki. Dlaczego nie przejść do końca i pozwolić użytkownikom pozostać z QuickTime, jeśli mają go na pierwszym miejscu. Maszyna użytkownika jest prywatnym terytorium i nie masz pojęcia, dlaczego istnieje QuickTime.

Mam nadzieję, że pomoże to w poruszaniu się we właściwym kierunku.

+0

Hmmm, wydaje się trochę ciężko napisać formant ActiveX, aby to zrozumieć. Zastanawiałem się nad zrobieniem tego wcześniej, ale wydawało się, że jest za dużo pracy, jednak na podstawie cytowanego przez ciebie odniesienia wygląda na to, że jest to jedyne możliwe rozwiązanie. Jeśli chodzi o pozwolenie im na pozostanie w QuickTime, nigdy nie zastąpiłbym ich ustawień, ponieważ tak jak mówisz, to ich maszyna ma do czynienia, jak chcą. Moim zamiarem jest po prostu powiadomić ich, że prawdopodobnie będą mieli problemy z wyświetlaniem obrazów Tiff obsługiwanych przez moją aplikację, ponieważ program QuickTime Viewer nie obsługuje całego standardu Tiff. Dzięki Saul ... – Jay13