VBS访问剪贴板的几种方法小结
Set IE = CreateObject("InternetExplorer.Application")
IE.Navigate("about:blank")
Set clipboard = IE.document.parentWindow.clipboardData
'SetData设置剪切板的内容
clipboard.SetData "text", "忘记了,喜欢一个人的感觉"
'GetData获取剪切板的内容
WScript.Echo clipboard.GetData("text")
IE.Quit
实践证明,网上一搜一大把的代码一般不是好代码。SetData方法其实是和IE浏览器的设置有关的。
IE8的默认设置是Prompt,所以运行上面那个脚本的时候会弹出一个对话框,如果这是成Disable,那么这个脚本就无法设置剪贴板内容了(获取不受影响)。
这种没有保证的代码还是少用一些的好,在Windows 7下可以用clip.exe来设置剪贴板的内容,获取的话还是用IE就行了。
Dim WshShell
set WshShell = CreateObject("wscript.Shell")
str = "忘记了,喜欢一个人的感觉"
WshShell.Run "cmd.exe /c echo " & str & " | clip",0,False
用Word.Application也可以设置和获取剪贴板内容
'设置剪切板的内容
Dim Word
Set Word = CreateObject("Word.Application")
Word.Documents.Add
Word.Selection.Text = "忘记了,喜欢一个人的感觉"
Word.Selection.Copy
Word.Quit False
'获取剪切板的内容
Dim Word
Set Word = CreateObject("Word.Application")
Word.Documents.Add
Word.Selection.PasteAndFormat(wdFormatPlainText)
Word.Selection.WholeStory
str = Word.Selection.Text
Word.Quit False
WScript.Echo str
最神奇的是用Microsoft Forms 2.0 Object Library。
'设置剪切板的内容
Dim Form, TextBox
Set Form = CreateObject("Forms.Form.1")
Set TextBox = Form.Controls.Add("Forms.TextBox.1").Object
TextBox.MultiLine = True
TextBox.Text = "忘记了,喜欢一个人的感觉"
TextBox.SelStart = 0
TextBox.SelLength = TextBox.TextLength
TextBox.Copy
'获取剪切板的内容
Dim Form, TextBox
Set Form = CreateObject("Forms.Form.1")
Set TextBox = Form.Controls.Add("Forms.TextBox.1").Object
TextBox.MultiLine = True
If TextBox.CanPaste Then
TextBox.Paste
WScript.Echo TextBox.Text
End If
参考链接:
原文:http://demon.tw/programming/vbs-clipboard.html
相关推荐
-
JS/FLASH实现复制代码到剪贴板(兼容所有浏览器)
目前,如果使用javascript来写复制到剪贴板的代码,一般都是浏览器不兼容的.所以采用flash的方式,模拟一个层,再来复制,就可以做到全部浏览器都适用哦~ 需要下载一个swf文件,和一个js文件.把这两个文件,和htm放到一起. 图示: 必须放在服务器端使用哦. 图示: JS代码: 复制代码 代码如下: ZeroClipboard.js // Simple Set Clipboard System // Author: Joseph Huckaby var ZeroClipboard =
-
vb.net借助剪贴板将图片导入excel内
复制代码 代码如下: Dim im as Image=Image.FromFile ("C:/picture.bmp") '获得Image System.Windows.Forms.Clipboard.SetDataObject(im, True) '复制到剪贴板 Dim xlApp As Excel.Application = New Excel.Application() Dim xlBook As Excel.Workbook Dim xlSheet As E
-
VBScript 剪贴板抓取URL并在浏览器中打开
您好,CL.这是很有趣的问题,或者我们应当说,这是两个很有趣的问题.因为您实际上问了两个问题.第一个问题很简单:我可以使用脚本打开特定的 Web 站点吗?您大概已经知道答案了,我可以大声地回答您,可以!下面是一个示例脚本,它将"脚本中心"的 URL 存储在一个名为 strURL 的变量中.然后,此脚本会创建 WSH Shell 对象的一个实例,并使用 Run 方法来打开默认的 Web 浏览器并导航到指定的 URL: strURL = "http://www.microsoft
-
[js]javascript与剪贴板交互
1.怎样操作剪贴板,从而实现复制.剪切与粘贴?同时判断剪贴板里边的数据是否是文本? if (!IsClipboardFormatAvailable(CF_TEXT)) return; if (!OpenClipboard(hwndMain)) return; hglb = GetClipboardData(CF_TEXT); if (hglb != NULL) { lptstr = GlobalLock(hglb); if (lptstr != NULL) { // Call
-
一段多浏览器的"复制到剪贴板"javascript代码
代码如下,就不多说废话了,可以兼容基本上所有的主流浏览器(IE,FF),很多地方可以用到的: copyToClipboard = function(txt) { if(window.clipboardData) { window.clipboardData.clearData(); window.clipboardData.setData("Text", txt); } else if(navigator.userAgent.indexOf("Opera"
-
用vbscript实现将脚本的输出复制到剪贴板
问: 嗨,Scripting Guy!有办法将脚本输出复制到剪贴板吗? -- ZW, Marseilles, France 答: 您好,ZW.如果您不介意用一些疯狂的解决方法,那么实际上将脚本输出复制到剪贴板相当容易.首先,您需要构造一个字符串,其中包含想要的输出.然后,创建 Internet Explorer 的一个实例,然后在其中打开一个空白页.接着,利用 Internet Explorer 对象模型的内置功能,将字符串复制到剪贴板:特别是, 可以使用 clipboardData.SetDa
-
ASP.NET jQuery 实例4(复制TextBox的文本到本地剪贴板上)
在这节,我们将看到如何把多行文本框的内容复制到剪贴板上. 注意:jQuery clipboard plugin 只支持IE 界面代码: 复制代码 代码如下: <form id="form1" runat="server"> <div align="center"> <fieldset style="width: 400px; height: 300px;"> <p>请输入你的评论
-
用vbs 实现从剪贴板中抓取一个 URL 然后在浏览器中打开该 Web 站点
问: 嗨,Scripting Guy!我如何从剪贴板中抓取一个 URL 然后在浏览器中打开该 Web 站点? -- CL 答: 您好,CL.这是很有趣的问题,或者我们应当说,这是两个很有趣的问题.因为您实际上问了两个问题.第一个问题很简单:我可以使用脚本打开特定的 Web 站点吗?您大概已经知道答案了,我可以大声地回答您,可以!下面是一个示例脚本,它将"脚本中心"的 URL 存储在一个名为 strURL 的变量中.然后,此脚本会创建 WSH Shell 对象的一个实例,并使用 Run
-
JS复制到剪贴板示例代码
复制代码 代码如下: /* * 复制到剪贴板 * * */ function copyToClipboard(txt) { if(window.clipboardData) { window.clipboardData.clearData(); window.clipboardData.setData("Text", txt); } else if(navigator.userAgent.indexOf("Opera") != -1) { window.locati
-
VBS访问剪贴板的几种方法小结
复制代码 代码如下: Set IE = CreateObject("InternetExplorer.Application") IE.Navigate("about:blank") Set clipboard = IE.document.parentWindow.clipboardData 'SetData设置剪切板的内容 clipboard.SetData "text", "忘记了,喜欢一个人的感觉" 'GetData获取
-
python 字典访问的三种方法小结
定义字典 dic = {'a':"hello",'b':"how",'c':"you"} 方法一: for key in dic: print key,dic[key] print key + str(dic[key]) 结果: a hello ahello c you cyou b how bhow 细节: print key,dic[key],后面有个逗号,自动生成一个空格 print key + str(dic[key]),连接两个字符串,
-
遍历json获得数据的几种方法小结
Json在Web开发的用处非常广泛,作为数据传递的载体,如何解析Json返回的数据是非常常用的.下面介绍下四种解析Json的方式: Part 1 var list1 = [1,3,4]; alert(list1[1]); var list2 = [{"name":"leamiko","xing":"lin"}]; alert(list2[0]["xing"]) alert(list2[0].xing) Pa
-
js实现页面跳转的几种方法小结
按钮式: <INPUT name="pclog" type="button" value="GO" onClick="location.href='http://www.jb51.net/'"> 链接式: <a href="javascript:history.go(-1)">返回上一步</a> <a href="<%=Request.ServerV
-
Spring整合Struts2的两种方法小结
spring提供了一个ContextLoaderListener,该监听类实现了ServletContextListener接口.该类可以作为Listener使用,它会在创建时自动查找WEB-INF/下的applicationContext.xml文件,因此如果只有一个配置文件且配置文件命名为applicationContext.xml,则只需在web.xml文件中增加如下配置片段: <!-- 使用ContextLoaderListener初始化Spring容器 --> <listene
-
C++连接mysql数据库的两种方法小结
现在正做一个接口,通过不同的连接字符串操作不同的数据库.要用到mysql数据库,以前没用过这个数据库,用access和sql server比较多.通过网上的一些资料和自己的摸索,大致清楚了C++连接mysql的方法.可以通过2种方法实现. 第一种方法是利用ADO连接, 第二种方法是利用mysql自己的api函数进行连接. 第一种方法可以实现我当前的需求,通过连接不同的字符串来连接不同的数据库.暂时只连接了mysql,sqlserver,oracle,access.对于access,因为它创建表的
-
部署Go语言项目的 N 种方法(小结)
本文以部署 Go Web 程序为例,介绍了在 CentOS7 服务器上部署 Go 语言程序的若干方法. 部署Go语言项目 本文以部署 Go Web 程序为例,介绍了在 CentOS7 服务器上部署 Go 语言程序的若干方法. 独立部署 Go 语言支持跨平台交叉编译,也就是说我们可以在 Windows 或 Mac 平台下编写代码,并且将代码编译成能够在 Linux amd64 服务器上运行的程序. 对于简单的项目,通常我们只需要将编译后的二进制文件拷贝到服务器上,然后设置为后台守护进程运行即可.
-
实现Servlet程序的三种方法(小结)
实现Servlet程序的三种方法 1.手动实现Servlet程序 1.编写一个类去实现Servlet接口 2.实现service方法,处理请求并响应数据 示例代码: //HelloServlet.java package servlet; import javax.servlet.*; import java.io.IOException; public class HelloServlet implements Servlet { @Override public void init(Serv
-
Redis实现限流器的三种方法(小结)
目录 方法一:基于Redis的setnx的操作 方法二:基于Redis的数据结构zset 方法三:基于Redis的令牌桶算法 方法一:基于Redis的setnx的操作 我们在使用Redis的分布式锁的时候,大家都知道是依靠了setnx的指令,在CAS(Compare and swap)的操作的时候,同时给指定的key设置了过期实践(expire),我们在限流的主要目的就是为了在单位时间内,有且仅有N数量的请求能够访问我的代码程序.所以依靠setnx可以很轻松的做到这方面的功能. 比如我们需要在1
-
js中将多个语句写成一个语句的两种方法小结
Javascript 中将多个语句写成一个语句的两种方法小结一.使用逗号运算符将多个语句写成一个语句 1.一次声明多个变量 var i=1,j=1,k=1 2.多个语句用逗号间隔 i=1,j=i+2,k=j+2 二.使用花括号将多个语句写成一个语句 if语句.while语句.do/while语句.for语句.for/in语句和function语句等语句后都只能跟随一个子语句,此时可以用{和}将多条语句围起来变成一个语句. 复制代码 代码如下: if(username==null)
随机推荐
- Coldfusion MX PageList之骨灰版
- jQuery 实时保存页面动态添加的数据的示例
- JS实现点击网页判断是否安装app并打开否则跳转app store
- 详解Java中LinkedHashMap
- 详解python脚本自动生成需要文件实例代码
- Swift中用到extension的一些基本的扩展功能讲解
- PHP Mysql编程之高级技巧
- JavaScript变量的作用域全解析
- Asp高级故障解决以及相关代码
- 基于ASPJPEG 制作了一个梦寐已久的批量水印工具步骤
- 在.jsp中非表单请求action的几种方式总结
- js 模仿锚点定位的实现方法
- location.search在客户端获取Url参数的方法
- js实现文本框输入文字个数限制代码
- 浅析SQL Server中的执行计划缓存(上)
- JavaScript 高级篇之函数 (四)
- C#面向对象编程之猜拳游戏实现方法
- IntelliJ IDEA(2017)安装和破解的方法
- C# WebService创建、发布、调用的实例讲解
- JS温故而知新之变量提升和时间死区