2015.1.25 Delphi打开网址链接的几种方法
1、使用shellapi打开系统中默认的浏览器
首先需在头部引用 shellapi单元即在uses中添加shellapi,这里我们需要知道有3个api函数可以运行可执行文件WinExec、ShellExecut和CreateProcess。
下面为 ShellExecute的标准用法
ShellExecute(Application.Handle, nil, 'http://www.baidu.com', nil, nil, SW_SHOWNORMAL);
从左往右开始,Application.Handle代表应用程序主窗口作为windows消息窗口的父窗口;第一个nil为执行默认“open”操作;'http://www.baidu.com'是要打开的网址,一般为打开应用程序的名称;第二个nil代表若上一个是个可执行文件则指定命令行参数,不然为nil;第三个nil用于指定默认目录;SW_SHOWNORMAL代表程序初始化窗口显示的方式,该方式为用原来大小和方式显示,并进行活动状态。
其实 ShellExecute(Application.Handle, nil, 'http://www.baidu.com', nil, nil, SW_SHOWNORMAL);是ShellExecut的特殊用法,当'http://www.baidu.com'这里不是应用程序名称时,是http:协议参数格式时,该函数将打开默认浏览器的兵连接到指定url地址,若用户安装多个浏览器,将另外根据注册表中设置打开哪个
2:用IE浏览器打开的3种方法:
方法1:ShellExecute(Application.Handle, 'open','Iexplore.exe','http://www.baidu.com',nil,SW_SHOWNORMAL);
方法2:
{uses SHDocVw;}
插入个按键,其按下函数如下:
var
IE : OleVariant;
begin
IE := CoInternetExplorer.Create;
IE.Visible := True;
IE.Navigate2('http://www.baidu.com');
end;
方法3:
{uses comobj;}
var
Ie:Variant
begin
Ie:=CreateOleObject('InternetExplorer.Application');
Ie.visible:=True;
Ie.left:=300;
Ie.top:=200;
Ie.height:=400;
Ie.width:=600;
Ie.menubar:=0; //隐藏菜单栏
Ie.toolbar:=0; //隐藏工具栏
Ie.addressbar:=0; //隐藏地址栏
//
Ie.statubar:=0; //不可调整大小
Ie.resizable:=0;
Ie.navigate(URL);
end;
begin
OpenInIe('http://www.baidu.com');
end;
3、用delphi中自带的WebBrowser控件
WebBrowser1.Navigate('http://www.baidu.com'); //WebBrowser1.Navigate('...'); //打开指定页面
4、用Delphi第三方控件EmbeddedWB
比Delphi自带的Webbrowser要强悍,其实就是在Webbrowser上的二次开发,附安装方法:
EmbeddedWB安装方法:
1.下载压缩包,飘易下载的是EmbeddedWB v14.67.0版本,下载地址:http://www.delphifans.com/SoftView/SoftView_2705.html。
2.解压整个压缩包到 libEmbeddedWB 下;
3.复制 libEmbeddedWB 下的Packages目录中的EmbeddedWebBrowser_D2007.dpk(因为飘易使用的是DELPHI2007)到Source目录里;
4.用Delphi7开发环境打开 EmbeddedWebBrowser_D2007.dpk 文件,按Optios按钮,作如下调整:
Directories/Conditionals标签Unit Output Dir=“D:Program FilesCodeGearRAD Studio5.0libEmbeddedWBSource”(具体路径自行决定);
5.按Compile, 再按Install;
6.不要保存变化了的dpk文件及压缩包;
7.在具体的编译工程时,需检查该源目录(D:Program FilesCodeGearRAD Studio5.0libEmbeddedWBSource)在 Delphi IDE 的 “Search Path” 路径里(Project -> Options -> irectories/Conditionals -> Search Path); 如果没有,添加这个源目录路径。否则,在使用该控件的时候,出现“File not found: ‘SHDocVw_EWB.dcu’” 错误。
8.可以正常使用了。
2015.1.25 Delphi打开网址链接的几种方法的更多相关文章
- Pyqt 打开外部链接的几种方法
Pyqt 触发一个事件,打开外部链接,我找到了这个方法,供大家参考 1. QDesktopServices 的openUrl 方法 QtGui.QDesktopServices.openUrl(QtC ...
- Delphi中打开网页连接的几种方法
https://blog.csdn.net/zisongjia/article/details/69398143 正好要用,做个记录.Mark下. 使用了第一种 uses shellapi proce ...
- 痞子衡嵌入式:MCUXpresso IDE下将应用程序RW段分散链接的几种方法
大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家介绍的是MCUXpresso IDE下将应用程序RW段分散链接的几种方法. 早期的 MCU 芯片,一般都会嵌入内部 Flash 和 RAM,并且 ...
- 打开cad文件的几种方法
转自原文 打开cad文件的几种方法 IWorkspaceFactory pWorkspaceFactory; IFeatureWorkspace pFeatureWorkspace; IFeature ...
- Response.Redirect 打开新窗体的两种方法
普通情况下,Response.Redirect 方法是在server端进行转向,因此,除非使用 Response.Write("<script>window.location=' ...
- delphi 导出到excel的7种方法
本文来自 爱好者8888 的CSDN 博客 ,全文地址请点击:https://blog.csdn.net/kpc2000/article/details/17066823?utm_source=cop ...
- Response.Redirect 打开新窗口的两种方法
一般情况下,Response.Redirect 方法是在服务器端进行转向,因此,除非使用 Response.Write("<script>window.location='htt ...
- 获取当前页面的所有链接的四种方法对比(python 爬虫)
''' 得到当前页面所有连接 ''' import requests import re from bs4 import BeautifulSoup from lxml import etree fr ...
- VS2005打开VS2008项目的2种方法
vs2008支持.net3.5,而vs2005支持.net2.0,所以使用vs2005打开vs2008的项目,要确定你的项目是.net2.0的. 下面介绍2种方法: 方法1:用记事本打开.sln文件, ...
随机推荐
- 从零开始,搭建博客系统MVC5+EF6搭建框架(4)下,前后台布局实现、发布博客以及展示。
一.博客系统进度回顾 目前已经完成了,前台展示,以及后台发布的功能,最近都在做这个,其实我在国庆的时候就可以弄完的,但是每天自己弄,突然最后国庆2天,连电脑都不想碰,所以就一直拖着,上一篇写了前端实现 ...
- Python_Day_03 list,dic,tuple方法总结
编程语言中最长见的几种数据类型,字典,列表,等.同样在Python中也有这些数据类型,只是有些表现形式不同.同时在Python中又多了一种叫做元组(tuple)的东西. list(列表) 初始化列表 ...
- sqlserver2008存储过程(比较两个日期大小和获取当前月最大天数的存储过程)
下面简单介绍sqlserver2008两个常用的存储过程 1.比较两个日期大小的存储过程 2.获取当前月份的最大天数的存储过程 1.创建比较两个日期大小的存储过程 1)创建比较两个日期大小的存储过程 ...
- WinFrom窗体始终置顶
调用WindowsAPI使窗体始终保持置顶效果,不被其他窗体遮盖: [DllImport("user32.dll", CharSet = CharSet.Auto)] privat ...
- GA算法-R语言实现
旅行商问题 北工商-经研143班共有30位同学,来自22个地区,我们希望在假期来一次说走就走的旅行,将所有同学的家乡走一遍.算起来,路费是一笔很大的花销,所以希望设计一个旅行方案,确保这一趟走下来的总 ...
- Atitit利用反射获取子类 集合 以及继承树
Atitit利用反射获取子类 集合 以及继承树 想从父类往下找子类的确是不可能的,要知道只要类不是final的话谁都有继承它的自由不需要事前通知父类. Eclipse实现不是重父类开始找而是重子类往回 ...
- CSS Hack解决浏览器IE部分属性兼容性问题
1.Css Hack 不同厂商的流览器或某浏览器的不同版本(如IE6-IE11,Firefox/Safari/Opera/Chrome等),对CSS的支持.解析不一样,导致在不同浏览器的环境中呈现出不 ...
- jquery自定义对话框alert、confirm和prompt
jQuery Alert Dialogs,又一个基于jQuery的提示框插件,主要包括Alert.Confirm.prompt这三种,还有一个高级范例,可以在提示框内嵌入HTML语言,可以自定义风格样 ...
- 网页端实现input数字输入框
实现input输入框只能输入数字的效果: <input type="text" name="" id="phoneNum" value ...
- Linux0.11内核--系统调用机制分析
[版权所有,转载请注明出处.出处:http://www.cnblogs.com/joey-hua/p/5570691.html ] Linux内核从启动到初始化也看了好些个源码文件了,这次看到kern ...