ActiveX发布步骤整理

本文详细介绍了使用SignCode.exe对OCX文件进行数字签名的过程,包括制作证书、转换证书格式、签名及验证等步骤。
1、数字签名。使用SignCode.exe进行数字签名,步骤如下:
首先要有工具包,包括以下几个软件:(c:/Program Files/Microsoft Visual Studio .NET 2003/Common7/Tools/Bin目录下都有)
makecert.exe 制作cer格式的证书,即X.509证书,同时可以创建私钥
cert2spc.exe 将cer格式证书转换成spc格式证书,即PKCS #7证书
signcode.exe 将证书签署到ocx上去
chktrust.exe 检查签署证书后的ocx是否正确
还有一个certmgr.exe,是管理证书用的。可以从这里面导出root.cer来,网上很多文章写到这个证书,但是在VC的安装盘中却找不

到。其实,没有也没关系的。这几个软件可以从VC的安装盘中找到。

下面是具体的步骤:
1、创建一个自己的证书文件:
makecert /sv "wwx.PVK" /n "CN=yourcompant" wwx.cer
makecert /sv "wwx.pvk" /n "CN=公司名称,E=email,O=作者" wwx.cer
这里,Record.PVK表示新创建的私人密钥保存文件名
yourcompant是你想显示的公司名
wwx.cer是你创建最后的证书文件名
这些根据你自己的要求填写,最后得到wwx.PVK和wwx.cer两个文件。
其中,运行过程中需要输入私人密钥的保护密码,一定要输入一致,不要出错。

2、转换cer格式为spc格式(可以省略)
cert2spc wwx.cer wwx.spc
得到wwx.spc文件。

3、给ocx进行签名
运行signcode,命令行的我没有试验通过,我是通过界面实现的。
signcode运行后会出现数字签名向导,首先选择你要签名的ocx,下一步后会出现签名选项,一种是典型,一种是自定义。选择自定

义,这样才能从文件选择证书,选择前面制作的dream.spc,再下一步是
选择私钥文件,选择Record.PVK,输入私人密钥的保护密码,选择散列算法,一般用md5就可以了,下一步是选择其他证书,直接下

一步,填写一下这个控件的声明,用户用ie浏览的时候,会弹出证书说明,再下一步是加盖时间戳,如果需要,用以下地址:

http://timestamp.verisign.com/scripts/timstamp.dll 要求已经上网并能出国,然后直接下一步就完成了。

4、用chktrust检查是否正确
chktrust -v RecordProj.ocx

就这样,得到了一个测试证书,恩,虽然只是一个测试证书,但至少保证这个ocx在ie浏览的时候能够弹出来一个窗口,问你是否安装,而不是直接禁止了。

5、创建INF文件

[version]
signature="$CHINA$"
AdvancedINF=2.0

[Add.Code]
WebOffice.ocx=WebOffice.ocx
mfc70.dll=mfc70.dll
msvcrt.dll=msvcrt.dll
olepro32.dll=olepro32.dll

[mfc70.dll]
file-win32-x86=thiscab
FileVersion=7,0,9466,0
DestDir=11
RegisterServer=yes

[msvcrt.dll]
file-win32-x86=thiscab
FileVersion=6,1,9844,0
DestDir=11
RegisterServer=yes

[olepro32.dll]
file-win32-x86=thiscab
FileVersion=5,0,4522,0
DestDir=11
RegisterServer=yes

[WebOffice.ocx]
file-win32-x86=thiscab
clsid={05430EC0-69CA-437A-B1F9-4B78B8647BEA}
FileVersion=1,0,0,1
RegisterServer=yes
;

注意:如果基于MFC选择了静态编译就不需要配置动态运行库.

6、创建CAB文件
cabarc -s 6144 n WebOffice.cab msvcrt.dll msvcp70.dll msvcr70.dll mfc70.dll olepro32.dll ASYCFILT.DLL STDOLE2.TLB  WebOffice.ocx WebOffice.inf

使用Code Signing Wizard签署一个CAB文件
SIGNCODE.exe
时间戳服务:verisign的时间服务器,这个是免费的.http://timestamp.verisign.com/scripts/timstamp.dll

7、
完成后编辑网页ActiveX.htm

<object id=DWebOffice style="left: 0px; width: 100%; top: 0px; height: 450px;" classid="clsid:05430EC0-69CA-437A-B1F9-4B78B8647BEA" viewastext codebase="http://127.0.0.1:9000/ActiveX/WebOffice.cab#version=1,0,0,1">


