如何在MS Access VBA中打开localhost本地服务地址
问题原因
你之前的两种写法存在两处核心错误:
- 第一种错误添加了
www.前缀,localhost是本地环回的保留主机名,无需加www.前缀 - 第二种缺少HTTP/HTTPS协议头,
Application.FollowHyperlink需要明确的协议标识才能识别为网页地址,否则会被判定为本地文件路径导致调用失败
正确实现方式
基础写法(直接调用FollowHyperlink)
根据你本地站点实际使用的协议选择对应代码即可:
' 本地站点用HTTP的写法 Application.FollowHyperlink "http://localhost/Bowls/Bowlshome"
' 本地站点用HTTPS且配置了有效SSL证书的写法 Application.FollowHyperlink "https://localhost/Bowls/Bowlshome"
兼容写法(规避Access超链接安全限制)
如果上面的写法触发安全提示或者权限拦截,可以用Shell调用系统默认浏览器打开:
Dim shellObj As Object Set shellObj = CreateObject("Shell.Application") ' 替换为对应协议的地址即可 shellObj.ShellExecute "http://localhost/Bowls/Bowlshome" Set shellObj = Nothing
额外注意
如果你的本地Web服务没有使用默认的80(HTTP)/443(HTTPS)端口,需要在localhost后补充端口号,比如服务跑在8080端口时地址写为http://localhost:8080/Bowls/Bowlshome,同时要确保本地Web服务已正常启动,对应路径可以正常访问。
内容的提问来源于stack exchange,提问作者Roy Shea
相关产品推荐
相关产品推荐

