| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 3225 人关注过本帖
标题:求助:帮帮我吧!头要成浆糊啦!
只看楼主 加入收藏
不懂就问呗
Rank: 2
来 自:遥远的回忆
等 级:论坛游民
帖 子:51
专家分:13
注 册:2007-12-16
收藏
得分:0 
出新问题了,_CLIPTEXT只能反应出一行文本,怎么办?
2007-12-21 03:33
不懂就问呗
Rank: 2
来 自:遥远的回忆
等 级:论坛游民
帖 子:51
专家分:13
注 册:2007-12-16
收藏
得分:0 
我需要的是多行的表格,一起复制下来
放进VFP的DBF就行了,不用再转进Excel了,现在既然啃起编程了,就不用Excel处理了

难题就是怎么接收复制的多行文本
2007-12-21 03:37
不懂就问呗
Rank: 2
来 自:遥远的回忆
等 级:论坛游民
帖 子:51
专家分:13
注 册:2007-12-16
收藏
得分:0 

不好意思,刚才看书,先看到的是TEXTBOX

刚看了EDITBOX 再试验,才知道 原来是有多行的,呵呵

现在 就是一个自动化的问题了
设想一:怎么样在网页上复制了多行表格后,按个快捷键,把信息传进VFP编的程序里?
也就是怎么给VFP编的程序定义个热键,就像QQ的CTRL+ALT+Z一样?

设想二:要是用VFP的控件编个网页浏览器,就更好了,在VFP的浏览器里,选取多行表格,再结合。。。以我现在所学,还不知道结合什么功能,等知道了再说。。。有点想的太远了,呵呵,才学一个多礼拜,就想飞了。。

VFP编的浏览器,稳定性会不会很差?先不想了,总之,日前最辣手的问题,解决指日可待!
很高兴,很兴奋,感谢CCTV,MTV,,,,,,,
2007-12-21 04:02
zhaocqdx
Rank: 1
等 级:新手上路
帖 子:152
专家分:0
注 册:2007-11-17
收藏
得分:0 
通常搞不定的时候都会头痛的,理解,我也是一样!顶起
2007-12-21 12:47
hgfeng1984
Rank: 7Rank: 7Rank: 7
等 级:黑侠
威 望:5
帖 子:139
专家分:513
注 册:2006-3-26
收藏
得分:0 
*测试时请打开[url]http://www.[/url]页面
*其他IE页面都关闭


oShell=createobject("shell.application")
oMyshell=oShell.windows()

IF  oMyshell.count>0
FOR  i=1 to oMyshell.count-1
IF  ("iexplore.exe" $ oMyshell.item(i).fullname)
?'标题:'+oMyshell.item(i).document.title
ENDIF
ENDFOR
ENDIF
&&item(i)指对哪个页面的操作

oObj=oMyshell.item(1).document.all.tags("table") &&表格集合
nRows=oObj.item(1).rows.length
?'行数:',nRows
nCells=oObj.item(1).rows(0).cells.length &&第一行的列数
?'列数:',nCells
?CHR(13)
FOR r = 0 TO nRows-1
   FOR c =  0 TO nCells-1
       ??oObj.item(1).rows(r).cells(c).innerText+[    ] &&取各单元格的值
   ENDFOR
   ?CHR(13)
ENDFOR
  
RELEASE  oshell
RELEASE  oMyshell
RELEASE oObj
2007-12-24 13:37
不懂就问呗
Rank: 2
来 自:遥远的回忆
等 级:论坛游民
帖 子:51
专家分:13
注 册:2007-12-16
收藏
得分:0 
没啥说的,问题解决靠大家,晚上都上我家喝酒去吧。
2007-12-26 15:24
hgfeng1984
Rank: 7Rank: 7Rank: 7
等 级:黑侠
威 望:5
帖 子:139
专家分:513
注 册:2006-3-26
收藏
得分:0 
楼猪的问题解决没有啊?
2007-12-26 17:09
不懂就问呗
Rank: 2
来 自:遥远的回忆
等 级:论坛游民
帖 子:51
专家分:13
注 册:2007-12-16
收藏
得分:0 
已经做了个接收_CLIPTEXT的简单编辑文本框,你上面贴的这段代码,还没试

