如何打开光盘下的文件

keither_cn 2004-08-18 10:57:43
请问各位大虾,我用 ShellExecute(h, "open", m_lujing, NULL,NULL,SW_SHOWNORMAL);函数打开文件,该怎么样设置使该函数始终打开光驱里的文件呢?十分感谢
...全文
96 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
kvw3000 2004-08-18
  • 打赏
  • 举报
回复
找到光驱盘符,设置绝对路径
yaozijian110 2004-08-18
  • 打赏
  • 举报
回复
下面的程序,用我的电脑打开每个光盘的根目录,不知道是不是你想要的。


#include <windows.h>

#define NO_CDROM TEXT("光驱 %s 中没有光盘")

typedef struct
{
TCHAR szDriveName[MAX_PATH];
TCHAR szVolumeName[MAX_PATH];
DWORD dwSerialNumber;
DWORD dwMaxFileNameLen;
DWORD dwFileSysFlag;
TCHAR szFileSysName[MAX_PATH];
TCHAR szDeviceName[MAX_PATH];
}VOLUME_INFO;

int main(int argc,char *argv[])
{
TCHAR szDriveString[MAX_PATH];
TCHAR szErrorInfo[MAX_PATH];
PTSTR pCur;
BOOL success;
VOLUME_INFO info;

GetLogicalDriveStrings(MAX_PATH - 1,szDriveString);
pCur = szDriveString;
while (*pCur)
{
if (GetDriveType(pCur) == DRIVE_CDROM ) // 是光驱
{

success = GetVolumeInformation(pCur,info.szVolumeName,MAX_PATH,
&info.dwSerialNumber,&info.dwMaxFileNameLen,
&info.dwFileSysFlag,
info.szFileSysName,MAX_PATH);
if (success)
ShellExecute(NULL,TEXT("open"),pCur,NULL,NULL,SW_SHOW);
else
{
if (GetLastError() == ERROR_NOT_READY )
{
wsprintf(szErrorInfo,NO_CDROM,pCur);
MessageBox(NULL,szErrorInfo,TEXT("没有光盘"),MB_OK);
}
}
}
while (*pCur) pCur++;
pCur++;
}
return FALSE;
}

keither_cn 2004-08-18
  • 打赏
  • 举报
回复
能不能说的具体一些,十分感谢

2,586

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 资源
社区管理员
  • 资源
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