shellexecute() 函数打开链接文件不起作用,不知道,为啥?
Posted
技术标签:
【中文标题】shellexecute() 函数打开链接文件不起作用,不知道,为啥?【英文标题】:shellexecute() function to open a link file is not working, don't know,why?shellexecute() 函数打开链接文件不起作用,不知道,为什么? 【发布时间】:2015-11-25 09:46:44 【问题描述】:代码
int nRet = (int)ShellExecute( NULL, _T("open"), _T("C:\\Documents and Settings\\kse8.KSE\\Desktop\\lnk file\\1.lnk"),NULL, NULL, SW_SHOWNORMAL );
总是得到
nRet 中的错误代码 2
不知道为什么 作为pdf快捷方式的“1.lnk”文件没有打开?
您可以通过这些步骤简单地创建这些场景 1)创建pdf文件的快捷方式,即(shift + f10),然后“创建快捷方式” 2)将其重命名为 1.lnk pdf文件和快捷方式都放在桌面的同一个文件夹中。 然后执行命令
int nRet = (int)ShellExecute( NULL, _T("open"), _T("C:\\Documents and Settings\\kse8.KSE\\Desktop\\lnk file\\1.lnk"),NULL, NULL, SW_SHOWNORMAL )
【问题讨论】:
字符串中有空格和未转义的反斜杠 现在,来吧,这是一个小的复制粘贴错误,,,, int nRet = (int)ShellExecute( NULL, _T("open"), _T("C:\\Documents and Settings \\kse8.KSE\\Desktop\\lnk 文件\\1.lnk"),NULL, NULL, SW_SHOWNORMAL );现在很高兴。:) 我现在可以期待这个“-1”的变化或者现在没有人处于活动状态 错误码2表示找不到文件。 as 1.lnk 是指您需要获取它的路径的某个文件位置。那么你可以使用该路径执行 shell。 我只有一个pdf文件,我创建了一个快捷方式并将其重命名为1.lnk,两者都在桌面的同一个文件夹中,当我尝试执行上述代码时,, pdf打不开,,,,只想知道为什么? 【参考方案1】:你的路径是错误的 - '\' 是一个特殊字符,要准确地说,你应该把它加倍 - "C:\\Documents and Settings\\kse8.KSE\\Desktop\\lnk file\\1.lnk"
【讨论】:
字符串文字确实逃脱了反斜杠。它只是由于格式化而没有显示。以上是关于shellexecute() 函数打开链接文件不起作用,不知道,为啥?的主要内容,如果未能解决你的问题,请参考以下文章