你好,欢迎来到电脑编程技巧与维护杂志社! 杂志社简介广告服务读者反馈编程社区  
合订本订阅
 
 
您的位置:杂志经典 / 网络与通信
扩展IE的快捷菜单(六)
 

  lpIDList = SHBrowseForFolder(tBrowseInfo)

 

         If (lpIDList) Then

            sBuffer = Space(MAX_PATH)

            SHGetPathFromIDList lpIDList, sBuffer

            sBuffer = Left(sBuffer, InStr(sBuffer, vbNullChar) - 1)

            SelectedDir = sBuffer

         End If

End Function

 

Private Sub CommandStart_Click() '开始保存选定内容

If TextName.Text = "" Then

TI = MsgBox("错误!必须指定保存文件的名字。", vbOKOnly, "文件名为空")

Else

TStart = "<HTML>" + vbCrLf + "<head>" + vbCrLf + "<title></title>" + vbCrLf + "</head>" + vbCrLf + "<body>" 'HTML网页文件的前半部分

TSEnd = "</body>" + vbCrLf + "</HTML>" 'HTML网页文件的后半部分

TSResult = TStart + SelectedHTML + TSEnd '将选定内容的HTML代码加入中间,构成最终的网页文件的HTML代码

'下面将HTML代码写入最终的HTML文件中

Open TextLocation.Text + "\" + TextName.Text + ".htm" For Output As #1

Print #1, TSResult

Close #1

TI = MsgBox("选定网页内容保存成功。", vbOKOnly, "提示")

Unload Me

End If

End Sub

 

Private Sub Form_Load()

TextLocation.Text = App.Path '启动时设置默认的保存位置为DLL所在文件夹

End Sub

 

(5)选择“File-Save Project”,以系统默认的名字保存整个工程(包括窗体、模块、类);然后选择“File-Make SaveHTML.DLL”,生成最终的ActiveX DLL文件。

(6)注册刚刚生成的ActiveX DLL。在系统文件夹Windows\System32中找到文件regsvr32.exe,将SaveHTML.DLL拖到其上方,即可出现注册成功的提示。

(7)用记事本等编辑软件建立内容如下的HTML文件SaveSelectedHTML.HTM,并将其保存到C:\

 

<SCRIPT LANGUAGE="JavaScript">

var HTMLObj;

HTMLObj =new ActiveXObject("SaveHTML.Saver");//建立COM对象

HTMLObj.SaveIt(window.external.menuArguments.document.selection.createRange().htmlText);//调用对象的接口,保存选定内容到本地文件

</SCRIPT>

 

    现在,打开一个网页,选定其中的一部分内容,然后单击鼠标右键,就会出现如上图2所示的对话框;选择好文件的保存位置,设定好文件的名字,然后单击“开始保存”,选定部分的内容就会保存在你的计算机里面了。

    以上程序用VB6.0JavaScript配合实现,在Windows 2000/XP环境下均验证通过。

 

三、程序需要改进的方面

由于程序只是保存了选定部分的HTML代码,因此网页中的图像、声音等对象的URL都是Internet上的地址。这样在IE脱机的情况下虽然文字可以正常显示,但是图像等对象却只能显示为占位符;只有在IE连接互联网的情况下才能正常显示图像等对象。为解决此问题,我们可以在脚本中通过window.external.menuArguments.document对象的images数组元素的src属性来获得图像的URL,通过window.external.menuArguments.document对象的embeds数组元素的src属性来获得其他多媒体对象的URL,然后将这些URL作为参数传递给COM对象,由COM对象完成这些文件的下载,并修改HTML代码中这些文件的Internet地址为本地地址。限于篇幅,在此只是提出实现思路,有兴趣的读者可以自己做一下。

  推荐精品文章

·2024年12月目录 
·2024年11月目录 
·2024年10月目录 
·2024年9月目录 
·2024年8月目录 
·2024年7月目录 
·2024年6月目录 
·2024年5月目录 
·2024年4月目录 
·2024年3月目录 
·2024年2月目录 
·2024年1月目录
·2023年12月目录
·2023年11月目录

  联系方式
TEL:010-82561037
Fax: 010-82561614
QQ: 100164630
Mail:gaojian@comprg.com.cn

  友情链接
 
Copyright 2001-2010, www.comprg.com.cn, All Rights Reserved
京ICP备14022230号-1,电话/传真:010-82561037 82561614 ,Mail:gaojian@comprg.com.cn
地址:北京市海淀区远大路20号宝蓝大厦E座704,邮编:100089