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文件, ...
随机推荐
- 基于C#的MongoDB数据库开发应用(4)--Redis的安装及使用
在前面介绍了三篇关于MongoDB数据库的开发使用文章,严格来讲这个不能归类于MongoDB数据库开发,不过Redis又有着和MongoDB数据库非常密切的关系,它们两者很接近,Redis主要是内存中 ...
- [SL] Silverlight + WCF Demo项目
I:项目描述:利用 Silverlight+WCF 技术,模拟资源管理器(如图1)功能,通过地址栏输入本地文件夹路径,然后将解析出来的该目录下所有文件(夹)存储到数据库中,然后再加载到界面上显示出来: ...
- jQuery页面滚动右侧浮动导航切换
体验效果:http://hovertree.com/texiao/jquery/49/ 效果图: 代码如下: <!DOCTYPE html> <html> <head&g ...
- js动态的把左边列表添加到右边,可上下移动。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- hibernate中表关系为多对多时,如何只删除中间表数据
先说问题:我遇到的问题是,在用户和用户组对象关系中他们是多对多关系.所以中间是成在一张中间表的.经理要求当逻辑删除对象数据时,必须删除中间表中的数据. hibernate是面向对象操作sql语句的,如 ...
- 初识Java
Java是一种简单的.面向对象的.分布式的.解释的.安全的.可移植的.性能优异的多线程语言.它以极强的安全性.平台无关性.硬件结构无关性.语言简洁.面向对象的特点,在网络编程语言中占据了无可比拟的优势 ...
- java移位运算符
http://www.iteye.com/topic/766461 这篇博客讲的很清楚
- GJM :动作手游实时PVP 帧同步(客户端)[转载]
原帖地址:http://gad.qq.com/article/detail/7171195 原文作者:唐声福 原帖备注:版权所有,禁止匿名转载:禁止商业使用:禁止个人使用. 1.概述 1.1.基于U ...
- [转]看部电影,透透彻彻理解IoC(你没有理由再迷惑!)
之前对依赖注入的概念一直感到模糊,直到看了这篇文章:http://www.iteye.com/topic/1122835 引述: IoC(控制反转:Inverse of Control)是Spring ...
- jquery-懒加载技术(简称lazyload)
第一:lazyLoad简介及作用 网站性能优化的插件,提高用户体验. 页面如果有很多图片的时候,当你滚动到相应的行时,当前行的图片才即时加载的,这样子的话页面在打开只加可视区域的图片,而其它隐藏的图片 ...