软件频道>设计工具系统开发安全办公陶吧IT教育Vista频道|产品中心 群乐 软件下载 Vista群乐 了解WebSphere
您现在的位置: 天极网 > 软件频道 > 用Visual C# 2005创建快捷方式
-->
全文

用Visual C# 2005创建快捷方式

2005-09-02 08:36作者:Allen Lee's Magic出处:博客园责任编辑:方舟
天极软件专题专区精选     到天极软件“读编交流区”畅所欲言
Google专区 POPO专区 QQ专区 QQ挂机 了解Web2.0
Flash MX 视频教程 Photoshop视频教程 网页设计视频教程 照片处理数字暗房
PPT动画演示教程 Excel动画教程集 Word动画演示教程 Windows Vista专区
特洛伊木马专区 黑客知识教程专区 防火墙应用专区 注册表应用专区
Windows API开发专区 网络编程专区 VB数据库编程专区 图像处理与多媒体编程

  创建快捷方式对于绝大多数 Windows 用户来说都是小菜一碟了,然而,这项工作却为程序员带来不少麻烦。.NET 没有提供简便直接的创建快捷方式的方法,那么在 .NET 中我们如何为应用程序创建快捷方式呢?

  1. 快捷方式文件

  快捷方式实质上是一个扩展名为 .LNK 的文件。右击一个快捷方式文件并选择属性,跳到快捷方式选项卡,如图1所示:

图2

  你可以看到一个快捷方式包含如下数据:

  ·快捷方式的名字

  ·快捷方式所指向的目标所在的位置

  ·快捷方式所指向的目标的工作目录

  ·激活该快捷方式的热键

  ·快捷方式所指向的目标运行时的窗口风格(普通、最大化和最小化)

  ·该快捷方式的描述性文字

  ·快捷方式的图标所在的位置

  2. 使用 WSH 创建快捷方式

  2.1 添加 WSH 的引用

  这里我使用 Visual C# 2005 Express Edition Beta 2 来开发的,添加引用的方法非常简单,右击你的项目并选择添加引用,选择 COM 选项卡并选择 Windows Script Host Object Model,如图2所示:

图3

  2.2 创建你的快捷方式

  创建一个快捷方式的完整代码如下:

// Code #01

using System;
using IWshRuntimeLibrary;

class Program
{
 static void Main(string[] args)
 {
  WshShell shell = new WshShell();
  IWshShortcut shortcut = (IWshShortcut)shell.CreateShortcut(
    Environment.GetFolderPath(Environment.SpecialFolder.DesktopDirectory) +
    "\\" + "Allen’s Application.lnk"
  );
  shortcut.TargetPath = System.Reflection.Assembly.GetExecutingAssembly().Location;
  shortcut.WorkingDirectory = System.Environment.CurrentDirectory;
  shortcut.WindowStyle = 1;
  shortcut.Description = "Launch Allen’s Application";
  shortcut.IconLocation = System.Environment.SystemDirectory + "\\" + "shell32.dll, 165";
  shortcut.Save();
 }
}

  首先,我们创建一个 WshShell 的实例对象,接着通过该对象的 CreateShortcut 方法来创建 IWshShortcut 接口的实例对象,传递给 CreateShortcut 方法的参数是将要创建的快捷方式的完整路径(包括该快捷方式的名字)。接下来,我们就要设置 IWshShortcut 实例对象的相关属性值了。

  2.3 设置快捷方式的属性

  2.3.1 TargetPath

  该属性仅用于设置或者读取快捷方式的目标所在的位置。Code #01 中,将要创建的快捷方式指向本应用程序。

  2.3.2 WorkingDirectory

  该属性指定应用程序的工作目录,当用户没有指定一个具体的目录时,快捷方式的目标应用程序将使用该属性所指定的目录来装载或保存文件。

  2.3.3 WindowStyle

  该属性指定快捷方式的目标应用程序的窗口为普通(原始)状态、最小化或者最大化。对比图1中 Run 下拉菜单的项,该属性的值及其意义如下:

Value Meaning
1 Normal window
3 Maximized
7 Minimized

  2.3.4 Description

  该属性设置用于设置或者读取快捷方式的附加说明。

  2.3.5 IconLocation

  该属性用于指定快捷方式的图表的所在位置,它的值包含一个完整的路径和一个索引值。Code #01 中,快捷方式的图标被设定为系统文件夹中的 Shell32.dll 文件所包含的第165个图标。

  2.4 生成快捷方式

  CreateShortcut 仅仅创建一个 IWshShortcut 的实例对象,它不会为你生成任何快捷方式,当一切就绪后,你必须调用 IWshShortcut.Save 方法才能生成快捷方式文件。

  3. 活用快捷方式简化操作

  想象一下你的应用程序支持命令行参数组合运行,例如:

App /out:output.txt /sortby:date /desc

  而你又希望只需要轻轻按下 CTRL+ALT+F11 就可以直接启动这项功能,这时你就需要用到 IWshShortcut 的 Arguments 和 Hotkey 两个属性了:

// Code #02

shortcut.Arguments = "/out:output.txt /sortby:date /desc";
shortcut.Hotkey = "CTRL+ALT+F11";

  注意:Hotkey 属性的值里面不能包含空格。

  你可以在应用程序里面像平常那样处理命令行参数:

// Code #03

class Program
{
 static void Main(string[] args)
 {
  foreach (string arg in args)
  {
   Console.WriteLine(arg);
  }
 }
}

// Output:
//
// /out:output.txt
// /sortby:date
// /desc

  现在,你把这个快捷方式放到桌面,每当你需要运行的时候,轻轻的按下 CTRL+ALT+F11 就行了,Cool ~ ~ ~

相关搜索:
相关文章及软件
关注此文读者还看过
热门关注
特别推荐
近期热点
文章排行
本周
本月
最近更新
关于我们|网站律师|天极服务|投稿指南|电子杂志|RSS订阅|加入我们|网站地图
TMG
Copyright (C) 1999-2008 Chinabyte.com, All Rights Reserved 版权所有 天极网络
商务联系、网站内容、合作建议:010-82657868
版权声明 在线提交意见反馈 Powered by 天极内容管理平台CMS4i
经营性网站备案信息 网警备案 中国网站排名
天极传媒:天极网|比特网|IT专家网|IT商网|52PK游戏网|IT分众-网站地图