该子例程的前半部分用以确定所选的具体按钮。单选按钮(至少是具有相同名称的按钮)作为数组进行存储;数组中的第一个按钮是项目 0,第二个按钮是项目 1 等等。我们在这里所做的就是确定选择了哪个按钮;这可以通过查看每个按钮的“Checked(选定)”属性来实现。例如,这行代码用以确定按钮 0(数组中的第一个按钮)的“Checked”属性是否为 true;如果是的话,就表示所选定的就是该按钮:
If ComputerOption(0).Checked Then
如果“Checked”为 true,又如何呢?那么,随后将对变量 strComputer 指派该单选按钮的值(同时记住,该按钮的值恰好是计算机的名称):
strComputer = ComputerOption(0).Value
如果“Checked”为 False,那又如何呢?没什么大不了;毕竟我们已经检查了每个单选按钮的值。迟早都会弄清楚选定了哪个按钮(而且只能有一个)。如果最终确定未选择任何按钮,那么就将退出该子例程。这就是该代码所完成的工作:
如果选择了一个按钮,那么 strComputer 将为我们所要连接的计算机的名称。这就是该子例程的后半部分所完成的工作:连接到指定计算机并返回其上所安装的操作系统的名称的是一个标准 WMI 脚本。
哟!我们敢打赌,对于能完成这件事,您会感到很高兴,不是吗?或者,至少如果我们的确做到了这一点,您就会高兴。但是,还有一点需要指出。我们在此提供的示例 HTA 可以检索计算机上所安装的操作系统的名称,然后将其显示在消息框中。这很好,但是比方说您想显示计算机上所安装的所有服务的列表,又该怎么办呢?这时,您会发现自己将应答几十个消息框。这可不是您我所希望得到的用户体验。
那么,能否解决这个问题?当然可以。我们不想在这方面多花时间,但是需要做几件事。首先,我们在 HTA 中添加了一个 SPAN 区域;这只是屏幕上的一个可识别的区域,可以在其中写入信息。使用此类代码将 SPAN(附带 DataArea 的 ID)放置在按钮的下方:
<P> <span id=DataArea></span>
其次,需要收集该数据,并将其全都保存到一个变量中,而不在一个消息框中显示所有数据。该代码将变量 strText 的值设为当前在 strText 中的任何值加上“caption”属性的值,再加上 <BR> 标记(在 HTML 脚本中相当于按键盘上的“ENTER”键):
strText = strText & objItem.Caption & "<BR>"







