|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
您现在的位置: ChinaBeta.cn 中文IT资讯 >> 网盟学院 >> 编程类 >> 其它编程程序 >> 网管技术正文
推荐网管技术[多图]即将发布的Microsoft Of…推荐网管技术Asp生成静态网页
推荐网管技术让我穿过那道"墙"! 畅游网络应…推荐网管技术文件夹变身磁盘 查看共享有新招…
推荐网管技术防患于未然!终截者抗病毒软件…推荐网管技术主动防御!瑞星杀毒2008抢先评…
推荐网管技术玩转虚拟光驱:DAEMON TOOLS P…推荐网管技术速度超快 Discuz! 6.0.0试用手…
推荐网管技术当设计遇上PC:LG XPION A10图…推荐网管技术奇虎举证:各杀毒软件均报CNNIC…
推荐网管技术Google Earth 4.2加入繁体中文…推荐网管技术Photoshop CS3:蔚蓝梦幻风格婚…
推荐网管技术专业防护!瑞星防火墙2008测试…推荐网管技术挂载RAR文件 从认识到爱上WinM…
推荐网管技术让你冲浪随心所欲 如何访问被封…推荐网管技术轻装上阵!江民杀毒软件2008速…
推荐网管技术VMware Fusion苹果版全程图解(…推荐网管技术VMware Fusion苹果版全程图解(…
推荐网管技术从菜鸟出发!征服高清详细评测全…推荐网管技术VS2008和ASP.NET 3.5使用之初体…
推荐网管技术迅雷 快车 电驴 eMule下载飚速…推荐网管技术实战967种木马 木马清道夫2007…
推荐网管技术[多图]Ubuntu 7.04 初体验推荐网管技术东风吹战鼓擂 下载软件你选谁?
推荐网管技术若隐若现 Windows XP DirectX …推荐网管技术GPRS上网全攻略
推荐网管技术主流杀毒软件Vista兼容性横评推荐网管技术基于IRF的网络管理和业务管理解…
用Delphi创建快捷方式的方法
Www.ChinaBeta.Cn 更新时间:2008-5-6

【ChinaBeta.Cn 网盟学院】

由于我们是通过OLE Interface实现此功能的,因此在程序单元的uses语句中要加入ComObj、ActiveX和ShlObj这三个单元。

在单元的声明部分加入以下代码:

procedure CreateLink(ProgramPath, ProgramArg, LinkPath, Descr: String);

其中,ProgramPath是快捷方式的目标文件的全路径(包括文件名和路径);

ProgramArg是目标文件的参数;LinkPath是快捷方式的全路径;Descr是对此快捷方式的描述。

在单元的实现部分加入以下代码:

procedure CreateLink(ProgramPath, ProgramArg, LinkPath, Descr: String); 

var

AnObj: IUnknown;

ShellLink: IShellLink;

AFile: IPersistFile;

FileName: WideString;

begin

if UpperCase(ExtractFileExt(LinkPath)) 〈〉 ′.LNK′ then //检查扩展名是否正确

begin

raise Exception.Create(′快捷方式的扩展名必须是 ′′LNK′′!′);/

/若不是则产生异常

end;

try

OleInitialize(nil);//初始化OLE库,在使用OLE函数前必须调用初始化

AnObj := CreateComObject(CLSID—ShellLink);//根据给定的ClassID生成

一个COM对象,此处是快捷方式

ShellLink := AnObj as IShellLink;//强制转换为快捷方式接口

AFile := AnObj as IPersistFile;//强制转换为文件接口

//设置快捷方式属性,此处只设置了几个常用的属性

ShellLink.SetPath(PChar(ProgramPath)); // 快捷方式的目标文件,一般

为可执行文件

ShellLink.SetArguments(PChar(ProgramArg));// 目标文件参数

ShellLink.SetWorkingDirectory(PChar(ExtractFilePath(ProgramPath)))

;//目标文件的工作目录

ShellLink.SetDescription(PChar(Descr));// 对目标文件的描述

FileName := LinkPath;//把文件名转换为WideString类型

AFile.Save(PWChar(FileName), False);//保存快捷方式

finally

OleUninitialize;//关闭OLE库,此函数必须与OleInitialize成对调用

end;

end;

以上编写了一个通用函数,下面我们用它来创建快捷方式。在窗体中放置一

个按钮,双击按钮写入如下代码即可:

procedure TForm1.Button1Click(Sender: TObject);

var

tmp: array [0..MAX—PATH] of Char;

WinDir: string;

begin

GetWindowsDirectory(tmp,MAX—PATH);

WinDir:=String(tmp);

if Length(WinDir) 〉 3 then

WinDir:=WinDir+′\′;//得到Windows的目录

//在桌面上放置本程序的快捷方式

CreateLink(ParamStr(0),′′,WinDir+′desktop\′+Application.Tit

le+′.lnk′,′Application.Title′);

end;

Google

(责任编辑:hahack)

发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
热门文章 相关报道
普通网管技术 [其它编程程序]用Delphi创建快捷方式的方法 (05-06)最新网管技术
普通网管技术 [其它编程程序]基于Delphi的屏幕抓图技术的实现 (05-06)最新网管技术
普通网管技术 [其它编程程序]GDI+在Delphi中的应用:多帧(页)图… (05-06)最新网管技术
普通网管技术 [其它编程程序]Delphi之东进模拟语音卡(D160A)可… (05-06)最新网管技术
普通网管技术 [其它编程程序]PB窗口之间传递多参数的方法 (05-06)最新网管技术
普通网管技术 [其它编程程序]PB7.0简化Web开发 (05-06)最新网管技术
普通网管技术 [其它编程程序]用Web.PB开发瘦客户机 PB Web应用 (05-06)最新网管技术
普通网管技术 [其它编程程序]PB内置Oracle数据库接口的使用方… (05-06)最新网管技术
普通网管技术 [其它编程程序]PowerBuilder9实现FLASH动画播放 (05-06)最新网管技术
普通网管技术 [ASP|ASP.NET]ASP.NET与Ajax的实现方式 (05-06)最新网管技术
  • 基于Delphi的屏幕抓图技术的…

  • Delphi屏幕截图完美解决方案

  •   网友评论内容:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)
    I D *
    邮 箱
    主 页
    评 分 1分 2分 3分 4分 5分
    评 论

    关于我们  中国·国家信息产业部{粤ICP备06006652号}{陇ICP备06002562号}
    版权所有:『AK网盟基地』站长:Hahack | QQ:80505955 | E-mail:Hahack@Gmail.com
    Copyright (C) 2005-2007  akhack.org|chinabeta.cn All Rights Reserved