Win32打开一个文件夹

WIN32 opening a folder

本文关键字:一个 文件夹 Win32      更新时间:2023-10-16

我想从我的代码打开一个文件夹。我以前曾编写过从事这项工作的视觉基本程序。现在,我正在尝试使用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.chlocations"
Process.Start("explorer.exe", testst)

您从VB的翻译是错误的,并且无法正确逃脱您的后斜切字符。而不是

"\ftpg.tb.ch\locations"

你必须写

"\\ftpg.tb.ch\locations"

顺便说一句,请使用ShellExecuteEx而不是ShellExecute。前者提供适当的错误处理,后者没有。

相关文章: