您的位置:首页 > 编程语言 > VB

CorelDRAW VBA - 调用浏览器打开指定网址(URL)

2018-01-10 22:09 218 查看


目的

这篇教程将教会你使用 CorelDRAW VBA代码来调用默认浏览器打开指定的网址(URL),并可同时指定打开后的浏览器的焦点模式。

注意:在32位和64位的Windows系统中,具体调用的方法有所不同。请看详细代码:

一、声明系统函数

如果你使用的是32位系统,则如下声明:

Private Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" (ByVal hwnd As Long, ByVal lpOperation As String, ByVal lpFile As String, ByVal lpParameters As String, ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long


如果你使用的是64位系统,则需要在函数声明前加一个
PtrSafe
关键字来修饰 Function,因为64位系统调用
shell32.dll
可能存在某些问题,不保证绝对的安全。

加入
PtrSafe
修饰后,代码如下:

Private Declare PtrSafe Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" (ByVal hwnd As Long, ByVal lpOperation As String, ByVal lpFile As String, ByVal lpParameters As String, ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long


二、编写函数

'=============================================================
' 打开网址函数
' @url: 要打开的网址,例如:www.cdrvba.com
'=============================================================
Sub openUrl(url As String)
ShellExecute 0&, vbNullString, url, vbNullString, vbNullString, vbNormalFocus
End Sub


该函数最后一个参数用于指定浏览器打指定网址后,要以怎样的模式来显示,默认是
vbNormalFocus
,即普通焦点。还可以指定为其他模式,具体如下:

vbNormalFocus:普通焦点模式

vbMinimizedNoFocus:最小化模式,没有焦点

vbMaximizedFocus:最大化模式,有焦点

vbHide:隐藏

三、调用函数

声明函数一般放在模块或者窗体代码的顶部,整体代码如下:

' 函数声明(64位系统)
Private Declare PtrSafe Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" (ByVal hwnd As Long, ByVal lpOperation As String, ByVal lpFile As String, ByVal lpParameters As String, ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long

'============================================================= ' 打开网址函数 ' @url: 要打开的网址,例如:www.cdrvba.com '============================================================= Sub openUrl(url As String) ShellExecute 0&, vbNullString, url, vbNullString, vbNullString, vbNormalFocus End Sub

' 测试函数调用
Sub test()
openUrl "www.cdrvba.com"
End Sub


原创声明:本文首发于个人CorelDRAW VBA博客,请尊重文章版权。

转载请注明原文链接:http://www.cdrvba.com/coreldraw-vba-open-url-in-browser/



内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: