ShellExecute打开路径带空格的文件

dceacho 2009-05-18 06:29:31

m_strReadInfoFilePathBIN "d:\Wang fan\VCPROJECT\CarExcel\CarExcel\2009- 5-18-18-20-33.xls"

m_strReadInfoFilePathBIN的值如上
执行:
ShellExecute(NULL,NULL,"Excel",m_strReadInfoFilePathBIN,NULL,SW_SHOW);
就会出问题,执行的时候会把d:\Wang当做一个文件,把fan\VCPROJECT\CarExcel\CarExcel\2009-当做另一个文件,.......
有没有人知道如果不改路径的话该怎么执行才能解决这个空格问题
...全文
398 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
dceacho 2009-05-18
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 Loaden 的回复:]
唉,哥们啊,路径要这样写:
d:\\Wang fan\\VCPROJECT\\CarExcel\\CarExcel\\2009- 5-18-18-20-33.xls"
[/Quote]

GetCurrentDirectory(MAX_PATH,m_strReadInfoFilePathBIN.GetBuffer(MAX_PATH));是这样得到的
不是我想\\就\\的
「已注销」 2009-05-18
  • 打赏
  • 举报
回复
要用两个\\的!!!
「已注销」 2009-05-18
  • 打赏
  • 举报
回复
唉,哥们啊,路径要这样写:
d:\\Wang fan\\VCPROJECT\\CarExcel\\CarExcel\\2009- 5-18-18-20-33.xls"
dceacho 2009-05-18
  • 打赏
  • 举报
回复
解决了,原来写错了
改成
ShellExecute(NULL,"open",_T(m_strReadInfoFilePathBIN),NULL,NULL,SW_SHOW);
就可以了
dceacho 2009-05-18
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 ltc_mouse 的回复:]
用引号把整个路径名包起来试试~~
就是变成 ""d:...""的样子
[/Quote]
要是把m_strReadInfoFilePathBIN的值改不好改啊
GetCurrentDirectory(MAX_PATH,m_strReadInfoFilePathBIN.GetBuffer(MAX_PATH));是这样得到的
ltc_mouse 2009-05-18
  • 打赏
  • 举报
回复 1
用引号把整个路径名包起来试试~~
就是变成 ""d:...""的样子
liliangbao 2009-05-18
  • 打赏
  • 举报
回复
不懂,帮顶~

65,211

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

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