类的部分,暂时没太明白,我要看书,强化这部分

先收藏了,等提高点水平,再改进我的小程序

现在,已经可以在几十分钟内,就完成原来五、六个小时的工作了
腾出来的时间,就是在练习
2007-12-26 17:51
不懂就问呗
Rank: 2
来 自:遥远的回忆
等 级:论坛游民
帖 子:51
专家分:13
注 册:2007-12-16
收藏
得分:0 
再来看看新思路,下面的引文,是源自【编程文档助手1.2】中“网页浏览器”主题里的一篇,看到这个,我又得到了一个启发。

何不做个DLL,在浏览网页的时候,选择文本,右键点击,选自己定义的命令,直接就把数据存进对应表里了。
不对我现在是做不了,水平太低了,今天练习的时候,在表单里加个页框,运行的时候,说什么也点不了第2页,重建个表单,按原来的步骤再加个页框,就可以点第2页,找了半天的原因,也没找到。。。。。。
哪位高手,见着问题就手痒痒的,可以开发个,传上来,哈哈,也让我鸟枪换换炮。   

那个软件的同一主题里,还有一篇“采集网页选定部分全攻略”(作者:龙仪),和下面的引文好像同出一辙,可是都是一个人写的。

==========引文:作者不详===========
一、如何在IE右键菜单中添加菜单项

    如果使用过Netants的朋友可能都知道,NetAnts在IE中添加了右键菜单功能,只要在页面的一个链接
或者图片上点击右键后在菜单中选择 Down By Netants 就可以调用Netants下载该链接指向的文件。在本
文中作者将介绍如何通过VB来实现这样的功能。
    要实现在IE右键菜单中添加菜单项的功能,要依次实现以下步骤:
    1、在注册表HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\MenuExt项下建立一个
新项,项的名称既出现在菜单中的标题,例如你想建立的菜单项标题为Add URL,则新建项的名称为
HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\MenuExt\Add URL
    2、将新建项的默认值设定为一个URL地址,当用户点击菜单项后,IE就会调用URL指向的页面中的脚
本,在目标页面的脚本中通过访问IE提供的external对象的menuArguments属性就可以访问IE中的页面中的
各种对象,例如链接、图片、表单域、被选中的文本等。详细的帮助请参考MSDN中关于InternetExplore object
的帮助,熟悉了Window对象才可以比较好的了解下面的脚本。
    对于如何实现自身的程序访问menuArguments的问题,我们可以仿效Netants的做法,首先建立一个
OLE Automation对象,然后在脚本中调用该对象,并将页面信息传递对象处理。下面我们需要首先通过VB建立
一个对象:
    打开VB,点击菜单: File | New ,在新建工程窗口中选择 ActiveX Dll 后按确定键建立一个ActiveX DLL
工程。然后在工程列表窗口中将Class1的Name属性更改为NetAPI,然后在NetAPI的代码窗口中添加如下代码:
Public Sub AddURL(URL As String, Info As String)
    MsgBox Info, vbOKOnly, URL
End Sub
    保存文件,将工程文件保存成NetSamp.vbp。然后在菜单中选择 File | Make NetSamp.dll建立对象动态
连接库。
    接下来是注册库,在Windows目录下找到Regsvr32.exe,然后将其拷贝到netsamp.dll所在目录下,将
netsamp.dll的的图标拖到Regsvr32.exe上放开,这时Regsvr32.exe就会弹出对话框提示对象注册成功。
    打开UltraEdit(或者其它文本编辑器)将下面的脚本代码输入编辑器中:

<script language="VBScript">

