asp.net mvc在网页上实现客户点击时创建到此网站的桌面快捷键功能
2017-03-10 17:00
645 查看
今日老板要求实现在网站上,当用户点击时,可以在用户电脑的桌面上创建一到网站快捷方式的快捷键。
在网上查阅相关资料,一种方法是javascript实现,但是要用到activex控件,这IE上才有,用IE的貌似很少了吧,而且activex控件没几个人愿意开啊。放弃。
其他的说的asp.net创建快捷方式的方法,看着感觉都是要在桌面上创建一文件,这软件才有这权限吧。在网页上谁肯给你这权限。于是也放弃了。
最后感觉没招了,就问老板,在哪来看的,有这种NB功能。原来是自己在桌面创建个到自己网站的快捷方式,然后做个下载链接,让用户下载到桌面。这样来实现。这一想,还
真可以。于是就来实现。仔细研究了下,在桌面创建了一个快捷方式,然后用editplus打开后,看到有如下代码:
[{000214A0-0000-0000-C000-000000000046}]
Prop3=19,2
[InternetShortcut]
URL=http://jiaogui.jinrimianshi.com/
IDList=
并且看到此文件的后缀名为.url
把这个文件放到网站上,然后做了个下载链接。提示404错误。理解,因为url后缀网站不支持。在网站的MIME类型中添加.url,然后MIME类型设置为:application/octet-stream。下载下来,可以使用,只是图标是系统图标,不是网站的logo标志。由于以前做过excel文件下载,知道mvc有专业支持文件下载的一类action。因此打算用那种实现以下,在网上找,但是没有找到MVC的实现方法,自己写了个,代码如下:
前台下载链接:
测试通过
在网上查阅相关资料,一种方法是javascript实现,但是要用到activex控件,这IE上才有,用IE的貌似很少了吧,而且activex控件没几个人愿意开啊。放弃。
其他的说的asp.net创建快捷方式的方法,看着感觉都是要在桌面上创建一文件,这软件才有这权限吧。在网页上谁肯给你这权限。于是也放弃了。
最后感觉没招了,就问老板,在哪来看的,有这种NB功能。原来是自己在桌面创建个到自己网站的快捷方式,然后做个下载链接,让用户下载到桌面。这样来实现。这一想,还
真可以。于是就来实现。仔细研究了下,在桌面创建了一个快捷方式,然后用editplus打开后,看到有如下代码:
[{000214A0-0000-0000-C000-000000000046}]
Prop3=19,2
[InternetShortcut]
URL=http://jiaogui.jinrimianshi.com/
IDList=
并且看到此文件的后缀名为.url
把这个文件放到网站上,然后做了个下载链接。提示404错误。理解,因为url后缀网站不支持。在网站的MIME类型中添加.url,然后MIME类型设置为:application/octet-stream。下载下来,可以使用,只是图标是系统图标,不是网站的logo标志。由于以前做过excel文件下载,知道mvc有专业支持文件下载的一类action。因此打算用那种实现以下,在网上找,但是没有找到MVC的实现方法,自己写了个,代码如下:
public FileContentResult ShortCut() { string HostAddr = "http://jiaogui.jinrimianshi.com"; string icoPath = "http://jiaogui.jinrimianshi.com/Favicon.ico";//修改此处更改url图标或者图标路径,当前路径为根目录,只用修改相对路径,图标的完整路径由下方会自动生成 StringBuilder sb = new StringBuilder(); sb.AppendLine("[InternetShortcut]"); sb.AppendLine("URL=" + HostAddr); //快捷方式的外部链接 sb.AppendLine("IDList= "); sb.AppendLine("IconFile=" + icoPath); //图标文件 sb.AppendLine("IconIndex=1 "); sb.AppendLine("[{000214A0-0000-0000-C000-000000000046}]"); sb.AppendLine("Prop3=19,2 "); //第一种:使用FileContentResult byte[] fileContents = Encoding.Default.GetBytes(sb.ToString()); string fileName = System.Web.HttpUtility.UrlEncode("交规网站", System.Text.Encoding.UTF8) + ".url"; return File(fileContents, "APPLICATION/OCTET-STREAM", fileName); }
前台下载链接:
<a href="/home/shortcut" class="btn btn-default" >下载快捷方式</a>
测试通过
相关文章推荐
- asp.net mvc导出excel文件先保存到服务器某个目录,然后再导出到客户端供客户下载功能的实现
- ASP.NET MVC实现网站验证码功能(中)
- ASP.NET MVC实现网站验证码功能(下)
- ASP.NET MVC实现网站验证码功能
- 演练:ASP.NET控件实现 创建具有成员资格和用户登录功能的网站
- ASP.NET MVC实现网站验证码功能
- ASP.NET MVC实现网站验证码功能
- ASP.NET MVC实现网站验证码功能(上)
- 通过Asp.Net MVC的区域功能实现将多个MVC项目部署到一个站点
- 使用ASP.NET MVC框架创建电子商务网站
- AspnetMvc实现无刷新省市联动功能
- ASP.NET MVC 自定义过滤属性实现Enterprise的log功能
- 集成轻量级的IIS实现打包Asp.Net网站生成exe方便快捷的进行客户演示
- 通过Asp.Net MVC的区域功能实现将多个MVC项目部署
- Asp.net MVC 2 网站轻松实现多语言支持
- ASP网站远程客户实现EXCEL打印功能
- 在 Asp.NET MVC 中使用 SignalR 实现推送功能
- Asp.Net MVC3 简单入门第一季(五) 通过Asp.Net MVC的区域功能实现将多个MVC项目部署到一个站点
- 在asp.net网页中实现tabPage功能(下)
- c# 实现网页上用户自动登陆|asp.net 模拟网站登录