你目前正处于脱机状态,正在等待 Internet 重新连接

CreateObject 函数或 ActiveXObject 函数可能在 InfoPath 2003 中生成脚本错误

针对 Office 2003 的支持已终止

Microsoft 已于 2014 年 4 月 8 日终止了针对 Office 2003 的支持。该更改已影响到您的软件更新和安全选项。 了解这一措施对于您的含义以及如何继续保持受保护状态。

症状
您可以使用 Microsoft VBScript CreateObject 函数或 Microsoft JScript ActiveXObject 函数创建一个 ActiveX 组件实例。如果在函数调用的脚本模块中为 Microsoft Office InfoPath 2003 表单创建这个 ActiveX 组件实例,则可能收到以下错误消息之一。
Automation 服务器不能创建对象
ActiveX 部件不能创建对象
原因
InfoPath 2003 表单始终在 Internet 安全区域的上下文中运行。Internet 安全区域定义表单中的脚本可以执行的操作和表单中的脚本不能执行的操作。通常,发生此错误的原因在于,当 ActiveX 组件没有标记可安全执行不受信任脚本可安全执行不受信任的初始化时,表单所运行的 Internet 安全区域不允许创建 ActiveX 组件。这意味着该控件的作者没有证明,当该组件带有恶意脚本或恶意数据时,它不能对系统造成损害。

有关安全区域如何影响表单对计算机上的资源所具有的访问级别的更多信息,请单击“帮助”菜单上的“Microsoft Office InfoPath 2003 帮助”,在“协助”窗格的“搜索”框中键入关于安全区域,然后单击“开始搜索”以查看相关主题。
有关其他信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
216434INFO:Internet Explorer 如何确定 ActiveX 控件是否安全
解决方案
要变通解决在 InfoPath 2003 表单中存在的这种问题,请使用以下两种方法之一:
  • 使该表单成为完全受信任的基于 URN 的表单。
  • 将主持 InfoPath 2003 表单的服务器的 URL 添加到 Microsoft Internet Explorer 的受信任站点列表中。
  • 对表单模板进行数字签名。(适用于 InfoPath 2003 SP1)

使该表单成为完全可信的基于 URN 的表单

必须通过使用自定义安装脚本或使用 Microsoft System Installer 软件包,将完全可信的基于 URN 的表单安装在您的计算机上。这样,即使 ActiveX 组件未标记可安全执行不受信任脚本可安全执行不受信任的初始化,也可以创建 ActiveX 组件。

您可以将标准表单手动转换成基于 URN 的表单。但是,手动转换是一项非常繁重的工作,而且容易出错。此外,您也可以通过使用 RegForm.exe 工具将标准表单转换成基于 URN 的表单。该工具是包括在 InfoPath 2003 软件开发工具包 (SDK) 中的命令行表单注册工具。RegForm.exe 工具可对表单定义文件和 XML 模板文件进行所需的更改。然后,Regform.exe 工具将这些文件重新打包成一个 .xsn 文件,接着创建一个用于安装修改后的表单模板的自定义安装程序。

有关如何能够下载 InfoPath 2003 SDK 的其他信息,请访问下面的 Microsoft 网站:InfoPath 2003 SDK 的默认安装位置是 C:\Program Files\Microsoft Office 2003 Developer Resources\Microsoft Office InfoPath 2003 SDK\Tools。

要查看命令行选项,请在“命令”窗口中键入下面的命令行:
regform /?
请注意命令行中 /U 开关和 /T 开关的用法。/U 开关指定要用于表单模板的 URN。/T 开关指定表单模板是完全可信的。这会将表单定义 (.xsf) 文件中的 requireFullTrust 属性设置为“是”。

下面的命令行在要转换的模板所在的文件夹中生成一个 .js 文件和一个 .bak 文件:
regform /U urn:MyForm:MyCompany /T Yes C:\MyForms\MyTrustedForm.xsn
.bak 文件是执行基于 URN 的更改之前原始表单模板文件的副本。.js 文件是可用于安装基于 URN 表单的脚本文件。

要运行 .js 脚本,请在命令行中键入以下代码,然后按 Enter:
Cscript <full path of your .js file>
有关基于 URN 的表单或有关 RegForm.exe 工具的其他信息,请参见 InfoPath 2003 SDK 帮助文档中的“使用表单注册工具”主题。

将主持 InfoPath 2003 表单的服务器的 URL 添加到 Microsoft Internet Explorer 的受信任的站点列表中

如果将主持 InfoPath 2003 表单的服务器的 URL 添加为受信任的站点,则当您运行代码时将收到下面的消息:
在此页上的 ActiveX 控件和本页上的其他部分的交互可能不安全。您想允许这种交互吗?
如果单击“是”,则该代码将运行。如果单击“否”,则会收到“症状”一节所述的错误消息,并且该代码不会运行。

要将站点添加为受信任的站点,请按照下列步骤操作:
  1. 启动 Internet Explorer。
  2. 在“工具”菜单上,单击“Internet 选项”。
  3. 在“Internet 选项”对话框中,单击“安全”选项卡。
  4. 在“安全”选项卡上,单击“受信任的站点”。
  5. 单击“站点”。
  6. 将主持 InfoPath 2003 表单的服务器的 URL 添加到“将该网站添加到区域中”文本框中。

    例如,如果主持 InfoPath 2003 表单的服务器名称为 MyServer,则必须添加到该文本框的 URL 为 http://MyServer
  7. 单击“添加”。

    这样便将新输入的网站添加到“网站”列表框中。
  8. 单击“确定”两次。

    这样将提交更改,然后关闭对话框。

对表单模板进行数字签名

这适用于 InfoPath 2003 Service Pack 1。如果使用受信任的证书对表单模板进行数字签名,则可以将表单模板的安全级别设置为“完全信任”。“完全信任”意味着表单可以访问用户计算机或其他域中的文件和设置。此外,您也可以部署和更新该表单模板,方法是通过使用电子邮件程序将表单模板和表单模板的更新版本发送给其他人。

要使用受信任的证书对表单进行数字签名,请按照下列步骤操作:
  1. 在“设计”模式中,单击“工具”菜单上的“表单选项”。
  2. 在“表单选项”对话框中,单击“安全性”选项卡。
  3. 在“表单签名”下,单击以选中“签名此表单”复选框。
  4. 单击“选择证书”。
  5. 在“选择证书”对话框中,单击对表单进行数字签名要使用的证书。
注意:如果某证书在用户计算机上不受信任,则 Microsoft Office InfoPath 2003 将显示一条安全消息,并且要求用户在打开表单之前对证书颁发者启用信任。
参考
有关如何获取 Microsoft Office 的最新的 Service Pack 的其他信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
870924如何获取最新的 Office 2003 Service Pack
属性

文章 ID:832512 - 上次审阅时间:01/11/2006 06:53:00 - 修订版本: 2.0

  • Microsoft Office InfoPath 2003
  • Microsoft Office InfoPath 2003, Service Pack 1 (SP1)
  • kbdownload kbnofix kbautomation kbprb KB832512
反馈