vc添加應用程序快捷方式

BOOL CSharpViewClientDlg::FileLink(const CString strPathObj,const CString strPathLink)
{
 
 BOOL bRet = FALSE;
 IShellLink* psl;
 
 if (SUCCEEDED( CoCreateInstance(CLSID_ShellLink,
  NULL,
  CLSCTX_INPROC_SERVER,
  IID_IShellLink,
  (LPVOID*) &psl))
  )
 {
  IPersistFile* ppf;
  
  psl->SetPath(strPathObj);
  
  if (SUCCEEDED(psl->QueryInterface( IID_IPersistFile, (LPVOID *) &ppf)))
  {
   
   WORD wsz[MAX_PATH];
   MultiByteToWideChar(CP_ACP,
    MB_PRECOMPOSED,
    strPathLink,
    -1,
    wsz,
    MAX_PATH);
   
   if ( SUCCEEDED ( ppf->Save(wsz, TRUE) ) )
    bRet = TRUE;
   
   ppf->Release();
  }
  psl->Release();
 }
 return bRet;
}
void CSharpViewClientDlg::MainDialg_load()
{
// CString sSysinfor=m_SystemIfo.GetEventLoginfor();
  //TRACE(sSysinfor);
  CString sAutoPath=m_sCurrenDir+"//SharpViewClient.exe";
/* SetAutoRun(sAutoPath);//設置開機自動啓動*/
 char crEnVar[MAX_PATH];
 ::GetEnvironmentVariable("ALLUSERSPROFILE", crEnVar, MAX_PATH);
 if (strlen(crEnVar) > 0)
 {
  CString destPath = CString(crEnVar);
  destPath += "//「開始」菜單//程序//啓動//";
  destPath += "銳視網絡行爲規範";
  destPath += ".lnk";
  
  FileLink(sAutoPath, destPath);
 }
 else
 {
  ::AfxMessageBox("can'n get Evironment-Variable",MB_OK);
  gLog.WriteLog("can'n get Evironment-Variable");
 }

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章