Sub OnContextMenu()
    On Error Resume Next
    set srcEvent = external.menuArguments.event
    set EventElement = external.menuArguments.document.elementFromPoint(srcEvent.clientX, srcEvent.clientY)
    set objNetSamp=CreateObject(")
        
        if srcEvent.type = "MenuExtAnchor" then
        set srcAnchor = EventElement
        do until TypeName(srcAnchor)="HTMLAnchorElement"
            set srcAnchor=srcAnchor.parentElement
        Loop
        Call objNetSamp.AddUrl(srcAnchor.href,srcAnchor.innerText)
    elseif srcEvent.type="MenuExtImage" then
        if TypeName(EventElement)="HTMLAreaElement" then
            Call objNetSamp.AddUrl(EventElement.href,EventElement.Alt)
        else
            set srcImage = EventElement
            set srcAnchor = srcImage.parentElement
            do until TypeName(srcAnchor)="HTMLAnchorElement"
                set srcAnchor=srcAnchor.parentElement
                if TypeName(srcAnchor)="Nothing" then
                    call objNetSamp.AddUrl(srcImage.href,srcImage.Alt)
                    exit sub
                end if
            Loop
            Call objNetSamp.AddUrl(srcAnchor.href, srcImage.Alt)
        end if
    elseif srcEvent.type="MenuExtUnknown" then
        set srcAnchor = EventElement
        do until TypeName(srcAnchor)="HTMLAnchorElement"
            set srcAnchor=srcAnchor.parentElement
            if TypeName(srcAnchor)="Nothing" then
                Call objNetSamp.AddUrl(EventElement.href,EventElement.innerText)
                exit sub
            end if
        Loop
        Call objNetSamp.AddUrl(srcAnchor.href,srcAnchor.innerText)
    end if
end Sub
    
call OnContextMenu()

</script>
   
    将文件保存到c:\program files 下,文件名为 geturl.htm
    从上面的脚本可以看到,首先访问external.menuArguments属性,获得用户单击鼠标右键位置的对象,然
后根据对象的不同获得它的URL,然后建立IEContextMenu.IEMenu1对象并调用该对象的AddURL方法。
    接下来是为右键菜单建立注册项,打开UltraEdit(或者其它文本编辑器)将下面的注册数据输入编辑器中
Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\MenuExt\&Get URL]
@="c:\\program files\\geturl.htm"
"Contexts"=dword:00000022

    将文件以reg为后缀保存,然后在Windows资源管理器中双击该文件将注册项添加到注册表中,然后打开
IE,右键点击一个连接或者图片,在弹出菜单中会出现一个Get URL项,点击该项,就会出现一个消息框显示
点击的连接或者图片的URL地址
    下面再介绍一下上面注册项中Contexts项的作用,通过该项可以制定菜单项在右键点击IE中的什么对象时
出现,它可以为以下值的“或”组合:
    对象        
    缺省         0x1
    图片         0x2
    控件         0x4
    表单域         0x8
    选择文本     0x10
    锚点         0x20
    例如上面我们希望菜单项在用户点击图片或者超链接时出现,那么我们就将值设置为dword:00000022,既在
点击图片 或者 锚点时出现菜单。一个锚点是页面中描述一个超链接的对象。如果不设置Contexts项,则菜单项
会在点击任何对象时出现在右键菜单中。
    通过上面的程序介绍我们可以看到IE鼠标右键菜单的工作过程。前面讲了,Netants就是使用这样的方法通过
在脚本中建立对象来实现调用NetAnts的,那么我们如果安装了NetAnts,就可以在程序中通过调用NetAnts对象来
调用NetAnts。
    建立一个新工程,点击菜单 Projects | References 项,选择其中的 AntAPI 1.0 Type Library 项,如果没有
