⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 mainform.cpp

📁 C++ BUILDER精彩编程实例集锦(源码)3 第五部分 系统编程 第六部分 数据库应用
💻 CPP
字号:
#define NO_WIN32_LEAN_AND_MEAN
#include <shlobj.h>
#include <vcl.h>
//---------------------------------------------------------------------------
#pragma hdrstop

#include "Mainform.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
        : TForm(Owner)
{
}
//---------------------------------------------------------------------------
void __fastcall TForm1::BitBtn1Click(TObject *Sender)
{//在桌面上创建快捷方式
  if(FAILED(CoInitialize(NULL)))
  {
    MessageBox(Handle,"COM初始化失败","信息提示",MB_OK);
    return;
  }
  if(this->Edit1->Text.Length()<1)
    return;
  AnsiString StrFileName=this->Edit1->Text;
  int CSIDLVALUE;
  char Path[MAX_PATH+1];
  AnsiString StrDestDir;
  CSIDLVALUE=CSIDL_DESKTOPDIRECTORY;		//"桌面文件夹";
  LPITEMIDLIST pidl;
  LPMALLOC pShellMalloc;
  if(SUCCEEDED(SHGetMalloc(&pShellMalloc)))
    if(SUCCEEDED(SHGetSpecialFolderLocation(NULL,CSIDLVALUE,&pidl)))
      if(!SHGetPathFromIDList(pidl,Path))
      {
         MessageBox(Handle,"操作失败","提示信息",MB_OK);
         return;
      }
      pShellMalloc->Free(pidl);
      pShellMalloc->Release();
      StrDestDir=Path;
      StrDestDir+="\\";
      StrDestDir+="新建程序桌面快捷方式";
      StrDestDir+=".lnk";
      IShellLink* psl;
      if(SUCCEEDED( CoCreateInstance(CLSID_ShellLink,NULL,CLSCTX_INPROC_SERVER,IID_IShellLink,(LPVOID*) &psl)))
      {
      	psl->SetPath(StrFileName.c_str());
	IPersistFile* ppf;
	if (SUCCEEDED(psl->QueryInterface( IID_IPersistFile, (LPVOID *) &ppf)))
	{
  	  WCHAR wsz[MAX_PATH];
	  MultiByteToWideChar(CP_THREAD_ACP, MB_PRECOMPOSED, StrDestDir.c_str(), -1, wsz,MAX_PATH);
 	   if ( SUCCEEDED ( ppf->Save(wsz, TRUE) ) )
	   {
	     MessageBox(Handle,"快捷方式创建成功!","信息提示",MB_OK+MB_ICONWARNING);
 	   }
	   ppf->Release();
	   return;
	 }
	 psl->Release();
       }
     MessageBox(Handle,"快捷方式创建失败!","信息提示",MB_OK+MB_ICONWARNING);
     ::CoUninitialize();
}
//---------------------------------------------------------------------------

void __fastcall TForm1::BitBtn2Click(TObject *Sender)
{
  if(this->OpenDialog1->Execute())
  {
    this->Edit1->Text=this->OpenDialog1->FileName;
  }
}
//---------------------------------------------------------------------------

void __fastcall TForm1::BitBtn3Click(TObject *Sender)
{
  this->Close();
}
//---------------------------------------------------------------------------

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -