Ciao ragazzi, ho trovato e aggiustato questo codice per eseguire il WM_COMMAN del menù "Apri"
Il mio problema è che non capisco come ricavare la path del file aperto.....al massimo sono riuscito a capire come trovare il nome del file e della cartella dove è posizionato.....aiuto.....
codice:HRESULT CommandApri(HWND hwnd) { IFileDialog *pfd; // CoCreate the dialog object. HRESULT hr = CoCreateInstance(CLSID_FileOpenDialog, NULL, CLSCTX_INPROC_SERVER, IID_PPV_ARGS(&pfd)); if (SUCCEEDED(hr)) { // Show the dialog hr = pfd->Show(hwnd); if (SUCCEEDED(hr)) { // Obtain the result of the user's interaction with the dialog. IShellItem *psiResult; IShellItem * psiBoh; hr = pfd->GetResult(&psiResult); if (SUCCEEDED(hr)) { // Do something with the result. TCHAR * szPath; //Nome file TCHAR * szPathParent; //Nome directory psiResult->GetDisplayName((SIGDN)NULL,&szPath); psiResult->GetParent(&psiBoh); psiBoh->GetDisplayName((SIGDN)NULL,&szPathPar); MessageBox(0,szPath,_T("Name of the file"),MB_USERICON); MessageBox(0,szPathPar,_T("Parent Directory of the file"),MB_USERICON); psiResult->Release(); } } pfd->Release(); } return hr; }
chiedo ausilio![]()

Rispondi quotando