HRESULT AddShellLink( )
{
HRESULT hr;
//创建ShellLink
IShellLink *pSLAutoRun = NULL;
hr = CoCreateInstance(CLSID_ShellLink, NULL,
CLSCTX_INPROC_SERVER, IID_PPV_ARGS(&pSLAutoRun));
if(SUCCEEDED(hr))
{
//应用程序路径
hr = pSLAutoRun->SetPath(_T("C://Windows//notepad.exe"));
if(SUCCEEDED(hr))
{
hr = pSLAutoRun->SetWorkingDirectory(_T("C://"));
if(SUCCEEDED(hr))
{
//图标
hr = pSLAutoRun->SetIconLocation(_T("C://Windows//notepad.exe"), 0);
if(SUCCEEDED(hr))
{
//命令行参数
hr = pSLAutoRun->SetArguments(_T("Test.txt"));
if(SUCCEEDED(hr))
{
hr = SetTitle(pSLAutoRun, _T("Notepad"));
}
}
}
}
{
HRESULT hr;
//创建ShellLink
IShellLink *pSLAutoRun = NULL;
hr = CoCreateInstance(CLSID_ShellLink, NULL,
CLSCTX_INPROC_SERVER, IID_PPV_ARGS(&pSLAutoRun));
if(SUCCEEDED(hr))
{
//应用程序路径
hr = pSLAutoRun->SetPath(_T("C://Windows//notepad.exe"));
if(SUCCEEDED(hr))
{
hr = pSLAutoRun->SetWorkingDirectory(_T("C://"));
if(SUCCEEDED(hr))
{
//图标
hr = pSLAutoRun->SetIconLocation(_T("C://Windows//notepad.exe"), 0);
if(SUCCEEDED(hr))
{
//命令行参数
hr = pSLAutoRun->SetArguments(_T("Test.txt"));
if(SUCCEEDED(hr))
{
hr = SetTitle(pSLAutoRun, _T("Notepad"));
}
}
}
}
IPersistFile *ppf;
// Query IShellLink for the IPersistFile interface for
// saving the shortcut in persistent storage.
hres = pSLAutoRun-> QueryInterface(IID_IPersistFile, (void **)&ppf);
if (SUCCEEDED(hres))
// Query IShellLink for the IPersistFile interface for
// saving the shortcut in persistent storage.
hres = pSLAutoRun-> QueryInterface(IID_IPersistFile, (void **)&ppf);
if (SUCCEEDED(hres))
{
ppf->Save(wsz, 0/1/2);
ppf->release();
}
pSLAutoRun->Release();
}
return hr;
}
pSLAutoRun->Release();
}
return hr;
}