读书人

关于ShellExecuteEx,该怎么解决

发布时间: 2012-12-23 11:28:15 作者: rapoo

关于ShellExecuteEx,急~~~
\Device\HarddiskVolume5 是一个文件系统的一个卷
--------------------------------------------
存在symbolicLink
KMD \Device\HarddiskVolume5
--------------------------------------------
.kf文件类型的关联程序是A.exe
--------------------------------------------

(win7_x64下测试)
把路径 \\.\KMD\test.kf 传给ShellExecuteEx
结果A.exe 接收到的路径变成 \KMD\test.kf
--------------------------------------------


问:
传什么路径给ShellExecuteEx 才可以让A.exe访问
文件\Device\HarddiskVolume5\test.kf ?


[解决办法]
最好是绝对路径。

类似C:\\Program File\\Device\\HarddiskVolume5\\test.kf

注意转意符


[解决办法]

引用:
最好是绝对路径。

类似C:\\Program File\\Device\\HarddiskVolume5\\test.kf

注意转意符


谢谢你,
不过 \Device\HarddiskVolume5 是一个设备, 而且没有为他创建盘符.
[解决办法]
shellexecute 你只能指定一个符合WIN32规范的路径,像你这种NT空间路径应该无法转换的
[解决办法]
引用:
shellexecute 你只能指定一个符合WIN32规范的路径,像你这种NT空间路径应该无法转换的


谢谢你的回答,
不过 我用 \\.\KMD\test.kf 传给ShellExecuteEx,
ShellExecuteEx内部有检测文件是否存在 然后再调用A.exe
这么说 \\.\KMD\test.kf 有效.

可是在A.exe收到的路径却是\KMD\test.kf
也是说ShellExecuteEx把\\.\KMD\test.kf修改成\KMD\test.kf
从而导致A.exe无法打开文件test.kf

读书人网 >windows

热点推荐