Es kursieren Gerüchte, daß EOLAS Opensource Browsern kostenlose Lizenzen in Sachen Plug-In Technologie überlässt. Schön und Gut, wenn Webuser noch mehr auf weitaus sichere Browser wie Mozilla umsteigen und den Sicherheitsprofi Internet Explorer links liegen lassen würden. Macromedia und andere haben aufgrund des Patentstreites schon diverse Javascript Lösungen angeboten, um zu verhindern, daß der User das Starten eines Plug-Ins nicht mehr bestätigen zu müssen. Klickorgien bei großen Websites wären das Resultat.
Da auch in absehbarer Zeit die Nutzung des Internet Explorer wohl nicht zurückgehen wird, haben wir Webentwickler ein Problem: wie umgehen wir für Microsofts Browser das anstehende Plug-In Problem.
Für den Internet Explorer 6 (SP1) gibt es eine weitere Lösungsmöglichkeit: das Object-Attribut: NOEXTERNALDATA.
Code Beispiel:
< OBJECT NOEXTERNALDATA="true" CLASSID="CLSID:6BF52A52-394A-11d3-B153-00C04F79FAA6" >
< PARAM NAME="URL" VALUE="foo.wav"/ >
Somit wird im IE 6 das Bestätigen zum Ausführen unterbunden.
Mehr dazu unter MSDN.
Da Standardbrowser Microsofts eigene Attribute nicht interpretieren, wäre dies ein weiterer Lösungsansatz. Die IE 5.xx müssten zwar draussen bleiben, aber wir könnten auf Javascript verzichten. Obwohl das Kalauern in Sachen Javascript Unsinn ist.
Kommentare (3)
moment, so wie ich aber diesen lösungsansatz verstehe, wird foo.wav nicht abgespielt, bzw. nicht geladen:
\"If a PARAM element does reference a remote source of data and you specify true for the NOEXTERNALDATA attribute of the OBJECT element, the value of that PARAM element is not provided to the IPersistPropertyBag interface for the control.
The following example shows an OBJECT tag that loads a control without a prompt from Internet Explorer because the NOEXTERNALDATA attribute is set to true. The control does not receive the URL property.\"
zumindest interpretiere ich das so. was mich dann wiederum an der sinnhaftigkeit von NOEXTERNALDATA generell zweifeln läßt.
ein ausweg wäre es, das foo.wav als binäre daten in der HTML-seite abzulegen.
Von dogfood | 16.10.03 00:57
Geschrieben am 16.10.03 00:57
\'The following example shows an OBJECT tag that loads a control without a prompt from Internet Explorer because the NOEXTERNALDATA attribute is set to true. The control does not receive the URL property.\' heisst es nach deinem zitierten Absatz.
Und danach: \'When Internet Explorer determines that a control does not access remote data, Internet Explorer loads the control without prompting.\'
Hm. Du hast glaube ich recht. Wenn ich mir den ganzen Text nochmals richtig durchlese, komme ich ebenfalls zu dem Schluss, daß durch das Attribut keine Daten an das ActiveX gegeben werden können. Ich bin eher über die Absätze im Text nach deinem zitierten Sätzen gestolpert, wo es sich für mich wieder so anhörte, als ob das Attribut NOEXTERNALDATA das Plug-In ohne Prompt startet, aber dann erst die URL übergibt. So wäre es dann eine Lösung wie mit den JavaScript Vorschlägen.
Von pixel | 16.10.03 08:05
Geschrieben am 16.10.03 08:05
wie gesagt, ich bin mir selber nicht sicher, da ich schlichtweg keinen sinn in einem attribut NOEXTERNALDATA sehe, wenn es keine daten weiterreicht. hmm. vieleicht nur lokale daten?
Von dogfood | 16.10.03 13:02
Geschrieben am 16.10.03 13:02