mozilla

Compare Revisions

ActiveX Control for Hosting Netscape Plug-ins in IE

Change Revisions

Revision 186594:

Revision 186594 by Josh on

Revision 186595:

Revision 186595 by Josh on

Title:
ActiveX Control for Hosting Netscape Plug-ins in IE
ActiveX Control for Hosting Netscape Plug-ins in IE
Slug:
ActiveX_Control_for_Hosting_Netscape_Plug-ins_in_IE
ActiveX_Control_for_Hosting_Netscape_Plug-ins_in_IE
Tags:
Add-ons, Plugins, NeedsClassification
Add-ons, Plugins, NeedsClassification
Content:

Revision 186594
Revision 186595
n28    <p>n28    <pre>
29      <code>C:\&gt; set CVSROOT=:pserver:anonymous@cvs-mirror.moz29C:\&gt; set CVSROOT=:pserver:anonymous@cvs-mirror.mozilla.org:/cv
>illa.org:/cvsroot C:\&gt; set HOME=\TEMP C:\&gt; cvs login (Loggi>sroot
>ng in to anonymous@cvs-mirror.mozilla.org) CVS password: anonymou 
>s C:\&gt; cvs -z3 co mozilla/embedding/browser/activex/src/plugin 
>hostctrl</code> 
30    </p>30C:\&gt; set HOME=\TEMP
31C:\&gt; cvs login
32(Logging in to anonymous@cvs-mirror.mozilla.org)
33CVS password: anonymous
34C:\&gt; cvs -z3 co mozilla/embedding/browser/activex/src/pluginho
 >stctrl
35</pre>
tt42    <h2 name="Build_it">
43      Build it
44    </h2>
45    <p>
46      It is quite simple to build the control
47    </p>
48    <ol>
49      <li>Locate the pluginhostctrl directory:
50      </li>
51      <li>Open pluginhostctrl.dsp
52      </li>
53      <li>Build "Win32 Debug" or another target
54      </li>
55      <li>Open some of the test files under pluginhostctrl\tests 
 >in Internet Explorer to verify the control has built and register
 >ed correctly.
56      </li>
57    </ol>
58    <p>
59      The control currently reads plug-ins from your most current
 > Netscape 4.x and IE installations. There is no support for Mozil
 >la or NS 6.x yet.
60    </p>
61    <h2 name="A_note_to_developers">
62      A note to developers
63    </h2>
64    <p>
65      If you intend to modify this control IN ANY WAY then you MU
 >ST also change the CLSID from {DBB2DE32-61F1-4F7F-BEB8-A37F5BC24E
 >E2} to something else and any other GUIDs this control relies upo
 >n (IID, LIBIDs etc). This is necessary so that your control may c
 >oexist with the generic version and any other versions that other
 > plug-ins vendors may have installed.
66    </p>
67    <p>
68      It is advisable to rename the control and not to install so
 >mewhere like the Windows directory where it is likely to be overr
 >idden.
69    </p>
70    <p>
71      Use a tool such as guidgen.exe or uuidgen.exe to create the
 > new GUIDs.
72    </p>
73    <h2 name="Package_it">
74      Package it
75    </h2>
76    <p>
77      There is a subdirectory named cab/ which contains a script 
 >and a README.txt for producing your own signed CAB files.
78    </p>
79    <h2 name="Manual_installation">
80      Manual installation
81    </h2>
82    <p>
83      Assuming you have the precompiled pluginhostctrl.dll and wi
 >sh to install it on a machine, you must register it either throug
 >h an install script or manually:
84    </p>
85    <pre>
86regsvr32 pluginhostctrl.dll
87</pre>
88    <p>
89      You must have administrator privileges to install a new con
 >trol on operating systems such as Windows NT, 2000 &amp; XP.
90    </p>
91    <h2 name="Usage">
92      Usage
93    </h2>
94    <p>
95      Insert some HTML like this into your content:
96    </p>
97    <pre>
98    &lt;OBJECT classid="CLSID:DBB2DE32-61F1-4F7F-BEB8-A37F5BC24EE
 >2"
99        width="500" height="300"&gt;
100      &lt;PARAM name="type" value="video/quicktime"/&gt;
101      &lt;PARAM name="src" value="http://www.foobar.com/some_movi
 >e.mov"/&gt;
102      &lt;!-- Custom arguments --&gt;
103      &lt;PARAM name="loop" value="true"/&gt;
104    &lt;/OBJECT&gt;
105</pre>
106    <p>
107      The CLASSID attribute tells IE to create an instance of the
 > plug-in hosting control, the WIDTH and HEIGHT specify the dimens
 >ions in pixels.
108    </p>
109    <p>
110      You may optionally specify a CODEBASE attribute if you have
 > packaged the control into a CAB file and wish for it to be insta
 >lled automatically.
111    </p>
112    <p>
113      The following &lt;EMBED&gt; attributes have &lt;PARAM&gt; t
 >ag equivalents:
114    </p>
115    <pre class="eval">
116   * &lt;PARAM name="type" ...&gt; is equivalent to TYPE<br>     
 >Specifies the MIME type of the plug-in. The control uses this val
 >ue to determine which plug-in it should create to handle the cont
 >ent.
117   * &lt;PARAM name="src" ...&gt; is equivalent to SRC<br>     Sp
 >ecifies an URL for the initial stream of data to feed the plug-in
 >. If you havent't specified a "type" PARAM, the control will atte
 >mpt to use the MIME type of this stream to create the correct plu
 >g-in.
118   * &lt;PARAM name="pluginspage" ...&gt; is equivalent to PLUGIN
 >SPAGE<br>     Specifies a URL where the plug-in may be installed 
 >from. The default plug-in will redirect you to this page when you
 > do not have the correct plug-in installed.
119</pre>
120    <p>
121      You may also supply any custom plug-in parameters as additi
 >onal &lt;PARAM&gt; elements.
122    </p>
123    <h2 name="Still_to_do">
124      Still to do
125    </h2>
126    <ul>
127      <li>Only hosts windowed plug-ins.
128      </li>
129      <li>An official pluginhostctrl.cab file.
130      </li>
131      <li>Doesn't work for the Adobe Acrobat plug-in yet.
132      </li>
133      <li>Plug-ins cannot create writeable streams or seek in rea
 >dable streams.
134      </li>
135      <li>LiveConnect scripting is not supported. If you need scr
 >ipting functionality, consider shipping a modified pluginhostctrl
 >.dll that exposes methods you wish to call on your plugin.
136      </li>
137    </ul>

Back to History