SHELLExecute只是打开而已,select选择得依据得到的item,你是用什么做的显示文件?listcontrol?
解决方案 »
- VS2010中CMainFrame::OnCreate()函数里用GetMenu()->m_hMenu无法获取菜单指针。 求高手解决~~~~
- VC++图像处理有哪些新算法
- 请各位帮帮忙,急!!!!!
- char *abc与cha efg[12]比较的问题!马上给分!在线等待!
- 如何发送模拟菜单命令消息?
- 请问用VC编写访问MSSQL数据库的应用程序用什么方式最好?
- 100简单的问题
- 请问各位网络多媒体制作软件高手:Dreamweaver的网页制作功能怎样。
- 探讨:结束select循环线程的方法!!
- 在vc里,怎么知道要把哪个类放在哪里定义、声明呢?从网上下的那些类呢?
- 怎样编程改变菜单的字体及大小(vc2010多文档使用应用程序外观功能)
- MFC网络编程多线程的一些小问题
//sFile为文件的全路径文件名
CString str,strName;
GetDlgItemText(IDC_EDIT1,str);//获得当前目录路径
str += "*.*";
LPNMLISTVIEW pNMLstCtl = (LPNMLISTVIEW)pNMHDR;
if(pNMLstCtl->iItem >= 0)
{
CFileFind file;
BOOL bContinue = file.FindFile(str);
while(bContinue)
{
bContinue = file.FindNextFile();
if(!file.IsDirectory() && !file.IsDots())
{
int i=0;
i++;
if(pNMLstCtl->iItem==i)
{
SHFILEINFO info;
int index = str.Find("*.*");
str.Delete(index,3);
SHGetFileInfo(str + file.GetFileName(),0,&info,sizeof(&info),SHGFI_DISPLAYNAME | SHGFI_ICON);
strName=info.szDisplayName;
}
}
}
SHELLEXECUTEINFO ShExecInfo;
ShExecInfo.cbSize = sizeof(SHELLEXECUTEINFO);
ShExecInfo.fMask = NULL;
ShExecInfo.hwnd = NULL;
ShExecInfo.lpVerb = "open";
GetDlgItemText(IDC_EDIT1,str);
ShExecInfo.lpFile = str+strName;//欲打开路径
ShExecInfo.lpParameters = NULL;
ShExecInfo.lpDirectory = NULL;
ShExecInfo.nShow =SW_SHOWNORMAL;
ShExecInfo.hInstApp = NULL;
ShellExecuteEx(&ShExecInfo);
}
定义一个结构体,存放路径,文件属性 大小等信息
双击的时候获取这个属性中的文件名即可