在 Delphi 7 里面,这个问题不存在。
问题的重点:在 XE10 里面,New - ActiveX 底下,看不到 New Active Form 了。只能看到 Active Library。必须要先 New 完 Active Library 以后,再 new 才能看到 Active Form
-----------------------------------
1、 创建ActiveForm
必须先创建一个Active Library 工程,步骤如下:
(1) 打开菜单:File->New->Other
(2)在New Items窗口中选择:DelphiProjects->Active->Active Library
(3)千万不要关闭刚建好的Active Library工程,紧接着创建ActiveForm
(4)打开菜单:File->New->Other
(5)在New Items窗口中选择:DelphiProjects->Active->Active Form
(6)在Active Form Wizard窗口中输入coclass name;选中Include version information;点击“ok”
(7)将以上建立好的两个工程保存到指定的目录中
(8)在project菜单中选择Build All Project,可在指定目录中(delphi xe 在指定目录下的WIN32\DEBUG位置)创建ocx文件
2、 发布ActiveForm
Delphi2010和delphi xe3的Project菜单中已经没有Web Depoly的功能,只能靠手动发布,自己创建一个htm文件,在htm文件中控件插入的格式是:
<OBJECT
classid="clsid:B47D82B5-202E-45A2-8793-5817726C226A"
codebase="http://10.24.2.5/pdcweb/project1.ocx#version=1.0.11.0"
width=716
height=581
align=center
hspace=0
vspace=0
>
</OBJECT>
1、classid号和版本号的查看方法是:
在projectgroup下选择ridl文件,如果出现的是代码页,用“Toggle Form/Unit”快捷菜单切换到窗口页,选择在ActiveForm 向导中命名的项目(coclass name),显示的GUID和Vesion分别就是classid号和版本号。
2、格式中的“http://10.24.2.5/pdcweb/”是在服务器中建立的IIS服务的WEB访问路径,ocx文件必须放在该路径指定的实际物理路径下。