0 0

如何判断客户端是否已经安装3

需求:我们公司自己的软件,在客户端安装(不是通过插件,是通过下载安装文件本地安装的)。
现在在网页上启动主程序文件(.exe)之前,要判断是否安装了该软件(类似于你点迅雷下载,如果没装迅雷,会判断出来),现在不知道怎么去判断。

要求:ie和firefox必须都支持。ie不允许更改安全级别设置。因为我用注册表和ActiveXObject都对ie的安全级别有要求的。

不好意思,没分了。。。

问题补充:
mginobili 写道
你可以在安装这个.exe时,写注册表

然后网页上进行判断 如果没有对应的classid,就证明没有安装呗


classid是什么东西,要读注册表吗?

问题补充:
mginobili 写道
你可以在安装这个.exe时,写注册表

然后网页上进行判断 如果没有对应的classid,就证明没有安装呗

classid是什么呢?要读注册表吗?ie默认级别不能读注册表的

问题补充:
mginobili 写道
classid 就是注册表中 程序的唯一标识

ie默认级别是中低,该级别无法读注册表

问题补充:
mginobili 写道
我的意思是这样

<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-4445535400000" codebase="http://download.adobe.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,0,0" width="400" height="200"></object>

以上是在页面中嵌入一个flash的

lz可以用同样的方式嵌入

然后用JavaScript来获取这个控件
看能否获取到呗

主要的是安装lz的.exe时 需要向注册表中写入信息


我看其它类似的网站的确是这么搞的,页面上有个object,但是还是看不懂。
这个object的classid的值是怎么写进去的呢?谢谢

问题补充:
mginobili 写道
这个classid是你的安装程序(ActiveX控件才行)
安装到机器上
写入注册表的信息

看来不是很符合

lz可以用一个窗口提示呗
告诉用户 正在检查你的电脑有没有安装XX程序,请把安全级别 降低云云



你的指点很有帮助,非常的感谢

问题补充:
mginobili 写道
如果lz的安装程序可以写注册表

那么可以用
isComponentInstalled("{clsid}",
"ComponentID");来检测


可以写注册表,但是没用ActiveX控件,不能写clsid目录的
其它目录随便写,可以不

问题补充:
mginobili 写道
只要可以让用户降低安全级别的话

你让安装程序在C盘的某个目录创建某个文件

然后再在页面上用Javascript来判断也可以啊


我的意思是注册表的目录随便写,但是写clsid是要用activex程序的吧?安装程序是c++的,具体不是我开发的。
如果我往注册表的clsid随便写个key,页面上能判断吗?
我是认为只有activex程序才能忘clsid写符合规则的值,自己随便写,不一定能用的吧?


客户端写文件,这种方式肯定不好的啊。

问题补充:
mginobili 写道
引用

我的意思是注册表的目录随便写,但是写clsid是要用activex程序的吧?安装程序是c++的,具体不是我开发的。
如果我往注册表的clsid随便写个key,页面上能判断吗?
我是认为只有activex程序才能忘clsid写符合规则的值,自己随便写,不一定能用的吧?


客户端写文件,这种方式肯定不好的啊。

同意lz

我的意思是,在用户安装.exe程序的时候
在用户机器上指定目录写一个文件 以表明程序已安装(当然 如果用户卸载程序,这个文件需要删掉)

页面上的js只是判断这个文件是否存在,当然也要设置安全级别了 呵呵


看来还是要写activex控件,我是不会写的了
2010年1月21日 11:03

7个答案 按时间排序 按投票排序

0 0

引用

我的意思是注册表的目录随便写,但是写clsid是要用activex程序的吧?安装程序是c++的,具体不是我开发的。
如果我往注册表的clsid随便写个key,页面上能判断吗?
我是认为只有activex程序才能忘clsid写符合规则的值,自己随便写,不一定能用的吧?


客户端写文件,这种方式肯定不好的啊。

同意lz

我的意思是,在用户安装.exe程序的时候
在用户机器上指定目录写一个文件 以表明程序已安装(当然 如果用户卸载程序,这个文件需要删掉)

页面上的js只是判断这个文件是否存在,当然也要设置安全级别了 呵呵

2010年1月21日 13:17
0 0

只要可以让用户降低安全级别的话

你让安装程序在C盘的某个目录创建某个文件

然后再在页面上用Javascript来判断也可以啊

2010年1月21日 12:50
0 0

如果lz的安装程序可以写注册表

那么可以用
isComponentInstalled("{clsid}",
"ComponentID");来检测

2010年1月21日 11:57
0 0

这个classid是你的安装程序(ActiveX控件才行)
安装到机器上
写入注册表的信息

看来不是很符合

lz可以用一个窗口提示呗
告诉用户 正在检查你的电脑有没有安装XX程序,请把安全级别 降低云云

2010年1月21日 11:42
0 0

我的意思是这样

<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-4445535400000" codebase="http://download.adobe.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,0,0" width="400" height="200"></object>

以上是在页面中嵌入一个flash的

lz可以用同样的方式嵌入

然后用JavaScript来获取这个控件
看能否获取到呗

主要的是安装lz的.exe时 需要向注册表中写入信息

2010年1月21日 11:31
0 0

classid 就是注册表中 程序的唯一标识

2010年1月21日 11:11
0 0

你可以在安装这个.exe时,写注册表

然后网页上进行判断 如果没有对应的classid,就证明没有安装呗

2010年1月21日 11:04

