CListCtrl.InsertItem() mit Funktion oder .exe verknüpfen



  • Wie kann ich bei einem Listenfeld (auf Symbol gestellt) ein Symbol so einfügen das es mit einer .exe Datei verknüpft wird und das Icon der .exe anzeigt. Wenn das nicht geht: Wie verbinde ich es mit einer Funktion und wie gebe ich dem Symbol das Symbol???

    mfg
    Fink Christoph

    P.S.: In der MSDN habe ich bereits nachgeschaut, wurde allerdings nicht schlau daraus.



  • if(!m_bInitialised)
        {
            m_bInitialised=true;
            SHFILEINFO shFinfo;
            HIMAGELIST hImgList = NULL;
    
            m_imgList.Attach((HIMAGELIST)SHGetFileInfo("C:\\", 0, 
                &shFinfo, sizeof(SHFILEINFO), SHGFI_SYSICONINDEX | SHGFI_SMALLICON));
            m_ctrlList.SetImageList(&m_imgList,LVSIL_SMALL);
        }
        CFileFind FileFind;
        m_ctrlList.DeleteAllItems();
        if(FileFind.FindFile(GetProgramPath()+"\\Incoming\\*.*"))
        {
            bool bFound = true;
    
            while(bFound)
            {
                bFound = FileFind.FindNextFile();
                if(FileFind.IsDots()||FileFind.IsDirectory())
                    continue;
                else
                {
                    SHFILEINFO shFinfo;
                    int nIcon;
                    SHGetFileInfo(FileFind.GetFilePath(), 0, &shFinfo, sizeof(shFinfo), SHGFI_SYSICONINDEX | SHGFI_ICON | SHGFI_SMALLICON);
    
                    nIcon = shFinfo.iIcon;
                    DestroyIcon(shFinfo.hIcon);
    
                    m_ctrlList.InsertItem(0,FileFind.GetFileName(),nIcon);
                }
            }
        }
    


  • Was macht da was??? Und wo mus der Code hin??? OnInitdialog????


Anmelden zum Antworten