百度链接:http://jingyan.baidu.com/article/0aa223758329b688cd0d644f.html
应当知道,平时使用的记事本是没有快捷方式的,但是我们自己可以给它进行一个创建。
从开始——》附件——》找到记事本——》(右键属性)——》快捷方式(在中间有个快捷键的文本框,默认是无)
现在你可以自己安排一个你自己喜欢的快捷键就可以了。
在VS.Net中开发的C/S架构程序制作桌面快捷方式、开始菜单快捷方式等都非常方便,无需编写任何代码!(博友GUO Xingwang提供的两个链接地址是B/S架构程序的创建桌面快捷方式,而楼主是将问题归类到Windows Forms中,我想应该是C/S架构程序)
在回答之前不知道楼主是否使用过VS.Net的安装工程?
1、当您的应用程序开发完成准备制作安装包时,需要在解决方案中增加一工程——安装部署工程。在VS.Net2005中具体过程是:右击您的解决方案——>在右键菜单中指向“添加”——>在弹出的菜单中选择第一行“新建项目”——>在弹出的窗口左侧中展开树的根节点“其他项目类型”——>选中根节点下的子节点“安装和部署”——>此时在右侧选择“安装项目”,并在下方输入要保存本工程的文件路径(“位置”)和工程名称(“名称”)——>点击“确定”。此时在解决方案中就增加了一个“安装部署工程”。
2、在安装部署工程中添加您的“主输出”(即:开发工程中的exe文件或dll文件,主输出只能添加一个,那要看您的工程了,具体问题具体情况)。假如原先开发的工程编译输出后是“exe文件”,以此为例操作方法是:右击安装部署工程——>在右键菜单中指向“视图”——>在弹出的菜单中选择第一行“文件系统”——>在随后打开的窗口中右击左侧的“应用程序文件夹”——>在右键菜单中指向“添加”——>在弹出的菜单中选择第二行“项目输出”——>此时您原先开发的工程名称(即要制作安装包的工程名)已经在弹出窗口中的下拉控件中了,检验是否正确——>选择下拉框下方列表中的“主输出”——>点击“确定”。此时主输出就被添加到安装部署工程中了。
3、添加好了“主输出”后,就可以为主输出创建桌面、开始菜单等快捷方式了。接着上面的例子操作如下分类:
A、为开始菜单的程序中增加快捷方式:还是上面的打开的窗口中的左侧在“应用程序文件夹”下方的“用户的“程序”菜单”左键单击此项——>在右侧窗口空白处点击鼠标右键——>在弹出的菜单中选择第二行“创建新的快捷方式”——>在随后的对话窗口中选择“应用程序文件夹”——>选择“主输出来自***(活动)”(***表示您的开发原工程名称)——>点击“确定”——>给快捷方式输入一个合适的名字。此时当用户使用此安装包安装时就会在开始菜单的程序中有了快捷方式。
B、为桌面增加快捷方式:过程与A相同(不同之处是A中的第一步,即【还是上面的打开的窗口中的左侧在“应用程序文件夹”下方的“用户桌面”左键单击此项】,请对比A看哪里的叙述与此不同)
祝您成功,其实您的问题我看并不是如何创建快捷方式的问题,而是如何打包您的Windows应用程序的问题!
百度链接:http://jingyan.baidu.com/article/0aa223758329b688cd0d644f.html
应当知道,平时使用的记事本是没有快捷方式的,但是我们自己可以给它进行一个创建。
从开始——》附件——》找到记事本——》(右键属性)——》快捷方式(在中间有个快捷键的文本框,默认是无)
现在你可以自己安排一个你自己喜欢的快捷键就可以了。
转载于:https://www.cnblogs.com/tianxia2s/p/4506644.html
一:用WSH直接创建快捷方式:
1.首先要添加引用.
添加引用的方法非常简单,右击你的项目并选择添加引用,
选择 COM 选项卡并选择 Windows Script Host Object Model
2.引用命名空间
using System.Runtime.InteropServices;//互动服务
using IWshRuntimeLibrary;
3.创建快捷方式(注释中有详细说明)
//实例化WshShell对象
WshShell shell = new WshShell();
//通过该对象的 CreateShortcut 方法来创建 IWshShortcut 接口的实例对象
IWshShortcut shortcut = (IWshShortcut)shell.CreateShortcut(
Environment.GetFolderPath(Environment.SpecialFolder.Desktop) + "//ShortCut.lnk");
//设置快捷方式的目标所在的位置(源程序完整路径)
shortcut.TargetPath = System.Reflection.Assembly.GetExecutingAssembly().Location;
//应用程序的工作目录
//当用户没有指定一个具体的目录时,快捷方式的目标应用程序将使用该属性所指定的目录来装载或保存文件。
shortcut.WorkingDirectory = System.Environment.CurrentDirectory;
//目标应用程序窗口类型(1.Normal window普通窗口,3.Maximized最大化窗口,7.Minimized最小化)
shortcut.WindowStyle = 1;
//快捷方式的描述
shortcut.Description = "ChinaDforce YanMang";
//可以自定义快捷方式图标.(如果不设置,则将默认源文件图标.)
//shortcut.IconLocation = System.Environment.SystemDirectory + "\\" + "shell32.dll, 165";
//设置应用程序的启动参数(如果应用程序支持的话)
//shortcut.Arguments = "/myword /d4s";
//设置快捷键(如果有必要的话.)
//shortcut.Hotkey = "CTRL+ALT+D";
//保存快捷方式
shortcut.Save();
缺点:
用这种方法写的程序,必须有Interop.IWshRuntimeLibrary.dll跟着,
才能正确执行.对于创建"单文件程序"的人来讲,麻烦了吧.
二:通过创建VBS,并执行,创建方式:
1.首先看一下VBS创建快捷方式的代码:
'VBS实例
set WshShell = WScript.CreateObject("WScript.Shell")
strDesktop = WshShell.SpecialFolders("Desktop") '获得桌面目录
set oShellLink = WshShell.CreateShortcut(strDesktop & "\D4S.lnk") '快捷方式存放目录及名称
oShellLink.TargetPath = "X:\Program Files\XXX.exe" '指向的可执行文件
oShellLink.WindowStyle = 1 '运行方式(窗体打开的方式)
oShellLink.Hotkey = "CTRL+SHIFT+F" '快捷键
oShellLink.IconLocation = "X:\Program Files\XXX.exe, 0" '图标(同样可不指定)
oShellLink.Description = "ChinaDforce YanMang" '备注信息
oShellLink.WorkingDirectory = "X:\Program Files\" '起始目录
oShellLink.Save '保存快捷方式
2.那我们如何在C#中使用VBS呢?方法我想应该有很多吧!
在这里介绍一种"最笨"但最直接的方法.
思路如下:
>>> 生成VBS全部代码文本;
>>> 写入临时文件"temp.vbs";
>>> 用Process打开这个文件执行.
3.下面是C#中实现的关键代码:
//生成VBS代码
string vbs = this.CreateVBS();
//以文件形式写入临时文件夹
this.WriteToTemp(vbs);
//调用Process执行
this.RunProcess();
//生成VBS代码
string vbs = this.CreateVBS();
//以文件形式写入临时文件夹
this.WriteToTemp(vbs);
//调用Process执行
this.RunProcess();
///
/// 创建VBS代码
///
///
private string CreateVBS()
{
string vbs = string.Empty;
vbs += ("set WshShell = WScript.CreateObject(\"WScript.Shell\")\r\n");
vbs += ("strDesktop = WshShell.SpecialFolders(\"Desktop\")\r\n");
vbs += ("set oShellLink = WshShell.CreateShortcut(strDesktop & \"\\D4S.lnk\")\r\n");
vbs += ("oShellLink.TargetPath = \"" + System.Reflection.Assembly.GetExecutingAssembly().Location + "\"\r\n");
vbs += ("oShellLink.WindowStyle = 1\r\n");
vbs += ("oShellLink.Description = \"ChinaDforce YanMang\"\r\n");
vbs += ("oShellLink.WorkingDirectory = \"" + System.Environment.CurrentDirectory + "\"\r\n");
vbs += ("oShellLink.Save");
return vbs;
}
///
/// 写入临时文件
///
///
private void WriteToTemp(string vbs)
{
if (!string.IsNullOrEmpty(vbs))
{
//临时文件
string tempFile = Environment.GetFolderPath(Environment.SpecialFolder.Templates) + "[url=file://\\temp.vbs]\\temp.vbs[/url]";
//写入文件
FileStream fs = new FileStream(tempFile, FileMode.Create, FileAccess.Write);
try
{
//这里必须用UnicodeEncoding. 因为用UTF-8或ASCII会造成VBS乱码
System.Text.UnicodeEncoding uni = new UnicodeEncoding();
byte[] b = uni.GetBytes(vbs);
fs.Write(b, 0, b.Length);
fs.Flush();
fs.Close();
}
catch (Exception ex)
{
MessageBox.Show(ex.Message, "写入临时文件时出现错误", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
finally
{
//释放资源
fs.Dispose();
}
}
}
///
/// 执行VBS中的代码
///
private void RunProcess()
{
string tempFile = Environment.GetFolderPath(Environment.SpecialFolder.Templates) + "\\temp.vbs";
if (File.Exists(tempFile))
{
//执行VBS
Process.Start(tempFile);
}
}
private void btn退出_Click(object sender, EventArgs e)
{
Application.Exit();
//清除临时文件
File.Delete(Environment.GetFolderPath(Environment.SpecialFolder.Templates) + "\\temp.vbs");
}
强调一点:
在写入VBS文件时,一定要用UnicodeEncoding.
因为UTF-8和ASCII码,都会导致VBS生成快捷方式的时候,
产生乱码,而导致快捷方式错误.
本人原来使用UTF8Encoding的时候,不放在包含中文的路径中还可以,但一出现中文就挂了!
困扰我好半天,才发现的这个细节.
2005-08-22
Win XP任务栏的“快速启动”栏中的“显示桌面”的快捷方式被我删了请问如何恢复?
请按照下列步骤,在“快速启动”工具栏上重新创建“显示桌面”图标:
1。 使用任何文本编辑器(如“记事本”),创建包含下列行的文件:
[Shell]
Command=2
IconFile=explorer。 exe,3
[Taskbar]
Command=ToggleDesktop
2。 在 Windows\System 或 Winnt\System32 文件夹中,以 Show Desktop。 scf 名称保存新文件。注意,“记事本”可能会自动将 。txt 作为文件扩展名。如果“记事本”添加了该扩展名,请将其删除。如果将文件命名为 Show Desktop。scf。txt,则这些步骤无...全部
请按照下列步骤,在“快速启动”工具栏上重新创建“显示桌面”图标:
1。 使用任何文本编辑器(如“记事本”),创建包含下列行的文件:
[Shell]
Command=2
IconFile=explorer。
exe,3
[Taskbar]
Command=ToggleDesktop
2。 在 Windows\System 或 Winnt\System32 文件夹中,以 Show Desktop。
scf 名称保存新文件。注意,“记事本”可能会自动将 。txt 作为文件扩展名。如果“记事本”添加了该扩展名,请将其删除。如果将文件命名为 Show Desktop。scf。txt,则这些步骤无效。
3。 退出“记事本”。
4。 使用 Windows 资源管理器或“我的电脑”,右键单击“Show Desktop 。scf”文件,然后单击“创建快捷方式”。
5。 将新的快捷方式复制到相应的文件夹中。
在 Microsoft Windows 95 或 在 Microsoft Windows XP 中,将该快捷方式复制到以下文件夹中:
WINDOWS\System32\Config\Systemprofile\Application Data\Microsoft\Internet Explorer\Quick Launch
6。
重命名桌面快捷方式。
此时,“显示桌面”图标就会自动出现在“快速启动”工具栏上
或者直接到WINDOWS\System32\Config\Systemprofile\Application Data\Microsoft\Internet Explorer\Quick Launch 下去复制即可。收起