点击Browser按钮,在文件列表框中选择网络蚂蚁目录下的NetAPI.dll后按打开键。在Form1中添加一个CommandButton
按钮,在Command1_Click事件中添加如下代码:
    Dim ant As New ANTAPILib.AntAPIObj
   
    ant.AddUrl "http://www., "", "http://www.
    点击command1,然后NetAnts就会运行并且将[url]http://www.[/url]添加到任务中。


二、如何添加任务栏按钮
    基本上来说,添加任务栏按钮只需要修改注册表就可以实现。通过修改注册表来实现添加按钮的步骤如下:

1、建立一个GUID。
2、打开注册表编辑器,转到HKEY_LOCAL_MACHINE\Software\Microsoft\Internet Explorer\Extensions部分,
在其下添加一个新的项,名称为 <Your GUID> ,Your GUID为你刚建立的GUID。
3、在注册表的 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\Extensions\<Your GUID>
下建立一个新的String类型的值,名称为HotIcon,该值定义当按钮具有热点时的图标,它的一般类型为:
包含图标的文件全路径名,图标索引,例如:
C:\PROGRA~1\KINGSOFT\XDICT\ieplugin.DLL,208
4、在注册表的 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\Extensions\<Your GUID>
下建立一个新的String类型的值,名称为Icon,该值定义当按钮的图标,它的一般类型为:
图标文件全路径名,图标索引
5、在注册表的 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\Extensions\<Your GUID>
下建立一个新的String类型的值,名称为ButtonText,该值定义按钮的ToolTip文本。
6、在注册表的 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\Extensions\<Your GUID>
下建立一个新的String类型的值,名称为Default Visible,该值定义按钮是否可见,如果是,则该值设定
为"Yes",否则设定为"No"。
7、在注册表的 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\Extensions\<Your GUID>
下建立一个新的String类型的值,名称为Clsid,将该值设定为{1FBA04EE-3024-11D2-8F1F-0000F87ABD16}
8、在注册表的 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\Extensions\<Your GUID>
下建立一个新的String类型的值,名称为Exec,该值定义点击按钮后运行的文件的全路径名称,例如:
c:\program files\samples\net.exe

例如NetAnts的按钮注册表项的内容就是象下面这样:

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\Extensions\{57E91B47-F40A-11D1-B792-444553540000}]
"CLSID"="{1FBA04EE-3024-11D2-8F1F-0000F87ABD16}"
"Default Visible"="Yes"
"HotIcon"="C:\\PROGRA~1\\NETANTS\\NetAnts.exe,1001"
"Icon"="C:\\PROGRA~1\\NETANTS\\NetAnts.exe,1000"
"Exec"="C:\\PROGRA~1\\NETANTS\\NetAnts.exe"
"ButtonText"="NetAnts"
"MenuText"="&NetAnts"
"MenuStatusBar"="Launch NetAnts"

    当点击NetAnts按钮时就会运行Netants。上面的注册表项中下面的两项:MenuText项添加一个菜单项到菜单
的“工具”栏中,MenuStatusBar项定义当光标移动到添加的菜单栏上后显示在状态栏中提示文本。此外在注册表的
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\Extensions\<Your GUID>下还可以添加一个名称为
MenuCustomize的字符串类型值,将该值设定为"Help"将使菜单项出现在“帮助”菜单栏中,否则出现在“工具”栏中。

    当然,我们不会满足于只是添加一个按钮,执行一个程序,我们希望能够获得当用户点击按钮时能够操控当前
页面,在注册表的 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\Extensions\<Your GUID>
下建立一个新的String类型的值,名称设定为一个htm文件的全路径名,同前面介绍的添加鼠标右键菜单一样,在点击
按钮后IE会调用该文件,在文件中通过设定VBScript访问external对象的menuArguments属性就可以获得浏览器中的
页面。例如我们将HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\Extensions\<Your GUID>\VBScript
的值设定为c:\program files\samp.htm,然后在c:\program files下建立一个名为Samp.htm的文件,在文件中输入以下
脚本内容:
    <script language="VBScript">

    Set objNetSamp=CreateObject("IEContextMenu.IEMenu1")
    userURL=external.menuArguments.location.href
    Call objNetSamp.AddUrl(userURL,"")

    </script>
    打开IE浏览%E