注意网页中object标签codebase参数的URL地址和#version所指定的版本号
<think>好的,我需要解决用户在组态王7.5中进行Web发布的问题。首先,我要回忆组态王7.5的相关知识,并结合提供的引用内容来组织回答。用户提到的引用中有几个可能与Web发布相关,比如引用[1]提到了网络配置和演示版限制,引用[3]涉及授权问题,引用[4]可能涉及控件设置。 首先,我应该按照系统级指令的要求,使用正确的中文回答,结构清晰。需要分步骤说明Web发布的配置方法,包括环境准备、配置步骤、注意事项和常见问题。同时,要确保LaTeX格式正确,不过用户的问题可能不涉及数学公式,所以可能不需要太多数学内容,但需要检查是否有变量或代码需要用行内或独立格式。例如,提到的IP地址可能需要用行内格式,比如$192.168.1.100$。 接下来,我需要验证引用内容是否适用。引用[1]提到网络配置需要设置为连网,演示版有10分钟限制和1个用户的限制,这些在步骤中需要提到。引用[3]强调授权类型和开发锁、运行锁的选择,这应该在环境准备部分说明。引用[4]虽然主要关于XY曲线控件,但提到控件设置可能影响Web发布,所以在注意事项里需要提醒检查画面中的控件是否兼容。 然后,考虑用户可能的常见问题,如连接错误、授权失败、控件不兼容等,需要结合引用[1]和[3]的内容解答。例如,连接错误可能由于网络配置或控件不支持,需要检查画面元素。 最后,生成相关问题,确保问题与Web发布相关,并覆盖配置步骤、常见错误、优化和访问控制等方面。需要避免重复,并确保问题有实际帮助。 现在整理回答的结构: 1. 环境准备:系统要求、授权、IIS安装。 2. 配置步骤:网络配置、Web发布设置、参数配置、启动服务。 3. 注意事项:控件兼容性、IP地址、防火墙、用户限制。 4. 常见问题解答:连接错误、授权问题、性能优化。 5. 相关问题:覆盖教程、错误排查、优化方法、访问控制。 确保每个部分引用正确的引用来源,例如在环境准备中提到授权选择引用[3],在注意事项提到控件问题引用[1]和[4]。 检查LaTeX是否符合要求,例如IP地址用$...$,可能不需要数学公式,但如果有变量或代码,需正确格式化。例如,代码块用```python等格式,但用户示例中使用的是Python,而这里可能涉及组态王的配置步骤,可能需要用其他语言或配置说明。 最后,确保回答自然流畅,步骤明确,用户能够逐步跟随操作完成Web发布配置。</think>### 如何在组态王7.5中进行Web发布 #### 一、环境准备 1. **系统要求** - 确保操作系统为Windows XP/7/10,并已安装IIS(Internet Information Services)。 - 组态王7.5需正确安装并激活授权,授权时选择“组态王7.x授权”,开发锁为`KingViewMaker`,运行锁为`KingViewRuntimeServer`[^3]。 2. **网络配置** - 检查开发机网络设置,确保“网络配置”已启用连网模式[^1]。 --- #### 二、配置步骤 1. **启用Web发布功能** - 打开组态王工程,进入 **工程浏览器** → **系统配置** → **网络配置**,勾选“允许Web发布”。 - 设置Web服务器端口(默认为`80`),确保端口未被占用。 2. **配置Web发布参数** - 在 **Web发布** 页面中,选择需要发布的画面和变量组。 - 注意:若画面包含控件(如超级XY曲线)、过渡色等复杂元素,可能导致兼容性问题[^1][^4]。 3. **启动Web服务** - 在组态王运行系统中,点击 **工具** → **Web发布工具**,启动服务。 - 确保运行锁`KingViewRuntimeServer`已正确授权。 --- #### 三、访问Web页面 1. **客户端访问** - 在浏览器输入 `http://服务器IP:端口号/项目名称`(例如:`http://$192.168.1.100$/MyProject`)。 - 演示版限制:仅支持10分钟浏览,且最多1个并发用户。 --- #### 四、常见问题解答 1. **提示“连接远程文件格式错误”** - 检查画面是否包含不支持的控件(如ActiveX)或图素,需简化画面设计。 2. **Web服务无法启动** - 确认IIS服务已启用,且端口未被防火墙拦截。 - 检查授权是否包含运行锁权限。 3. **访问速度慢** - 优化网络带宽,减少画面中动态元素的数量。 --- #### 五、注意事项 - **IP地址绑定**:若服务器有多个网卡,需在IIS中绑定正确IP。 - **控件兼容性**:部分控件(如历史曲线)需客户端安装对应插件[^4]。 - **防火墙设置**:开放Web服务端口(如`80`或自定义端口)。 ---
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值