日期:2011-03-22 13:55:00 来源:本站整理
<b>在Windows桌面成立快速方法</b>[VC/C++编程]
本文“<b>在Windows桌面成立快速方法</b>[VC/C++编程]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:
注:偶在Windows ADV 2000,C++ Builder 6.0下编译通过. :D
API供应了一个叫做IShellLink的COM接口答应我们成立快速方法.为在桌面成立快速方法,我们成立一个IShellLink对象,设置它的属性,然后把这个link保存到desktop目录.
下面的例子代码演示了怎样成立一个快速方法.在这个例子里,这个快速方法保存在C:\根目录下.
#define NO_WIN32_LEAN_AND_MEAN
#include <shlobj.h>
#include <vcl.h>
#pragma hdrstop
#include "Unit1.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button1Click(TObject *Sender)
{
if(OpenDialog1->Execute())
CreateShortCut(OpenDialog1->FileName);
}
//---------------------------------------------------------------------------
void TForm1::CreateShortCut(const AnsiString &file)
{
IShellLink* pLink;
IPersistFile* pPersistFile;
if(SUCCEEDED(CoInitialize(NULL)))
{
if(SUCCEEDED(CoCreateInstance(CLSID_ShellLink, NULL,CLSCTX_INPROC_SERVER,
IID_IShellLink, (void **) &pLink)))
{
pLink->SetPath(file.c_str());
pLink->SetDescription("哈哈,你看到我了吧.");
pLink->SetShowCmd(SW_SHOW);
if(SUCCEEDED(pLink->QueryInterface(IID_IPersistFile,(void **)&pPersistFile)))
{
WideString strShortCutLocation("C:\\bcbshortcut.lnk");
pPersistFile->Save(strShortCutLocation.c_bstr(), TRUE);
pPersistFile->Release();
}
pLink->Release();
}
}
}
上面的例子只是把快速方法文件保存到了c:\根目录下,但没保存到desktop目录下.要让快速方法呈目前桌面上,只须把快速方法文件保存到desktop目录下.首先我们要找到windows的desktop目录.一旦我们知道了desktop所在的目录,我们就可以将快速方法文件保存到desktop目录下.然后windows就可以将快速方法图标显示到桌面上.下面是经过改良了的例子:
以上是“<b>在Windows桌面成立快速方法</b>[VC/C++编程]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:
本文地址: | 与您的QQ/BBS好友分享! |
评论内容只代表网友观点,与本站立场无关!
评论摘要(共 0 条,得分 0 分,平均 0 分)
查看完整评论