2007-12-28 06:48
不懂就问呗
Rank: 2
来 自:遥远的回忆
等 级:论坛游民
帖 子:51
专家分:13
注 册:2007-12-16
收藏
得分:0 
再来看看新思路,下面的引文,是源自【编程文档助手1.2】中“网页浏览器”主题里的一篇,看到这个,我又得到了一个启发。

何不做个DLL,在浏览网页的时候,选择文本,右键点击,选自己定义的命令,直接就把数据存进对应表里了。
不对我现在是做不了,水平太低了,今天练习的时候,在表单里加个页框,运行的时候,说什么也点不了第2页,重建个表单,按原来的步骤再加个页框,就可以点第2页,找了半天的原因,也没找到。。。。。。
哪位高手,见着问题就手痒痒的,可以开发个能公用的、附源码的,传上来,哈哈,也让我鸟枪换换炮。   

那个软件的同一主题里,还有一篇“采集网页选定部分全攻略”(作者:龙仪),和下面的引文好像同出一辙,可是都是一个人写的。

==========引文:作者不详===========
一、如何在IE右键菜单中添加菜单项

    如果使用过Netants的朋友可能都知道,NetAnts在IE中添加了右键菜单功能,只要在页面的一个链接
或者图片上点击右键后在菜单中选择 Down By Netants 就可以调用Netants下载该链接指向的文件。在本
文中作者将介绍如何通过VB来实现这样的功能。
    要实现在IE右键菜单中添加菜单项的功能,要依次实现以下步骤:
    1、在注册表HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\MenuExt项下建立一个
新项,项的名称既出现在菜单中的标题,例如你想建立的菜单项标题为Add URL,则新建项的名称为
HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\MenuExt\Add URL
    2、将新建项的默认值设定为一个URL地址,当用户点击菜单项后,IE就会调用URL指向的页面中的脚
本,在目标页面的脚本中通过访问IE提供的external对象的menuArguments属性就可以访问IE中的页面中的
各种对象,例如链接、图片、表单域、被选中的文本等。详细的帮助请参考MSDN中关于InternetExplore object
的帮助,熟悉了Window对象才可以比较好的了解下面的脚本。
    对于如何实现自身的程序访问menuArguments的问题,我们可以仿效Netants的做法,首先建立一个
OLE Automation对象,然后在脚本中调用该对象,并将页面信息传递对象处理。下面我们需要首先通过VB建立
一个对象:
    打开VB,点击菜单: File | New ,在新建工程窗口中选择 ActiveX Dll 后按确定键建立一个ActiveX DLL
工程。然后在工程列表窗口中将Class1的Name属性更改为NetAPI,然后在NetAPI的代码窗口中添加如下代码:
Public Sub AddURL(URL As String, Info As String)
    MsgBox Info, vbOKOnly, URL
End Sub
    保存文件,将工程文件保存成NetSamp.vbp。然后在菜单中选择 File | Make NetSamp.dll建立对象动态
连接库。
    接下来是注册库,在Windows目录下找到Regsvr32.exe,然后将其拷贝到netsamp.dll所在目录下,将
netsamp.dll的的图标拖到Regsvr32.exe上放开,这时Regsvr32.exe就会弹出对话框提示对象注册成功。
    打开UltraEdit(或者其它文本编辑器)将下面的脚本代码输入编辑器中:

<script language="VBScript">

