Code/Resource
Windows Develop
Linux-Unix program
Internet-Socket-Network
Web Server
Browser Client
Ftp Server
Ftp Client
Browser Plugins
Proxy Server
Email Server
Email Client
WEB Mail
Firewall-Security
Telnet Server
Telnet Client
ICQ-IM-Chat
Search Engine
Sniffer Package capture
Remote Control
xml-soap-webservice
P2P
WEB(ASP,PHP,...)
TCP/IP Stack
SNMP
Grid Computing
SilverLight
DNS
Cluster Service
Network Security
Communication-Mobile
Game Program
Editor
Multimedia program
Graph program
Compiler program
Compress-Decompress algrithms
Crypt_Decrypt algrithms
Mathimatics-Numerical algorithms
MultiLanguage
Disk/Storage
Java Develop
assembly language
Applications
Other systems
Database system
Embeded-SCM Develop
FlashMX/Flex
source in ebook
Delphi VCL
OS Develop
MiddleWare
MPI
MacOS develop
LabView
ELanguage
Software/Tools
E-Books
Artical/Document
Unit1.cpp
Package: C++Builder.rar [view]
Upload User: lhxd_sz
Upload Date: 2014-10-02
Package Size: 38814k
Code Size: 3k
Category:
Visual C++ Books
Development Platform:
C++ Builder
- //---------------------------------------------------------------------------
- #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::CreateDeskTopA(AnsiString file,AnsiString name)
- {
- AnsiString ass;
- int ii,ll;
- IShellLink* pLink;
- IPersistFile* pPersistFile;
- LPMALLOC ShellMalloc;
- LPITEMIDLIST pDesktop;
- char DesktopDir[MAX_PATH];
- if(FAILED(SHGetMalloc(&ShellMalloc)))
- return;
- if(FAILED(SHGetSpecialFolderLocation(NULL,CSIDL_DESKTOPDIRECTORY,&pDesktop)))
- return;
- if(!SHGetPathFromIDList(pDesktop, DesktopDir))
- {
- ShellMalloc->Free(pDesktop);
- ShellMalloc->Release();
- return;
- }
- ShellMalloc->Free(pDesktop);
- ShellMalloc->Release();
- if(SUCCEEDED(CoInitialize(NULL)))
- {
- if(SUCCEEDED(CoCreateInstance(CLSID_ShellLink, NULL,CLSCTX_INPROC_SERVER,IID_IShellLink, (void **) &pLink)))
- {
- pLink->SetPath(file.c_str());
- ll=file.Length();
- for(ii=ll;ii>0;ii--)
- {
- ass=file.SubString(ii,1);
- if(ass=="\")break;
- }
- ass=file.SubString(1,ii-1);
- pLink->SetWorkingDirectory(ass.c_str());
- pLink->SetDescription((name+" shortcut").c_str());
- pLink->SetShowCmd(SW_SHOW);
- if(SUCCEEDED(pLink->QueryInterface(IID_IPersistFile,(void **)&pPersistFile)))
- {
- WideString strShortCutLocation(DesktopDir);
- strShortCutLocation += "\"+name+".lnk";
- pPersistFile->Save(strShortCutLocation.c_bstr(), TRUE);
- pPersistFile->Release();
- }
- pLink->Release();
- }
- CoUninitialize();
- }
- }
- //----------------------------------------------------------------------
- void __fastcall TForm1::CreateDeskTopB(AnsiString ProgGroup,AnsiString ProgItem)
- {
- AnsiString WinDir,ass_dst,ass_src;
- char buff[MAX_PATH];
- GetWindowsDirectory(buff,MAX_PATH);
- WinDir=buff;
- ass_src =WinDir+"\Start Menu\Programs\"+ProgGroup+"\"+ProgItem+".lnk";
- ass_dst =WinDir+"\DESKTOP\"+ProgItem+".lnk";
- CopyFile(ass_src.c_str(),ass_dst.c_str(),False);
- }
- //----------------------------------------------------------------------
- void __fastcall TForm1::Button1Click(TObject *Sender)
- {
- AnsiString path;
- path=GetCurrentDir();
- path=path+"\"+ExtractFileName(Application->ExeName);
- CreateDeskTopA(path,"我的桌面程序");
- }
- //---------------------------------------------------------------------------
- void __fastcall TForm1::Button2Click(TObject *Sender)
- {
- CreateDeskTopB("附件","记事本");
- }
- //---------------------------------------------------------------------------