相关推荐

    js判断客户端是否安装福祈PDF插件

    网上找了很多资料,发现在开发过程中,客户端安装的ocx控件是否注册比较难判断。这个js判断客户端是否安装福祈PDF插件,结合了多种方法,终于成功!

    JS判断客户端是否安装adobePDF阅读器

    JS判断客户端是否安装adobePDF阅读器

    js判断客户端是否安装ocx控件

    这是JS判断客户端是否安装ocx控件的详细说明,使用的是ActivexObject方法,虽然简单,但是网上说的都不详细,我用了半天时间才找到真正可行的方法。本来可以不要分的,但是毕竟是我的辛勤汗水的成果,只要1分,请...

    判断客户端浏览器是否安装了Flash插件的多种方法

    本文将详细介绍几种判断客户端浏览器是否安装Flash插件的方法。 1. JavaScript检测 一种常见的JavaScript检测方法是利用ActiveXObject对象,这是Internet Explorer特有的。以下是一段示例代码: ```javascript var ...

    Js判断移动端是否存在客户端:如果存在则打开,如果不存在则下载

    在移动互联网时代,为了更好地提升用户体验并实现特定功能,许多应用会采用混合开发技术,其中JavaScript作为前端开发的核心语言之一,常被用来判断用户是否已安装了特定的客户端应用。如果已经安装,则直接启动该...

    wayos 客户端 傻瓜式一键安装

    3,如果安装此客户端后,出现断网、网络卡、蓝屏等现象,可能是客户端与机器其他软件冲突所致!卸载此软件即可! 4,如果开机就蓝屏导致无法使用卸载程序卸载,请映射系统盘后删除“windows\system32”文件夹下的...

    智能客户端(SC)、胖客户端(RC)、瘦客户端(TC)之间比较

    胖客户端应用通常需要在客户端安装特定的软件,这带来了以下特点: - **高级用户体验**:由于大部分逻辑在本地执行,胖客户端应用可以提供更复杂的界面和更快的响应速度。 - **离线操作能力**:数据和应用逻辑在...

    SWAN客户端安装和使用手册.docx

    SWAN 客户端安装和使用手册 SWAN 客户端安装和使用手册是一份详细的操作指南,旨在帮助用户快速了解和掌握 SWAN 客户端的安装、配置和使用方法。该手册涵盖了 SWAN 客户端的系统结构、服务器数据源、客户端功能、...

    TD客户端.rar

    由于压缩包内只有一个文件也叫"TD客户端",这可能是一个自解压文件,或者是一个已经包含了所有所需组件的单一执行文件。对于自解压文件,用户只需双击运行,它会自动解压并执行安装过程。如果是单一执行文件,那么...

    联通宽带提速客户端

    这对于排查网络问题、判断网络是否正常运行非常有帮助。 3. **网络优化**:除了基础的提速和测速,客户端还可能包含网络优化功能。例如,优化网络设置,改善网络稳定性,减少网络延迟,提升游戏和视频通话等实时...

    Oracle11服务端安装和客户端配置.doc

    Oracle 11g 服务端安装和客户端配置 Oracle 11g 服务端安装是 Oracle 11g 数据库管理系统的核心组件之一。该组件负责安装和配置 Oracle 11g 数据库服务器,提供了图形化的安装界面,用户可以通过移动和单击鼠标完成...

    易语言客户端源码,易语言更新客户端源码,易语言服务控制端源码,

    易语言客户端源码中可能包含检查更新、下载更新包、安装更新的逻辑。通常,客户端会定期向服务器发送版本信息,服务器根据版本信息返回是否有新版本及更新链接。下载完成后,客户端会执行安装脚本,完成软件的升级...

    DuckChat私有聊天系统(多客户端)

    小程序权限判断 表情符号消息支持 客户端支持(手机端可通往App store/Android市场下载): Android / iOS / PC 网页版 部署服务器支持: Linux / Windows / 虚拟空间 连接方式: HTTP轮询模式 / 长连接模式 ...

    摄像机客户端

    4. **_setup.exe**:这是一个Windows安装程序文件,用于在Windows操作系统上安装"摄像机客户端"软件。用户可以通过运行这个文件来设置和配置客户端,使其能够连接并控制网络摄像机。 5. **功能特性**:虽然没有具体...

    易瑞授权访问系统客户端安装程序6.0.rar

    易瑞授权访问系统客户端安装程序6.0是一个专为远程访问数字图书馆电子资源设计的工具。这个6.0版本的客户端控件/插件旨在帮助用户在校外顺利地浏览和利用图书馆的电子资源,提供了安全、便捷的访问途径。下面将详细...

    客户端通用更新神器1.0

    此程序可能包含智能算法,能够判断当前安装的版本与服务器上的最新版本之间的差异,仅下载必要的更新文件,节省用户的下载时间和带宽。 `update.ini`作为配置文件,其作用是设定更新规则和参数。例如,用户可以通过...

    java 客户端自动更新

    - **版本比较**:通过对比本地版本号与服务器上的版本号,判断是否需要更新。 - **下载更新**:如果发现新版本,下载更新包。 - **安装更新**:下载完成后,安全地替换旧文件并重启程序以应用新版本。 2. **使用...

    MariaDB Galera集群之安装数据库客户端.pdf

    安装完成后,为了验证客户端是否正常工作并能连接到所有的数据库节点,可以使用`mysql`命令行工具进行测试。例如,使用在上文中提到的haproxy_adm用户和密码,尝试连接到各个数据库节点并执行`show databases;`命令...

Global site tag (gtag.js) - Google Analytics