Sub OnContextMenu()
    On Error Resume Next
    set srcEvent = external.menuArguments.event
    set EventElement = external.menuArguments.document.elementFromPoint(srcEvent.clientX, srcEvent.clientY)
    set objNetSamp=CreateObject(")
        
        if srcEvent.type = "MenuExtAnchor" then
        set srcAnchor = EventElement
        do until TypeName(srcAnchor)="HTMLAnchorElement"
            set srcAnchor=srcAnchor.parentElement
        Loop
        Call objNetSamp.AddUrl(srcAnchor.href,srcAnchor.innerText)
    elseif srcEvent.type="MenuExtImage" then
        if TypeName(EventElement)="HTMLAreaElement" then
            Call objNetSamp.AddUrl(EventElement.href,EventElement.Alt)
        else
            set srcImage = EventElement
            set srcAnchor = srcImage.parentElement
            do until TypeName(srcAnchor)="HTMLAnchorElement"
                set srcAnchor=srcAnchor.parentElement
                if TypeName(srcAnchor)="Nothing" then
                    call objNetSamp.AddUrl(srcImage.href,srcImage.Alt)
                    exit sub
                end if
            Loop
            Call objNetSamp.AddUrl(srcAnchor.href, srcImage.Alt)
        end if
    elseif srcEvent.type="MenuExtUnknown" then
        set srcAnchor = EventElement
        do until TypeName(srcAnchor)="HTMLAnchorElement"
            set srcAnchor=srcAnchor.parentElement
            if TypeName(srcAnchor)="Nothing" then
                Call objNetSamp.AddUrl(EventElement.href,EventElement.innerText)
                exit sub
            end if
        Loop
        Call objNetSamp.AddUrl(srcAnchor.href,srcAnchor.innerText)
    end if
end Sub
    
call OnContextMenu()

</script>
   
    将文件保存到c:\program files 下,文件名为 geturl.htm
    从上面的脚本可以看到,首先访问external.menuArguments属性,获得用户单击鼠标右键位置的对象,然
后根据对象的不同获得它的URL,然后建立IEContextMenu.IEMenu1对象并调用该对象的AddURL方法。
    接下来是为右键菜单建立注册项,打开UltraEdit(或者其它文本编辑器)将下面的注册数据输入编辑器中
Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\MenuExt\&Get URL]
@="c:\\program files\\geturl.htm"
"Contexts"=dword:00000022

    将文件以reg为后缀保存,然后在Windows资源管理器中双击该文件将注册项添加到注册表中,然后打开
IE,右键点击一个连接或者图片,在弹出菜单中会出现一个Get URL项,点击该项,就会出现一个消息框显示
点击的连接或者图片的URL地址
    下面再介绍一下上面注册项中Contexts项的作用,通过该项可以制定菜单项在右键点击IE中的什么对象时
出现,它可以为以下值的“或”组合:
    对象        
    缺省         0x1
    图片         0x2
    控件         0x4
    表单域         0x8
    选择文本     0x10
    锚点         0x20
    例如上面我们希望菜单项在用户点击图片或者超链接时出现,那么我们就将值设置为dword:00000022,既在
点击图片 或者 锚点时出现菜单。一个锚点是页面中描述一个超链接的对象。如果不设置Contexts项,则菜单项
会在点击任何对象时出现在右键菜单中。
    通过上面的程序介绍我们可以看到IE鼠标右键菜单的工作过程。前面讲了,Netants就是使用这样的方法通过
在脚本中建立对象来实现调用NetAnts的,那么我们如果安装了NetAnts,就可以在程序中通过调用NetAnts对象来
调用NetAnts。
    建立一个新工程,点击菜单 Projects | References 项,选择其中的 AntAPI 1.0 Type Library 项,如果没有
点击Browser按钮,在文件列表框中选择网络蚂蚁目录下的NetAPI.dll后按打开键。在Form1中添加一个CommandButton
按钮,在Command1_Click事件中添加如下代码:
    Dim ant As New ANTAPILib.AntAPIObj
   
    ant.AddUrl "http://www., "", "http://www.
    点击command1,然后NetAnts就会运行并且将[url]http://www.[/url]添加到任务中。


