我想从我的代码中打开一个文件夹。我以前写过一个完成这项工作的视觉基础程序。现在我试图用C ++和WIN32做这个,没有运气。文件夹包含服务器的地址。我尝试了CreateProcess和ShellExecute,他们都无法打开服务器中的文件夹。能帮忙吗?
我试过的第一种方法
ShellExecute(NULL, "explore", "\\ftpg.tb.ch\\locations", NULL, NULL, SW_SHOWNORMAL);
我试过的第二种方法
STARTUPINFO si;
PROCESS_INFORMATION pi;
ZeroMemory( &si, sizeof(si) );
si.cb = sizeof(si);
ZeroMemory( &pi, sizeof(pi) );
LPTSTR szCmdline = _tcsdup(TEXT("C:\\Windows\\explorer.exe"));
LPTSTR pathfolder = _tcsdup(TEXT(" /e,/root,\\ftpg.tb.ch\\locations"));
CreateProcess( szCmdline, pathfolder, NULL, NULL, FALSE, 0, NULL, NULL, &si, &pi );
这是以前工作的Visual Studio VB代码
Dim testst As String = "\\ftpg.tb.ch\locations"
Process.Start("explorer.exe", testst)
答案 0 :(得分:3)
您对VB的翻译错误,无法正确转义反斜杠字符。而不是
"\\ftpg.tb.ch\\locations"
你必须写
"\\\\ftpg.tb.ch\\locations"
顺便说一句,请使用ShellExecuteEx
而不是ShellExecute
。前者提供了正确的错误处理,后者没有。