weinerk
asked on
how to detect plugins in MSIE
how to detect plugins in MSIE
meanign
how to find out which plugins are available on the system
using java or javascript or vbscript ?
meanign
how to find out which plugins are available on the system
using java or javascript or vbscript ?
The way to do this would be to parse the system registry using the langs listed above. Let me know how you go...
Regards,
Jason
Regards,
Jason
ASKER
need more info than that
how?
how?
ASKER CERTIFIED SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Check this out! A plugin detection for MSIE(>4?) with VBScript.
It works if the plugin installation updates the
HKEY_CLASSES_ROOT in the windows 95/98 registry, with:
1.a KEY label about the plugin consisting of at least two parts seperated by a dot.
2. The KEY must be in this CLASSES root, having a CLSID subfolder.
This is the function which will search the clients windows registry for the excistance of a KEY label with a CLSID subfolder:
<SCRIPT LANGUAGE=VBScript> <!--
Function CheckWritePlug(PlugInName)
'This is a sample VBScript comment, ignored by interpreter
'ErrorHandling becomes ours, avoid those error popups
on error resume next
'Now checking the registry for KEY label...
'and assigning returning value to our variable
PlugInDetect = IsObject(CreateObject(Plug InName)) 'This is it!
'If there was an error(like not exist!),drop the case...
Err.Raise
'So this conditional, works properly...
If PlugInDetect = True Then
document.write "True"
Else
document.write "False"
End If
End Function
CheckWritePlug("Microsoft. ActiveXPlu gin")
CheckWritePlug("Microsoft. ActiveXPlu gin.1")
CheckWritePlug("Amovie.Act iveMovie Control")
CheckWritePlug("Amovie.Act iveMovie Control.1")
CheckWritePlug("RealPlayer .RealPlaye r(tm) ActiveXControl (32-bit)")
CheckWritePlug("RealPlayer .RealPlaye r(tm) ActiveX Control (32-bit).1")
CheckWritePlug("ShockwaveF lash.Shock waveFlash" )
CheckWritePlug("ShockwaveF lash.Shock waveFlash. 2")
CheckWritePlug("ShockwaveF lash.Shock waveFlash. 3")
CheckWritePlug("MSVRML2C.V RMLBrowser Ctl")
CheckWritePlug("MSVRML2C.V RMLBrowser Ctl.1")
CheckWritePlug("PDF.PdfCtr l.1")
CheckWritePlug("LM.LMReade r.1")
CheckWritePlug("EYEDOG.EYE DOGCtrl.1" )
CheckWritePlug("LiquidMoti on.LMEngin e")
CheckWritePlug("LiquidMoti on.LMEngin e.1")
CheckWritePlug("Marquee.Ma rqueeCtl")
CheckWritePlug("Marquee.Ma rqueeCtl.1 ")
//--></SCRIPT>
The arguments above, feeding the CheckWritePlug Function,
could all reliably be detected on my machine.
The argument CheckWritePlug will be fed at call really must be exactly the same as the (default) installation KEY label in the registry.
If it works on your machine it should perform a reliable detection on client machines. Goodluck!
It works if the plugin installation updates the
HKEY_CLASSES_ROOT in the windows 95/98 registry, with:
1.a KEY label about the plugin consisting of at least two parts seperated by a dot.
2. The KEY must be in this CLASSES root, having a CLSID subfolder.
This is the function which will search the clients windows registry for the excistance of a KEY label with a CLSID subfolder:
<SCRIPT LANGUAGE=VBScript> <!--
Function CheckWritePlug(PlugInName)
'This is a sample VBScript comment, ignored by interpreter
'ErrorHandling becomes ours, avoid those error popups
on error resume next
'Now checking the registry for KEY label...
'and assigning returning value to our variable
PlugInDetect = IsObject(CreateObject(Plug
'If there was an error(like not exist!),drop the case...
Err.Raise
'So this conditional, works properly...
If PlugInDetect = True Then
document.write "True"
Else
document.write "False"
End If
End Function
CheckWritePlug("Microsoft.
CheckWritePlug("Microsoft.
CheckWritePlug("Amovie.Act
CheckWritePlug("Amovie.Act
CheckWritePlug("RealPlayer
CheckWritePlug("RealPlayer
CheckWritePlug("ShockwaveF
CheckWritePlug("ShockwaveF
CheckWritePlug("ShockwaveF
CheckWritePlug("MSVRML2C.V
CheckWritePlug("MSVRML2C.V
CheckWritePlug("PDF.PdfCtr
CheckWritePlug("LM.LMReade
CheckWritePlug("EYEDOG.EYE
CheckWritePlug("LiquidMoti
CheckWritePlug("LiquidMoti
CheckWritePlug("Marquee.Ma
CheckWritePlug("Marquee.Ma
//--></SCRIPT>
The arguments above, feeding the CheckWritePlug Function,
could all reliably be detected on my machine.
The argument CheckWritePlug will be fed at call really must be exactly the same as the (default) installation KEY label in the registry.
If it works on your machine it should perform a reliable detection on client machines. Goodluck!
ASKER
thanks - that looks great!!!!
ASKER