二、如何添加任务栏按钮
    基本上来说,添加任务栏按钮只需要修改注册表就可以实现。通过修改注册表来实现添加按钮的步骤如下:

1、建立一个GUID。
2、打开注册表编辑器,转到HKEY_LOCAL_MACHINE\Software\Microsoft\Internet Explorer\Extensions部分,
在其下添加一个新的项,名称为 <Your GUID> ,Your GUID为你刚建立的GUID。
3、在注册表的 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\Extensions\<Your GUID>
下建立一个新的String类型的值,名称为HotIcon,该值定义当按钮具有热点时的图标,它的一般类型为:
包含图标的文件全路径名,图标索引,例如:
C:\PROGRA~1\KINGSOFT\XDICT\ieplugin.DLL,208
4、在注册表的 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\Extensions\<Your GUID>
下建立一个新的String类型的值,名称为Icon,该值定义当按钮的图标,它的一般类型为:
图标文件全路径名,图标索引
5、在注册表的 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\Extensions\<Your GUID>
下建立一个新的String类型的值,名称为ButtonText,该值定义按钮的ToolTip文本。
6、在注册表的 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\Extensions\<Your GUID>
下建立一个新的String类型的值,名称为Default Visible,该值定义按钮是否可见,如果是,则该值设定
为"Yes",否则设定为"No"。
7、在注册表的 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\Extensions\<Your GUID>
下建立一个新的String类型的值,名称为Clsid,将该值设定为{1FBA04EE-3024-11D2-8F1F-0000F87ABD16}
8、在注册表的 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\Extensions\<Your GUID>
下建立一个新的String类型的值,名称为Exec,该值定义点击按钮后运行的文件的全路径名称,例如:
c:\program files\samples\net.exe

例如NetAnts的按钮注册表项的内容就是象下面这样:

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\Extensions\{57E91B47-F40A-11D1-B792-444553540000}]
"CLSID"="{1FBA04EE-3024-11D2-8F1F-0000F87ABD16}"
"Default Visible"="Yes"
"HotIcon"="C:\\PROGRA~1\\NETANTS\\NetAnts.exe,1001"
"Icon"="C:\\PROGRA~1\\NETANTS\\NetAnts.exe,1000"
"Exec"="C:\\PROGRA~1\\NETANTS\\NetAnts.exe"
"ButtonText"="NetAnts"
"MenuText"="&NetAnts"
"MenuStatusBar"="Launch NetAnts"

    当点击NetAnts按钮时就会运行Netants。上面的注册表项中下面的两项:MenuText项添加一个菜单项到菜单
的“工具”栏中,MenuStatusBar项定义当光标移动到添加的菜单栏上后显示在状态栏中提示文本。此外在注册表的
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\Extensions\<Your GUID>下还可以添加一个名称为
MenuCustomize的字符串类型值,将该值设定为"Help"将使菜单项出现在“帮助”菜单栏中,否则出现在“工具”栏中。

    当然,我们不会满足于只是添加一个按钮,执行一个程序,我们希望能够获得当用户点击按钮时能够操控当前
页面,在注册表的 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\Extensions\<Your GUID>
下建立一个新的String类型的值,名称设定为一个htm文件的全路径名,同前面介绍的添加鼠标右键菜单一样,在点击
按钮后IE会调用该文件,在文件中通过设定VBScript访问external对象的menuArguments属性就可以获得浏览器中的
页面。例如我们将HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\Extensions\<Your GUID>\VBScript
的值设定为c:\program files\samp.htm,然后在c:\program files下建立一个名为Samp.htm的文件,在文件中输入以下
脚本内容:
    <script language="VBScript">

    Set objNetSamp=CreateObject("IEContextMenu.IEMenu1")
    userURL=external.menuArguments.location.href
    Call objNetSamp.AddUrl(userURL,"")

    </script>
    打开IE浏览器,点击
2007-12-28 07:10
快速回复:求助:帮帮我吧!头要成浆糊啦!
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.019939 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved