<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>IT北瓜 &#187; ActiveX</title>
	<atom:link href="http://imleeo.com/tag/activex/feed" rel="self" type="application/rss+xml" />
	<link>http://imleeo.com</link>
	<description>关注jQuery,关注java,关注计算机应用,关注生活...</description>
	<lastBuildDate>Tue, 06 Jul 2010 05:30:00 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.4</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<xhtml:meta xmlns:xhtml="http://www.w3.org/1999/xhtml" name="robots" content="noindex" />
		<item>
		<title>【转】JavaScript检查ActiveX控件是否已经安装过</title>
		<link>http://imleeo.com/computer-applications/javascript-check-activex-install.html</link>
		<comments>http://imleeo.com/computer-applications/javascript-check-activex-install.html#comments</comments>
		<pubDate>Wed, 27 Jan 2010 04:40:00 +0000</pubDate>
		<dc:creator>IT北瓜</dc:creator>
				<category><![CDATA[计算机应用]]></category>
		<category><![CDATA[ActiveX]]></category>
		<category><![CDATA[JavaScript]]></category>

		<guid isPermaLink="false">http://imleeo.com/computer-applications/javascript-check-activex-install.html</guid>
		<description><![CDATA[<pre><span style="color: #0000ff">function</span> detectPlugin(CLSID,functionName)
{
    <span style="color: #0000ff">var</span> pluginDiv = <span style="color: #0000ff">document</span>.createElement(&#34;<span style="color: #8b0000">&#60;div id=\&#34;pluginDiv\&#34; style=\&#34;display:none\&#34;&#62;&#60;/div&#62;</span>&#34;)
    <span style="color: #0000ff">document</span>.body.insertBefore(pluginDiv);
    pluginDiv.innerHTML = '&#60;object id=&#34;<span style="color: #8b0000">objectForDetectPlugin</span>&#34; classid=&#34;<span style="color: #8b0000">CLSID:'+ CLSID +'</span>&#34;&#62;&#60;/object&#62;';
    <span style="color: #0000ff">try</span>
    {
        <span style="color: #0000ff">if</span>(<span style="color: #0000ff">eval</span>(&#34;<span style="color: #8b0000">objectForDetectPlugin.</span>&#34; + functionName) == undefined)
        {
            pluginDiv.removeNode(<span style="color: #0000ff">true</span>);<span style="color: #008000">//删除pluginDiv及其所有的子元素</span>
            <span style="color: #0000ff">return</span> <span style="color: #0000ff">false</span>;
        }
        <span style="color: #0000ff">else</span>
        {
            pluginDiv.removeNode(<span style="color: #0000ff">true</span>);<span style="color: #008000">//删除pluginDiv及其所有的子元素</span>
            <span style="color: #0000ff">return</span> <span style="color: #0000ff">true</span>;
        }
    }
    <span style="color: #0000ff">catch</span>(e)
    {
        <span style="color: #0000ff">return</span> <span style="color: #0000ff">false</span>;
    }
}</pre>

<p>这是通用的方法，只需要把唯一的Activex的clsid和任意一个属性或方法名传进来就可以判断了。</p>

<p>以下是测试实例代码：</p>

<div class="posturl"><span><span class="r1"></span><span class="r2"></span><span class="r3"></span><span class="r4"></span></span><div class="posturl-content">
暂无关联文章！</div><span><span class="r4"></span><span class="r3"></span><span class="r2"></span><span class="r1"></span></span></div>]]></description>
			<content:encoded><![CDATA[<pre><span style="color: #0000ff">function</span> detectPlugin(CLSID,functionName)
{
    <span style="color: #0000ff">var</span> pluginDiv = <span style="color: #0000ff">document</span>.createElement(&quot;<span style="color: #8b0000">&lt;div id=\&quot;pluginDiv\&quot; style=\&quot;display:none\&quot;&gt;&lt;/div&gt;</span>&quot;)
    <span style="color: #0000ff">document</span>.body.insertBefore(pluginDiv);
    pluginDiv.innerHTML = '&lt;object id=&quot;<span style="color: #8b0000">objectForDetectPlugin</span>&quot; classid=&quot;<span style="color: #8b0000">CLSID:'+ CLSID +'</span>&quot;&gt;&lt;/object&gt;';
    <span style="color: #0000ff">try</span>
    {
        <span style="color: #0000ff">if</span>(<span style="color: #0000ff">eval</span>(&quot;<span style="color: #8b0000">objectForDetectPlugin.</span>&quot; + functionName) == undefined)
        {
            pluginDiv.removeNode(<span style="color: #0000ff">true</span>);<span style="color: #008000">//删除pluginDiv及其所有的子元素</span>
            <span style="color: #0000ff">return</span> <span style="color: #0000ff">false</span>;
        }
        <span style="color: #0000ff">else</span>
        {
            pluginDiv.removeNode(<span style="color: #0000ff">true</span>);<span style="color: #008000">//删除pluginDiv及其所有的子元素</span>
            <span style="color: #0000ff">return</span> <span style="color: #0000ff">true</span>;
        }
    }
    <span style="color: #0000ff">catch</span>(e)
    {
        <span style="color: #0000ff">return</span> <span style="color: #0000ff">false</span>;
    }
}</pre>
<p>这是通用的方法，只需要把唯一的Activex的clsid和任意一个属性或方法名传进来就可以判断了。</p>
<p>以下是测试实例代码：</p>
<pre class="csharpcode"><span class="kwrd">&lt;!</span><span class="html">DOCTYPE</span> <span class="attr">html</span> <span class="attr">PUBLIC</span> <span class="kwrd">&quot;-//W3C//DTD XHTML 1.0 Transitional//EN&quot;</span> <span class="kwrd">&quot;http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd&quot;</span><span class="kwrd">&gt;</span>
<span class="kwrd">&lt;</span><span class="html">html</span> <span class="attr">xmlns</span><span class="kwrd">=&quot;http://www.w3.org/1999/xhtml&quot;</span><span class="kwrd">&gt;</span>
<span class="kwrd">&lt;</span><span class="html">head</span><span class="kwrd">&gt;</span>
<span class="kwrd">&lt;</span><span class="html">meta</span> <span class="attr">http-equiv</span><span class="kwrd">=&quot;Content-Type&quot;</span> <span class="attr">content</span><span class="kwrd">=&quot;text/html; charset=utf-8&quot;</span> <span class="kwrd">/&gt;</span>
<span class="kwrd">&lt;</span><span class="html">title</span><span class="kwrd">&gt;</span>这是通用的方法，只需要把唯一的Activex的clsid和任意一个属性或方法名传进来就可以判断了<span class="kwrd">&lt;/</span><span class="html">title</span><span class="kwrd">&gt;</span>
<span class="kwrd">&lt;/</span><span class="html">head</span><span class="kwrd">&gt;</span>
<span class="kwrd">&lt;</span><span class="html">script</span> <span class="attr">language</span><span class="kwrd">=&quot;javascript&quot;</span><span class="kwrd">&gt;</span>
<span class="kwrd">function</span> openreg(){
    <span class="kwrd">if</span>(detectPlugin(<span class="str">'A0F5EA74-8C04-4AF7-B7EA-DCB43F53ED45'</span>,<span class="str">'CurVersion'</span>)==<span class="kwrd">false</span>)
    {
        alert(<span class="str">&quot;控件未安装&quot;</span>);
    }
}
<span class="kwrd">function</span> detectPlugin(CLSID,functionName)
{
    <span class="kwrd">var</span> pluginDiv = document.createElement(<span class="str">&quot;&lt;div id=\&quot;pluginDiv\&quot; style=\&quot;display:none\&quot;&gt;&lt;/div&gt;&quot;</span>)
    document.body.insertBefore(pluginDiv);
    pluginDiv.innerHTML = <span class="str">'&lt;object id=&quot;objectForDetectPlugin&quot; classid=&quot;CLSID:'</span>+ CLSID +<span class="str">'&quot;&gt;&lt;/object&gt;'</span>;
    <span class="kwrd">try</span>
    {
        <span class="kwrd">if</span>(eval(<span class="str">&quot;objectForDetectPlugin.&quot;</span> + functionName) == undefined)
        {
            pluginDiv.removeNode(<span class="kwrd">true</span>);<span class="rem">//删除pluginDiv及其所有的子元素</span>
            <span class="kwrd">return</span> <span class="kwrd">false</span>;
        }
        <span class="kwrd">else</span>
        {
            pluginDiv.removeNode(<span class="kwrd">true</span>);<span class="rem">//删除pluginDiv及其所有的子元素</span>
            <span class="kwrd">return</span> <span class="kwrd">true</span>;
        }
    }
    <span class="kwrd">catch</span>(e)
    {
        <span class="kwrd">return</span> <span class="kwrd">false</span>;
    }
}
<span class="kwrd">&lt;/</span><span class="html">script</span><span class="kwrd">&gt;</span>
<span class="kwrd">&lt;</span><span class="html">body</span><span class="kwrd">&gt;</span>
<span class="kwrd">&lt;</span><span class="html">p</span><span class="kwrd">&gt;</span>通过浏览器打开Topteam客户端----测试<span class="kwrd">&lt;/</span><span class="html">p</span><span class="kwrd">&gt;</span>
<span class="kwrd">&lt;</span><span class="html">p</span><span class="kwrd">&gt;</span>
<span class="kwrd">&lt;</span><span class="html">input</span> <span class="attr">type</span><span class="kwrd">=&quot;button&quot;</span> <span class="attr">value</span><span class="kwrd">=&quot;进入系统&quot;</span> <span class="attr">onclick</span><span class="kwrd">=&quot;openreg();&quot;</span><span class="kwrd">/&gt;</span>
<span class="kwrd">&lt;/</span><span class="html">p</span><span class="kwrd">&gt;</span>
<span class="kwrd">&lt;/</span><span class="html">body</span><span class="kwrd">&gt;</span>
<span class="kwrd">&lt;/</span><span class="html">html</span><span class="kwrd">&gt;</span></pre>
<style type="text/css">
<p>.csharpcode, .csharpcode pre
{
	font-size: small;
	color: black;
	font-family: consolas, "Courier New", courier, monospace;
	background-color: #ffffff;
	/*white-space: pre;*/
}
.csharpcode pre { margin: 0em; }
.csharpcode .rem { color: #008000; }
.csharpcode .kwrd { color: #0000ff; }
.csharpcode .str { color: #006080; }
.csharpcode .op { color: #0000c0; }
.csharpcode .preproc { color: #cc6633; }
.csharpcode .asp { background-color: #ffff00; }
.csharpcode .html { color: #800000; }
.csharpcode .attr { color: #ff0000; }
.csharpcode .alt 
{
	background-color: #f4f4f4;
	width: 100%;
	margin: 0em;
}
.csharpcode .lnum { color: #606060; }</style>


<div class="posturl"><span><span class="r1"></span><span class="r2"></span><span class="r3"></span><span class="r4"></span></span><div class="posturl-content"><p>暂无关联文章！</p></div><span><span class="r4"></span><span class="r3"></span><span class="r2"></span><span class="r1"></span></span></div>]]></content:encoded>
			<wfw:commentRss>http://imleeo.com/computer-applications/javascript-check-activex-install.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
