用VB实现将脚本的输出复制到剪贴板

来源:岁月联盟 编辑:zhu 时间:2008-12-09
  问:  

  嗨,Scripting Guy!有办法将脚本输出复制到剪贴板吗? 

  -- ZW, Marseilles, France  

  答:  

  您好,ZW.如果您不介意用一些疯狂的解决方法,那么实际上将脚本输出复制到剪贴板相当容易。首先,您需要构造一个字符串,其中包含想要的输出。然后,创建 Internet Explorer 的一个实例,然后在其中打开一个空白页。接着,利用 Internet Explorer 对象模型的内置功能,将字符串复制到剪贴板;特别是, 可以使用 clipboardData.SetData 方法来实现这个技巧。将某些数据复制到剪贴板的示例脚本如下:  

  CODE:

  strCopy = "This text has been copied to the clipboard."

  Set objIE = CreateObject("InternetExplorer.Application")

  objIE.Navigate("about:blank")

  objIE.document.parentwindow.clipboardData.SetData "text", strCopy

  objIE.Quit  

  运行脚本,然后打开 Notepad,然后单击“粘贴”;应该可以看到所复制的字符串。

  顺便说一下,所有这一切都是在“幕后”发生的,Internet Explorer 并不会真的出现在屏幕上。这是因为,在默认情况下,通过脚本创建的任何 IE 实例在运行时都是隐藏的,除非您利用如下语句将其显示出来:  

  objIE.Visible = True  

  有关 clipboardData.SetData 的更多信息,请参阅MSDN 上的 DHTML 参考文档